An aspect implements a crosscutting concern.
Similar to a \FeaturePhp\Collaboration\Role in collaboration-based design, an aspect implements part of a feature's functionality. Typically, this functionality concerns many other features (crosscutting concerns, e.g. Logging, Cache, Encryption ...). An aspect encapsulates this behaviour using pointcuts and advices. All aspects are registered in a \FeaturePhp\Aspect\AspectKernel.
package | Default |
---|
__construct(\FeaturePhp\Artifact\Artifact $artifact, \FeaturePhp\Specification\FileSpecification $fileSpecification)
\FeaturePhp\Artifact\Artifact
\FeaturePhp\Specification\FileSpecification
getArtifact() : \FeaturePhp\Artifact\Artifact
\FeaturePhp\Artifact\Artifact
getClassName() : string
For this, the aspect's file has to be parsed.
string
getFileSpecification() : \FeaturePhp\Specification\FileSpecification
\FeaturePhp\Specification\FileSpecification
getRelativeFileTarget(string $aspectKernelTarget) : string
string
string
getStoredFile() : \FeaturePhp\File\StoredFile
\FeaturePhp\File\StoredFile
$artifact : \FeaturePhp\Artifact\Artifact
$fileSpecification : \FeaturePhp\Specification\FileSpecification