Skip to content

kestreltechnology/xml-kt-advance-java

 
 

Repository files navigation

xml-kt-advance-java

Build Status

Quality gate

Usage

//Create a  file system abstraction
fsAbstraction = new SonarFsAbstractionImpl(fileSystem);

//OR


fsAbstraction = new SonarFsAbstractionImpl(com.kt.advance.xml.model.FsAbstractionImpl);


//create CAnalysis
final CAnalysis cAnalysis = new CAnalysisImpl(fsAbstraction);

//force it ro read ALL XMLs
cAnalysis.read();

//Iterate CApplications
for (final CApplication app : cAnalysis.getApps()) {

  //iterate CFiles
  for (final CFile file : app.getCfiles()) {
    
    
    //iterate CFunctions
    for (final CFunction function : file.getCFunctions()) {
      
        // Iterate PPOs
        function.getPPOs().stream().forEach(
          /*do smth about ppo*/
          ppo -> { 
            //iterate overassociated SPOs
            ppo.getAssociatedSpos(function);            
          }            
        );
          
        // Iterate callsites
        for (final CFunctionCallsiteSPO callsite : function.getCallsites()) {
          // Iterate SPOs
          callsite.getSpos().stream().
            .forEach(spo-> {/*do smth*/} )
        }
        
    }
  }
}

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • C 56.5%
  • Java 43.5%