PHP Class Neos\Flow\Security\Authorization\Privilege\Method\MethodPrivilegePointcutFilter

Inheritance: implements Neos\Flow\Aop\Pointcut\PointcutFilterInterface
Datei anzeigen Open project: neos/flow-development-collection

Protected Properties

Property Type Description
$filters Neos\Flow\Aop\Pointcut\PointcutFilterComposite[]
$methodPermissionCache Neos\Cache\Frontend\VariableFrontend
$methodPermissions array
$objectManager Neos\Flow\ObjectManagement\ObjectManagerInterface
$runtimeExpressionEvaluator Neos\Flow\Aop\Pointcut\RuntimeExpressionEvaluator

Public Methods

Method Description
getRuntimeEvaluationsDefinition ( ) : array Returns runtime evaluations for the pointcut.
hasRuntimeEvaluationsDefinition ( ) : boolean Returns TRUE if this filter holds runtime evaluations for a previously matched pointcut
initializeObject ( ) : void
injectObjectManager ( Neos\Flow\ObjectManagement\ObjectManagerInterface $objectManager ) : void This object is created very early so we can't rely on AOP for the property injection
matches ( string $className, string $methodName, string $methodDeclaringClassName, mixed $pointcutQueryIdentifier ) : boolean Checks if the specified class and method matches against the filter, i.e. if there is a policy entry to intercept this method.
reduceTargetClassNames ( ClassNameIndex $classNameIndex ) : ClassNameIndex This method is used to optimize the matching process.
savePolicyCache ( ) : void Save the found matches to the cache.

Protected Methods

Method Description
buildPointcutFilters ( ) : boolean Builds the needed pointcut filters for matching the policy privileges

Method Details

buildPointcutFilters() protected method

Builds the needed pointcut filters for matching the policy privileges
protected buildPointcutFilters ( ) : boolean
return boolean

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

initializeObject() public method

public initializeObject ( ) : void
return void

injectObjectManager() public method

This object is created very early so we can't rely on AOP for the property injection
public injectObjectManager ( Neos\Flow\ObjectManagement\ObjectManagerInterface $objectManager ) : void
$objectManager Neos\Flow\ObjectManagement\ObjectManagerInterface
return void

matches() public method

This method also creates a cache entry for every method, to cache the associated roles and privileges.
public matches ( string $className, string $methodName, string $methodDeclaringClassName, mixed $pointcutQueryIdentifier ) : boolean
$className string Name of the class to check the name of
$methodName string Name of the method to check the name of
$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 the names match, 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

savePolicyCache() public method

Save the found matches to the cache.
public savePolicyCache ( ) : void
return void

Property Details

$filters protected_oe property

protected PointcutFilterComposite[],Neos\Flow\Aop\Pointcut $filters
return Neos\Flow\Aop\Pointcut\PointcutFilterComposite[]

$methodPermissionCache protected_oe property

protected VariableFrontend,Neos\Cache\Frontend $methodPermissionCache
return Neos\Cache\Frontend\VariableFrontend

$methodPermissions protected_oe property

protected array $methodPermissions
return array

$objectManager protected_oe property

protected ObjectManagerInterface,Neos\Flow\ObjectManagement $objectManager
return Neos\Flow\ObjectManagement\ObjectManagerInterface

$runtimeExpressionEvaluator protected_oe property

protected RuntimeExpressionEvaluator,Neos\Flow\Aop\Pointcut $runtimeExpressionEvaluator
return Neos\Flow\Aop\Pointcut\RuntimeExpressionEvaluator