PHP Class Neos\Flow\Aop\Pointcut\PointcutMethodAnnotatedWithFilter

Inheritance: implements Neos\Flow\Aop\Pointcut\PointcutFilterInterface
Show file Open project: neos/flow-development-collection Class Usage Examples

Protected Properties

Property Type Description
$annotation The tag of an annotation to match against
$annotationValueConstraints array
$reflectionService Neos\Flow\Reflection\ReflectionService
$systemLogger Neos\Flow\Log\SystemLoggerInterface

Public Methods

Method Description
__construct ( string $annotation, array $annotationValueConstraints = [] ) The constructor - initializes the method annotation filter with the expected annotation class
getRuntimeEvaluationsDefinition ( ) : array Returns runtime evaluations for the pointcut.
hasRuntimeEvaluationsDefinition ( ) : boolean Returns TRUE if this filter holds runtime evaluations for a previously matched pointcut
injectReflectionService ( ReflectionService $reflectionService ) : void Injects the reflection service
injectSystemLogger ( Neos\Flow\Log\SystemLoggerInterface $systemLogger ) : void
matches ( string $className, string $methodName, string $methodDeclaringClassName, mixed $pointcutQueryIdentifier ) : boolean Checks if the specified method matches with the method annotation filter pattern
reduceTargetClassNames ( ClassNameIndex $classNameIndex ) : ClassNameIndex This method is used to optimize the matching process.

Method Details

__construct() public method

The constructor - initializes the method annotation filter with the expected annotation class
public __construct ( string $annotation, array $annotationValueConstraints = [] )
$annotation string An annotation class (for example "Neos\Flow\Annotations\Lazy") which defines which method annotations should match
$annotationValueConstraints array

getRuntimeEvaluationsDefinition() public method

Returns runtime evaluations for the pointcut.
public getRuntimeEvaluationsDefinition ( ) : array
return array Runtime evaluations

hasRuntimeEvaluationsDefinition() public method

Returns TRUE if this filter holds runtime evaluations for a previously matched pointcut
public hasRuntimeEvaluationsDefinition ( ) : boolean
return boolean TRUE if this filter has runtime evaluations

injectReflectionService() public method

Injects the reflection service
public injectReflectionService ( ReflectionService $reflectionService ) : void
$reflectionService Neos\Flow\Reflection\ReflectionService The reflection service
return void

injectSystemLogger() public method

public injectSystemLogger ( Neos\Flow\Log\SystemLoggerInterface $systemLogger ) : void
$systemLogger Neos\Flow\Log\SystemLoggerInterface
return void

matches() public method

Checks if the specified method matches with the method annotation filter pattern
public matches ( string $className, string $methodName, string $methodDeclaringClassName, mixed $pointcutQueryIdentifier ) : boolean
$className string Name of the class to check against - not used here
$methodName string Name of the method
$methodDeclaringClassName string Name of the class the method was originally declared in
$pointcutQueryIdentifier mixed Some identifier for this query - must at least differ from a previous identifier. Used for circular reference detection - not used here
return boolean TRUE if the class matches, otherwise FALSE

reduceTargetClassNames() public method

This method is used to optimize the matching process.
public reduceTargetClassNames ( ClassNameIndex $classNameIndex ) : ClassNameIndex
$classNameIndex Neos\Flow\Aop\Builder\ClassNameIndex
return Neos\Flow\Aop\Builder\ClassNameIndex

Property Details

$annotation protected property

The tag of an annotation to match against
protected $annotation

$annotationValueConstraints protected property

protected array $annotationValueConstraints
return array

$reflectionService protected property

protected ReflectionService,Neos\Flow\Reflection $reflectionService
return Neos\Flow\Reflection\ReflectionService

$systemLogger protected property

protected SystemLoggerInterface,Neos\Flow\Log $systemLogger
return Neos\Flow\Log\SystemLoggerInterface