PHP Class Neos\Flow\Aop\Pointcut\PointcutFilterComposite

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

Protected Properties

Property Type Description
$earlyReturn boolean
$filters An array of \Neos\Flow\Aop\Pointcut\Pointcut*Filter objects
$globalRuntimeEvaluationsDefinition An array of global runtime evaluations
$runtimeEvaluationsDefinition An array of runtime evaluations

Public Methods

Method Description
addFilter ( string $operator, Neos\Flow\Aop\Pointcut\PointcutFilterInterface $filter ) : void Adds a class filter to the composite
getRuntimeEvaluationsClosureCode ( ) : string Returns the PHP code (closure) that can evaluate the runtime evaluations
getRuntimeEvaluationsDefinition ( ) : array Returns runtime evaluations for the pointcut.
hasRuntimeEvaluationsDefinition ( ) : boolean Returns TRUE if this filter holds runtime evaluations for a previously matched pointcut
matches ( string $className, string $methodName, string $methodDeclaringClassName, mixed $pointcutQueryIdentifier ) : boolean Checks if the specified class and method match the registered class- and method filter patterns.
reduceTargetClassNames ( ClassNameIndex $classNameIndex ) : ClassNameIndex This method is used to optimize the matching process.
setGlobalRuntimeEvaluationsDefinition ( array $runtimeEvaluations ) : void Sets static runtime evaluations for to pointcut, that will be used for every method this composite matches

Protected Methods

Method Description
buildArgumentEvaluationAccessCode ( mixed $argumentAccess, &$useGlobalObjects = false ) : string Returns the PHP code used to access one argument of a runtime evaluation
buildGlobalRuntimeEvaluationsConditionCode ( array $conditions, &$useGlobalObjects = false ) : string Returns the PHP code of the conditions used for global runtime evaluations
buildMethodArgumentsEvaluationConditionCode ( array $conditions, &$useGlobalObjects = false ) : string Returns the PHP code of the conditions used argument runtime evaluations
buildRuntimeEvaluationsConditionCode ( string $operator, array $conditions, &$useGlobalObjects = false ) : string Returns the PHP code of the conditions used for runtime evaluations

Method Details

addFilter() public method

Adds a class filter to the composite
public addFilter ( string $operator, Neos\Flow\Aop\Pointcut\PointcutFilterInterface $filter ) : void
$operator string The operator for this filter
$filter Neos\Flow\Aop\Pointcut\PointcutFilterInterface A configured class filter
return void

buildArgumentEvaluationAccessCode() protected method

Returns the PHP code used to access one argument of a runtime evaluation
protected buildArgumentEvaluationAccessCode ( mixed $argumentAccess, &$useGlobalObjects = false ) : string
$argumentAccess mixed The unparsed argument access, might be string or array
return string The condition code

buildGlobalRuntimeEvaluationsConditionCode() protected method

Returns the PHP code of the conditions used for global runtime evaluations
protected buildGlobalRuntimeEvaluationsConditionCode ( array $conditions, &$useGlobalObjects = false ) : string
$conditions array Condition array
return string The condition code

buildMethodArgumentsEvaluationConditionCode() protected method

Returns the PHP code of the conditions used argument runtime evaluations
protected buildMethodArgumentsEvaluationConditionCode ( array $conditions, &$useGlobalObjects = false ) : string
$conditions array Condition array
return string The arguments condition code

buildRuntimeEvaluationsConditionCode() protected method

Returns the PHP code of the conditions used for runtime evaluations
protected buildRuntimeEvaluationsConditionCode ( string $operator, array $conditions, &$useGlobalObjects = false ) : string
$operator string The operator for the given condition
$conditions array Condition array
return string The condition code

getRuntimeEvaluationsClosureCode() public method

Returns the PHP code (closure) that can evaluate the runtime evaluations
public getRuntimeEvaluationsClosureCode ( ) : string
return string The closure code

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

matches() public method

Checks if the specified class and method match the registered class- and method filter patterns.
public matches ( string $className, string $methodName, string $methodDeclaringClassName, mixed $pointcutQueryIdentifier ) : boolean
$className string Name of the class to check against
$methodName string Name of the method to check against
$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.
return boolean TRUE if class and method match the pattern, 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

setGlobalRuntimeEvaluationsDefinition() public method

Sets static runtime evaluations for to pointcut, that will be used for every method this composite matches
public setGlobalRuntimeEvaluationsDefinition ( array $runtimeEvaluations ) : void
$runtimeEvaluations array Runtime evaluations to be added
return void

Property Details

$earlyReturn protected property

protected bool $earlyReturn
return boolean

$filters protected property

An array of \Neos\Flow\Aop\Pointcut\Pointcut*Filter objects
protected $filters

$globalRuntimeEvaluationsDefinition protected property

An array of global runtime evaluations
protected $globalRuntimeEvaluationsDefinition

$runtimeEvaluationsDefinition protected property

An array of runtime evaluations
protected $runtimeEvaluationsDefinition