Package com.hello2morrow.sonargraph.api
Interface IPluginCoreAccess
-
- All Superinterfaces:
IBaseCoreAccess
,IElementAccess
,INamedElementAccess
- All Known Subinterfaces:
IPluginLanguageBasedAccess
public interface IPluginCoreAccess extends IBaseCoreAccess
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface com.hello2morrow.sonargraph.api.INamedElementAccess
INamedElementAccess.INamedElementAccessVisitor
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description boolean
addIssue(IElementAccess element, IPluginIssueId id, java.lang.String description, int line)
Add an issue to an element.java.lang.Float
getACDMetric()
Get ACD (John Lakos) metric for system scope.java.lang.Integer
getBiggestComponentCycleGroupMetric()
Get number of elements in the biggest component cycle group of the system.java.lang.Float
getBiggestModuleACDMetric()
Get the biggest ACD value (John Lakos) of all modules in the system.java.lang.Integer
getCCDMetric()
Get CCD (John Lakos) metric for system scope.java.lang.Integer
getCodeCommentLinesMetric()
Get number of code comment lines on system scope.java.lang.Integer
getCommentLinesMetric()
Get number of comment lines including header comments.java.lang.Integer
getComponentCyclicityMetric()
Get system wide component cyclicity metric.java.lang.Integer
getComponentDependenciesToRemoveMetric()
Get number of component dependencies to remove to untangle all component cycle groups.java.lang.Integer
getComponentParserDependenciesToRemoveMetric()
Get number of references between components to remove to untangle all component cycle groups.java.lang.Float
getComponentRelativeCyclicityMetric()
Get system wide relative cyclicity between components.java.lang.Integer
getComponentStructuralDebtIndexMetric()
Get system wide structural debt index on component level.IExternalAccess
getExternalRoot(java.lang.String language, java.lang.String identifier)
java.io.File
getHiddenDataDirectory(java.lang.String pluginId)
Get hidden data directory for a plugin.java.lang.Integer
getLinesOfCodeMetric()
Get lines of codes (excluding empty lines and comment lines) on system scope.java.lang.Float
getNCCDMetric()
Get NCCD metric for system scope (John Lakos).java.lang.Integer
getNumberOfCodeDuplicatesMetric()
Get total number of non-ignored duplicated code blocks on system scope.java.lang.Integer
getNumberOfComponentCycleGroupsMetric()
Get the number of component cycle groups on system scope.java.lang.Integer
getNumberOfComponentsMetric()
Get the number of internal components in the system.java.lang.Integer
getNumberOfComponentViolationsMetric()
Get number of architecture violations between components.java.lang.Integer
getNumberOfCyclicComponentsMetric()
Get the number of internal components involved in cyclic dependencies that are not ignored.java.lang.Integer
getNumberOfDuplicatedLinesMetric()
Get total number of duplicated lines in non-ignored duplicated code blocks on system scope.java.lang.Integer
getNumberOfIgnoredCodeDuplicatesMetric()
Get total number of ignored duplicated code blocks on system scope.java.lang.Integer
getNumberOfIgnoredCyclicComponentsMetric()
Get the number of internal components involved in ignored cyclic dependencies.java.lang.Integer
getNumberOfIgnoredParserDependencyViolationsMetric()
Get number of ignored violating parser dependencies.java.lang.Integer
getNumberOfParserDependencyViolationsMetric()
Get number of violating parser dependencies.java.lang.Integer
getNumberOfStatementsMetric()
Get the total number of statements on system scope.java.lang.Integer
getNumberOfUnassignedComponentsMetric()
Get number of component not assigned to any active architectural artifact.java.lang.Integer
getNumberOfViolatingComponentsMetric()
Get number of components containing architecture violations.java.lang.Float
getPropagationCostMetric()
Get the value of Propagation Cost for the system scope (John Lakos).java.lang.Integer
getSourceElementCountMetric()
Get the total source element count of all internal elements of the system.java.lang.Integer
getTotalLinesMetric()
Get the total number of lines in the system, including empty and comment lines.-
Methods inherited from interface com.hello2morrow.sonargraph.api.IBaseCoreAccess
findAllMatchingElements, findAllMatchingElementsRecursively, findAllMatchingFields, findAllMatchingMethods, findAllMatchingRoutines, findAllMatchingTypes, findElementByFqn, findFirstMatchingElement, findFirstMatchingElementRecursively, findFirstMatchingField, findFirstMatchingMethod, findFirstMatchingRoutine, findFirstMatchingType, getBaseDirectory, getBaseDirectoryPath, getComponents, getComponents, getExternalRoot, getModules, getName, getWorkspaceRoot, visitLogicalModuleNamespaces, visitLogicalSystemNamespaces, visitParserModel
-
Methods inherited from interface com.hello2morrow.sonargraph.api.IElementAccess
getNameWithSignature, getShortName, getShortNameWithSignature, ignoreIssues, isExcluded, isExternal
-
Methods inherited from interface com.hello2morrow.sonargraph.api.INamedElementAccess
accept, getChildren, getFullyQualifiedName, getIncomingDependenciesRecursively, getIncomingDependenciesRecursively, getIssueCount, getIssueCount, getIssueCount, getIssueCount, getIssueCount, getIssues, getIssues, getIssues, getOutgoingDependenciesRecursively, getOutgoingDependenciesRecursively, getOutgoingDependenciesRecursively, getParent, getParent, getReferencedElementsRecursively, getReferencedElementsRecursively, getReferencedElementsRecursively, getReferencingElementsRecursively, getReferencingElementsRecursively
-
-
-
-
Method Detail
-
addIssue
boolean addIssue(IElementAccess element, IPluginIssueId id, java.lang.String description, int line)
Add an issue to an element.- Parameters:
element
- The element associated with the issueid
- Issue specific id, should be equal for all issues of the same kinddescription
- Issue description (can be null)line
- Line number or 0 or negative when unknown- Returns:
- true, if issue is not ignored
-
getExternalRoot
IExternalAccess getExternalRoot(java.lang.String language, java.lang.String identifier)
- Parameters:
language
- (as of now "Java", "C#" or "C,C++")identifier
- a plugin id- Returns:
- the external root for the given identifier or null if it does not exist.
-
getACDMetric
java.lang.Float getACDMetric()
Get ACD (John Lakos) metric for system scope.- Returns:
- see above
-
getBiggestComponentCycleGroupMetric
java.lang.Integer getBiggestComponentCycleGroupMetric()
Get number of elements in the biggest component cycle group of the system.- Returns:
- see above
-
getCCDMetric
java.lang.Integer getCCDMetric()
Get CCD (John Lakos) metric for system scope.- Returns:
- see above
-
getCodeCommentLinesMetric
java.lang.Integer getCodeCommentLinesMetric()
Get number of code comment lines on system scope.- Returns:
- see above
-
getCommentLinesMetric
java.lang.Integer getCommentLinesMetric()
Get number of comment lines including header comments.- Returns:
- see above
-
getLinesOfCodeMetric
java.lang.Integer getLinesOfCodeMetric()
Get lines of codes (excluding empty lines and comment lines) on system scope.- Returns:
- see above
-
getNCCDMetric
java.lang.Float getNCCDMetric()
Get NCCD metric for system scope (John Lakos).- Returns:
- see above
-
getNumberOfComponentCycleGroupsMetric
java.lang.Integer getNumberOfComponentCycleGroupsMetric()
Get the number of component cycle groups on system scope.- Returns:
- see above
-
getNumberOfComponentsMetric
java.lang.Integer getNumberOfComponentsMetric()
Get the number of internal components in the system.- Returns:
- see above
-
getNumberOfCyclicComponentsMetric
java.lang.Integer getNumberOfCyclicComponentsMetric()
Get the number of internal components involved in cyclic dependencies that are not ignored.- Returns:
- see above
-
getNumberOfIgnoredCyclicComponentsMetric
java.lang.Integer getNumberOfIgnoredCyclicComponentsMetric()
Get the number of internal components involved in ignored cyclic dependencies.- Returns:
- see above
-
getNumberOfStatementsMetric
java.lang.Integer getNumberOfStatementsMetric()
Get the total number of statements on system scope.- Returns:
- see above
-
getPropagationCostMetric
java.lang.Float getPropagationCostMetric()
Get the value of Propagation Cost for the system scope (John Lakos).- Returns:
- see above
-
getSourceElementCountMetric
java.lang.Integer getSourceElementCountMetric()
Get the total source element count of all internal elements of the system.- Returns:
- see above
-
getTotalLinesMetric
java.lang.Integer getTotalLinesMetric()
Get the total number of lines in the system, including empty and comment lines.- Returns:
- see above
-
getNumberOfCodeDuplicatesMetric
java.lang.Integer getNumberOfCodeDuplicatesMetric()
Get total number of non-ignored duplicated code blocks on system scope.- Returns:
- see above
-
getNumberOfDuplicatedLinesMetric
java.lang.Integer getNumberOfDuplicatedLinesMetric()
Get total number of duplicated lines in non-ignored duplicated code blocks on system scope.- Returns:
- see above
-
getNumberOfIgnoredCodeDuplicatesMetric
java.lang.Integer getNumberOfIgnoredCodeDuplicatesMetric()
Get total number of ignored duplicated code blocks on system scope.- Returns:
- see above
-
getBiggestModuleACDMetric
java.lang.Float getBiggestModuleACDMetric()
Get the biggest ACD value (John Lakos) of all modules in the system.- Returns:
- see above
-
getComponentCyclicityMetric
java.lang.Integer getComponentCyclicityMetric()
Get system wide component cyclicity metric.- Returns:
- see above
-
getComponentRelativeCyclicityMetric
java.lang.Float getComponentRelativeCyclicityMetric()
Get system wide relative cyclicity between components.- Returns:
- see above
-
getComponentStructuralDebtIndexMetric
java.lang.Integer getComponentStructuralDebtIndexMetric()
Get system wide structural debt index on component level.- Returns:
- see above
-
getComponentParserDependenciesToRemoveMetric
java.lang.Integer getComponentParserDependenciesToRemoveMetric()
Get number of references between components to remove to untangle all component cycle groups.- Returns:
- see above
-
getComponentDependenciesToRemoveMetric
java.lang.Integer getComponentDependenciesToRemoveMetric()
Get number of component dependencies to remove to untangle all component cycle groups.- Returns:
- see above
-
getNumberOfUnassignedComponentsMetric
java.lang.Integer getNumberOfUnassignedComponentsMetric()
Get number of component not assigned to any active architectural artifact. (Architecture feature needed)- Returns:
- see above
-
getNumberOfComponentViolationsMetric
java.lang.Integer getNumberOfComponentViolationsMetric()
Get number of architecture violations between components. (Architecture feature needed)- Returns:
- see above
-
getNumberOfViolatingComponentsMetric
java.lang.Integer getNumberOfViolatingComponentsMetric()
Get number of components containing architecture violations. (Architecture feature needed)- Returns:
- see above
-
getNumberOfParserDependencyViolationsMetric
java.lang.Integer getNumberOfParserDependencyViolationsMetric()
Get number of violating parser dependencies. (Architecture feature needed)- Returns:
- see above
-
getNumberOfIgnoredParserDependencyViolationsMetric
java.lang.Integer getNumberOfIgnoredParserDependencyViolationsMetric()
Get number of ignored violating parser dependencies. (Architecture feature needed)- Returns:
- see above
-
getHiddenDataDirectory
java.io.File getHiddenDataDirectory(java.lang.String pluginId)
Get hidden data directory for a plugin.- Parameters:
pluginId
- plugin id, must not be null or empty.- Returns:
- hidden data directory for plugin id, or null if it could't be created
-
-