
org.opalj.av.checking.ArchitectureChecker.scala Maven / Gradle / Ivy
The newest version!
/* BSD 2-Clause License - see OPAL/LICENSE for details. */
package org.opalj
package av
package checking
import scala.collection.Set
/**
* An architecture checker validates if the implemented architecture
* complies with the expected/specified one.
*
* @author Marco Torsello
*/
sealed trait ArchitectureChecker {
def violations(): Set[SpecificationViolation]
}
/**
* A dependency checker validates if the dependencies between the elements of
* two ensembles comply with the expected/specified dependencies.
*
* @author Michael Eichberg
* @author Marco Torsello
*/
trait DependencyChecker extends ArchitectureChecker {
def targetEnsembles: Seq[Symbol]
def sourceEnsembles: Seq[Symbol]
}
/**
* A property checker validates if the elements of an ensemble
* have the expected/specified properties.
*
* @author Marco Torsello
*/
trait PropertyChecker extends ArchitectureChecker {
/**
* A textual representation of the property.
*/
def property: String
def ensembles: Seq[Symbol]
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy