Repositories

Some projects provide sets of algorithms fulfilling some common interfaces. Such a project always has a package aaa.bbb and a package aaa.bbb.repository. In aaa.bbb are the interface(s) and the repository to dynamically access the algorithms at run-time. Repositories implements the interface util.repository.IRepository and are final. In the aaa.bbb.repository are the algorithms implementing the interface(s). Repositories exist in the following projects, among others:

Projects Roles Classes
PADL Interfaces padl.visitor.IGenerator
padl.visitor.IWalker
Repository padl.visitor.VisitorsRepository
Accessors padl.visitor.VisitorsRepository.getGenerators()
padl.visitor.VisitorsRepository.getWalkers()
PADL Analyses Interface padl.analysis.IAnalysis
Repository padl.analysis.AnalysesRepository
Accessor padl.analysis.AnalysesRepository.getAnalyses()
PADL Design Motifs Interface padl.motif.IDesignMotifModel
Repository padl.motif.DesignMotifsRepository
Accessor padl.motif.DesignMotifsRepository.getDesignMotifs()
POM Interfaces pom.metrics.IMetric
pom.metrics.IUnaryMetric
pom.metrics.IBinaryMetric
pom.metrics.IContextDependentMetric
pom.metrics.IContextIndependentMetric
Repository pom.metrics.MetricsRepository
Accessors pom.metrics.MetricsRepository.getMetrics()
pom.metrics.MetricsRepository.getMetric(String)1)
pom.metrics.MetricsRepository.getUnaryMetrics()
pom.metrics.MetricsRepository.getBinaryMetrics()
pom.metrics.MetricsRepository.getContextDependentMetrics()
pom.metrics.MetricsRepository.getContextIndependentMetrics()
SAD (Code) Interface sad.codesmell.detection.ICodeSmellDetection
Repository sad.codesmell.detection.CodeSmellDetectionsRepository
Accessor sad.codesmell.detection.CodeSmellDetectionsRepository.getCodeSmellDetections()
sad.codesmell.detection.CodeSmellDetectionsRepository.getCodeSmellDetection(String)2)
SAD (Design) Interface sad.designsmell.detection.IDesignSmellDetection
Repository sad.designsmell.detection.DesignSmellDetectionsRepository
Accessor sad.designsmell.detection.DesignSmellDetectionsRepository.getDesignSmellDetections()
sad.designsmell.detection.DesignSmellDetectionsRepository.getDesignSmellDetection(String)3)
1)
For convenience when declaring code and design smells
2) , 3)
For convenience only