Свойство | Тип | Описание | |
---|---|---|---|
$annotatedClasses | array | Array of annotation classnames and the names of classes which are annotated with them | |
$annotationReader | Doctrine\Common\Annotations\Reader | ||
$availableClassNames | array | ||
$classLoader | |||
$classReflectionData | array | Array with reflection information indexed by class name | |
$classSchemata | array<\Neos\Flow\Reflection\ClassSchema> | Schemata of all classes which can be persisted | |
$classSchemataRuntimeCache | Neos\Cache\Frontend\VariableFrontend | ||
$classesByMethodAnnotations | array | Array of method annotations and the classes and methods which are annotated with them | |
$classesCurrentlyBeingForgotten | array | An array of class names which are currently being forgotten by forgetClass(). Acts as a safeguard against infinite loops. | |
$context | |||
$doctrinePhpParser | Doctrine\Common\Annotations\PhpParser | Note: Don't refer to this member directly but use getDoctrinePhpParser() to obtain an instance | |
$environment | |||
$initialized | boolean | ||
$loadFromClassSchemaRuntimeCache | boolean | In Production context, with frozen caches, this flag will be TRUE | |
$packageManager | Neos\Flow\Package\PackageManagerInterface | ||
$reflectionDataCompiletimeCache | Neos\Cache\Frontend\VariableFrontend | ||
$reflectionDataRuntimeCache | Neos\Cache\Frontend\VariableFrontend | ||
$settings | array | ||
$statusCache | |||
$systemLogger | Neos\Flow\Log\SystemLoggerInterface | ||
$updatedReflectionData | array | Array with updated reflection information (e.g. in Development context after classes have changed) | |
$useStatementsForClassCache | array | a cache which stores the use statements reflected for a particular class (only relevant for un-expanded "var" and "param" annotations) |
Метод | Описание | |
---|---|---|
buildReflectionData ( array $availableClassNames ) : void | Builds the reflection data cache during compile time. | |
freezePackageReflection ( string $packageKey ) : void | Stores the current reflection data related to classes of the specified package in the PrecompiledReflectionData directory for the current context. | |
getAllClassNames ( ) : array | Returns the names of all classes known to this reflection service. | |
getAllImplementationClassNamesForInterface ( string $interfaceName ) : array | Searches for and returns all class names of implementations of the given object type (interface name). If no class implementing the interface was found, an empty array is returned. | |
getAllSubClassNamesForClass ( string $className ) : array | Searches for and returns all names of classes inheriting the specified class. | |
getClassAnnotation ( string $className, string $annotationClassName ) : object | Returns the specified class annotation or NULL. | |
getClassAnnotations ( string $className, string $annotationClassName = null ) : array | Returns the specified class annotations or an empty array | |
getClassNameByObject ( object $object ) : string | Returns the class name of the given object. This is a convenience method that returns the expected class names even for proxy classes. | |
getClassNamesByAnnotation ( string $annotationClassName ) : array | Searches for and returns all names of classes which are tagged by the specified annotation. If no classes were found, an empty array is returned. | |
getClassPropertyNames ( string $className ) : array | Returns the names of all properties of the specified class | |
getClassSchema ( mixed $classNameOrObject ) : |
Returns the class schema for the given class | |
getClassesContainingMethodsAnnotatedWith ( string $annotationClassName ) : array | Returns all class names of classes containing at least one method annotated with the given annotation class | |
getDefaultImplementationClassNameForInterface ( string $interfaceName ) : mixed | Searches for and returns the class name of the default implementation of the given interface name. If no class implementing the interface was found or more than one implementation was found in the package defining the interface, FALSE is returned. | |
getMethodAnnotation ( string $className, string $methodName, string $annotationClassName ) : object | Returns the specified method annotation or NULL. | |
getMethodAnnotations ( string $className, string $methodName, string $annotationClassName = null ) : array | Returns the specified method annotations or an empty array | |
getMethodDeclaredReturnType ( string $className, string $methodName ) : string | Returns the declared return type of a method (for PHP < 7.0 this will always return null) | |
getMethodParameters ( string $className, string $methodName ) : array | Returns an array of parameters of the given method. Each entry contains additional information about the parameter position, type hint etc. | |
getMethodTagsValues ( string $className, string $methodName ) : array | Returns all tags and their values the specified method is tagged with | |
getMethodsAnnotatedWith ( string $className, string $annotationClassName ) : array | Returns all names of methods of the given class that are annotated with the given annotation class | |
getPropertyAnnotation ( string $className, string $propertyName, string $annotationClassName ) : object | Returns the specified property annotation or NULL. | |
getPropertyAnnotations ( string $className, string $propertyName, string $annotationClassName = null ) : array | Returns the specified property annotations or an empty array | |
getPropertyNamesByAnnotation ( string $className, string $annotationClassName ) : array | Searches for and returns all names of class properties which are marked by the specified annotation. If no properties were found, an empty array is returned. | |
getPropertyNamesByTag ( string $className, string $tag ) : array | Searches for and returns all names of class properties which are tagged by the specified tag. | |
getPropertyTagValues ( string $className, string $propertyName, string $tag ) : array | Returns the values of the specified class property tag | |
getPropertyTagsValues ( string $className, string $propertyName ) : array | Returns all tags and their values the specified class property is tagged with | |
hasMethod ( string $className, string $methodName ) : boolean | Wrapper for method_exists() which tells if the given method exists. | |
injectClassLoader ( |
||
injectEnvironment ( |
||
injectPackageManager ( Neos\Flow\Package\PackageManagerInterface $packageManager ) : void | ||
injectSettings ( array $settings ) : void | ||
injectSystemLogger ( Neos\Flow\Log\SystemLoggerInterface $systemLogger ) : void | ||
isClassAbstract ( string $className ) : boolean | Tells if the specified class is abstract or not | |
isClassAnnotatedWith ( string $className, string $annotationClassName ) : boolean | Tells if the specified class has the given annotation | |
isClassFinal ( string $className ) : boolean | Tells if the specified class is final or not | |
isClassImplementationOf ( string $className, string $interfaceName ) : boolean | Tells if the specified class implements the given interface | |
isClassReflected ( string $className ) : boolean | Tells if the specified class is known to this reflection service and reflection information is available. | |
isClassUnconfigurable ( string $className ) : boolean | Tells if the class is unconfigurable or not | |
isMethodAnnotatedWith ( string $className, string $methodName, string $annotationClassName ) : boolean | Tells if the specified method has the given annotation | |
isMethodFinal ( string $className, string $methodName ) : boolean | Tells if the specified method is final or not | |
isMethodPrivate ( string $className, string $methodName ) : boolean | Tells if the specified method is private | |
isMethodProtected ( string $className, string $methodName ) : boolean | Tells if the specified method is protected | |
isMethodPublic ( string $className, string $methodName ) : boolean | Tells if the specified method is public | |
isMethodStatic ( string $className, string $methodName ) : boolean | Tells if the specified method is declared as static or not | |
isMethodTaggedWith ( string $className, string $methodName, string $tag ) : boolean | Tells if the specified method is tagged with the given tag | |
isPropertyAnnotatedWith ( string $className, string $propertyName, string $annotationClassName ) : boolean | Tells if the specified property has the given annotation | |
isPropertyPrivate ( string $className, string $propertyName ) : boolean | Tells if the specified property is private | |
isPropertyTaggedWith ( string $className, string $propertyName, string $tag ) : boolean | Tells if the specified class property is tagged with the given tag | |
reflectClassProperty ( string $className, |
||
saveToCache ( ) : void | Exports the internal reflection data into the ReflectionData cache | |
setClassSchemataRuntimeCache ( Neos\Cache\Frontend\VariableFrontend $cache ) : void | Sets the dedicated class schema cache for runtime purposes | |
setReflectionDataCompiletimeCache ( Neos\Cache\Frontend\VariableFrontend $cache ) : void | Sets the compile-time data cache | |
setReflectionDataRuntimeCache ( Neos\Cache\Frontend\VariableFrontend $cache ) : void | Sets the runtime data cache | |
setStatusCache ( |
Sets the status cache | |
unfreezePackageReflection ( string $packageKey ) : void | Removes the precompiled reflection data of a frozen package |
Метод | Описание | |
---|---|---|
addImplementedInterface ( string $className, |
||
addParentClass ( string $className, |
||
addPropertiesToClassSchema ( |
Adds properties of the class at hand to the class schema. | |
buildClassSchema ( string $className ) : |
Builds a class schema for the given class name. | |
buildClassSchemata ( array $classNames ) : void | Builds class schemata from classes annotated as entities or value objects | |
checkValueObjectRequirements ( string $className ) : void | Checks if the given class meets the requirements for a value object, i.e. | |
cleanClassName ( string $className ) : string | Clean a given class name from possibly prefixed backslash | |
completeRepositoryAssignments ( ) : void | Complete repository-to-entity assignments. | |
convertParameterDataToArray ( array $parametersInformation ) : array | Converts the internal, optimized data structure of parameter information into a human-friendly array with speaking indexes. | |
convertParameterReflectionToArray ( |
Converts the given parameter reflection into an information array | |
ensureAggregateRootInheritanceChainConsistency ( ) : void | Checks whether all aggregate roots having superclasses have a repository assigned up to the tip of their hierarchy. | |
evaluateClassPropertyAnnotationsForSchema ( |
||
expandType ( |
Expand shortened class names in "var" and "param" annotations, taking use statements into account. | |
filterArrayByClassesInNamespace ( array $array, string $packageNamespace ) : array | Filter an array of entries were keys are class names by being in the given package namespace. | |
forgetChangedClasses ( ) : void | Checks which classes lack a cache entry and removes their reflection data accordingly. | |
forgetClass ( string $className ) : void | Forgets all reflection data related to the specified class | |
getDoctrinePhpParser ( ) : Doctrine\Common\Annotations\PhpParser | Retrieves a singleton instance of the Doctrine PhpParser | |
getParentClasses ( |
Finds all parent classes of the given class | |
getPrecompiledReflectionStoragePath ( ) : string | Determines the path to the precompiled reflection data. | |
hasFrozenCacheInProduction ( ) : boolean | ||
initialize ( ) : void | Initialize the reflection service lazily | |
isTagIgnored ( string $tagName ) : boolean | Check if a specific annotation tag is configured to be ignored. | |
loadClassReflectionCompiletimeCache ( ) : boolean | Tries to load the reflection data from the compile time cache. | |
loadOrReflectClassIfNecessary ( string $className ) : void | Loads reflection data from the cache or reflects the class if needed. | |
log ( string $message, integer $severity = LOG_INFO, mixed $additionalData = null ) : void | Writes the given message along with the additional information into the log. | |
makeChildClassesAggregateRoot ( |
Assigns the repository of any aggregate root to all it's subclasses, unless they are aggregate root already. | |
prepareClassReflectionForUsage ( string $className ) : string | Initializes the ReflectionService, cleans the given class name and finally reflects the class if necessary. | |
produceCacheIdentifierFromClassName ( string $className ) : string | Transform backslashes to underscores to provide an valid cache identifier. | |
reflectClass ( string $className ) : void | Reflects the given class and stores the results in this service's properties. | |
reflectClassMethod ( string $className, |
||
reflectClassMethodParameter ( string $className, |
||
reflectEmergedClasses ( ) : void | Checks if the given class names match those which already have been reflected. If the given array contains class names not yet known to this service, these classes will be reflected. | |
reflectPropertyTag ( string $className, |
||
saveDevelopmentData ( ) | Save reflection data to cache in Development context. | |
saveProductionData ( ) | Save reflection data to cache in Production context. | |
updateReflectionData ( ) | Set updated reflection data to caches. |
protected addImplementedInterface ( string $className, |
||
$className | string | |
$interface |
protected addParentClass ( string $className, |
||
$className | string | |
$parentClass | ||
Результат | void |
protected addPropertiesToClassSchema ( |
||
$classSchema | ||
Результат | void |
protected buildClassSchema ( string $className ) : |
||
$className | string | |
Результат |
protected buildClassSchemata ( array $classNames ) : void | ||
$classNames | array | |
Результат | void |
public buildReflectionData ( array $availableClassNames ) : void | ||
$availableClassNames | array | List of all class names to consider for reflection |
Результат | void |
protected checkValueObjectRequirements ( string $className ) : void | ||
$className | string | |
Результат | void |
protected cleanClassName ( string $className ) : string | ||
$className | string | |
Результат | string |
protected completeRepositoryAssignments ( ) : void | ||
Результат | void |
protected convertParameterDataToArray ( array $parametersInformation ) : array | ||
$parametersInformation | array | Raw, internal parameter information |
Результат | array | Developer friendly version |
protected convertParameterReflectionToArray ( |
||
$parameter | The parameter to reflect | |
$method | The parameter's method | |
Результат | array | Parameter information array |
protected ensureAggregateRootInheritanceChainConsistency ( ) : void | ||
Результат | void |
protected evaluateClassPropertyAnnotationsForSchema ( |
||
$classSchema | ||
$propertyName | string | |
Результат | boolean |
protected expandType ( |
||
$class | ||
$type | string | the type inside var/param annotation |
Результат | string | the possibly expanded type |
protected forgetChangedClasses ( ) : void | ||
Результат | void |
protected forgetClass ( string $className ) : void | ||
$className | string | Name of the class to forget |
Результат | void |
public freezePackageReflection ( string $packageKey ) : void | ||
$packageKey | string | |
Результат | void |
public getAllClassNames ( ) : array | ||
Результат | array | Class names |
public getAllImplementationClassNamesForInterface ( string $interfaceName ) : array | ||
$interfaceName | string | Name of the interface |
Результат | array | An array of class names of the default implementation for the object type |
public getAllSubClassNamesForClass ( string $className ) : array | ||
$className | string | Name of the parent class |
Результат | array | An array of names of those classes being a direct or indirect subclass of the specified class |
public getClassAnnotations ( string $className, string $annotationClassName = null ) : array | ||
$className | string | Name of the class |
$annotationClassName | string | Annotation to filter for |
Результат | array |
public getClassNameByObject ( object $object ) : string | ||
$object | object | |
Результат | string | The class name of the given object |
public getClassNamesByAnnotation ( string $annotationClassName ) : array | ||
$annotationClassName | string | Name of the annotation class, for example "Neos\Flow\Annotations\Aspect" |
Результат | array |
public getClassPropertyNames ( string $className ) : array | ||
$className | string | Name of the class to return the property names of |
Результат | array | An array of property names or an empty array if none exist |
public getClassSchema ( mixed $classNameOrObject ) : |
||
$classNameOrObject | mixed | The class name or an object |
Результат |
public getClassesContainingMethodsAnnotatedWith ( string $annotationClassName ) : array | ||
$annotationClassName | string | The annotation class name for a method annotation |
Результат | array | An array of class names |
public getDefaultImplementationClassNameForInterface ( string $interfaceName ) : mixed | ||
$interfaceName | string | Name of the interface |
Результат | mixed | Either the class name of the default implementation for the object type or FALSE |
protected getDoctrinePhpParser ( ) : Doctrine\Common\Annotations\PhpParser | ||
Результат | Doctrine\Common\Annotations\PhpParser |
public getMethodParameters ( string $className, string $methodName ) : array | ||
$className | string | Name of the class containing the method |
$methodName | string | Name of the method to return parameter information of |
Результат | array | An array of parameter names and additional information or an empty array of no parameters were found |
protected getParentClasses ( |
||
$class | The class to reflect | |
$parentClasses | array | Array of parent classes |
Результат | array |
protected getPrecompiledReflectionStoragePath ( ) : string | ||
Результат | string |
public getPropertyTagValues ( string $className, string $propertyName, string $tag ) : array | ||
$className | string | Name of the class containing the property |
$propertyName | string | Name of the tagged property |
$tag | string | Tag to return the values of |
Результат | array | An array of values or an empty array if the tag was not found |
public getPropertyTagsValues ( string $className, string $propertyName ) : array | ||
$className | string | Name of the class containing the property |
$propertyName | string | Name of the property to return the tags and values of |
Результат | array | An array of tags and their values or an empty array of no tags were found |
protected hasFrozenCacheInProduction ( ) : boolean | ||
Результат | boolean |
protected initialize ( ) : void | ||
Результат | void |
public injectClassLoader ( |
||
$classLoader | ||
Результат | void |
public injectEnvironment ( |
||
$environment | ||
Результат | void |
public injectPackageManager ( Neos\Flow\Package\PackageManagerInterface $packageManager ) : void | ||
$packageManager | Neos\Flow\Package\PackageManagerInterface | |
Результат | void |
public injectSettings ( array $settings ) : void | ||
$settings | array | Settings of the Flow package |
Результат | void |
public injectSystemLogger ( Neos\Flow\Log\SystemLoggerInterface $systemLogger ) : void | ||
$systemLogger | Neos\Flow\Log\SystemLoggerInterface | |
Результат | void |
public isClassAbstract ( string $className ) : boolean | ||
$className | string | Name of the class to analyze |
Результат | boolean | TRUE if the class is abstract, otherwise FALSE |
public isClassFinal ( string $className ) : boolean | ||
$className | string | Name of the class to analyze |
Результат | boolean | TRUE if the class is final, otherwise FALSE |
public isClassReflected ( string $className ) : boolean | ||
$className | string | Name of the class |
Результат | boolean | If the class is reflected by this service |
public isClassUnconfigurable ( string $className ) : boolean | ||
$className | string | Name of the class to analyze |
Результат | boolean | return TRUE if class not could not be automatically configured, otherwise FALSE |
public isMethodTaggedWith ( string $className, string $methodName, string $tag ) : boolean | ||
$className | string | Name of the class containing the method |
$methodName | string | Name of the method to analyze |
$tag | string | Tag to check for |
Результат | boolean | TRUE if the method is tagged with $tag, otherwise FALSE |
protected isTagIgnored ( string $tagName ) : boolean | ||
$tagName | string | The annotation tag to check |
Результат | boolean | TRUE if the tag is configured to be ignored, FALSE otherwise |
protected loadClassReflectionCompiletimeCache ( ) : boolean | ||
Результат | boolean | TRUE if reflection data could be loaded, otherwise FALSE |
protected loadOrReflectClassIfNecessary ( string $className ) : void | ||
$className | string | Name of the class to load data for |
Результат | void |
protected log ( string $message, integer $severity = LOG_INFO, mixed $additionalData = null ) : void | ||
$message | string | The message to log |
$severity | integer | An integer value, one of the LOG_* constants |
$additionalData | mixed | A variable containing more information about the event to be logged |
Результат | void |
protected makeChildClassesAggregateRoot ( |
||
$classSchema | ||
Результат | void |
protected prepareClassReflectionForUsage ( string $className ) : string | ||
$className | string | |
Результат | string | The cleaned class name |
protected produceCacheIdentifierFromClassName ( string $className ) : string | ||
$className | string | |
Результат | string |
protected reflectClass ( string $className ) : void | ||
$className | string | Full qualified name of the class to reflect |
Результат | void |
protected reflectClassMethod ( string $className, |
||
$className | string | |
$method | ||
Результат | void |
protected reflectClassMethodParameter ( string $className, |
||
$className | string | |
$method | ||
$parameter | ||
Результат | void |
public reflectClassProperty ( string $className, |
||
$className | string | |
$property | ||
Результат | integer | visibility |
protected reflectEmergedClasses ( ) : void | ||
Результат | void |
protected saveDevelopmentData ( ) |
protected saveProductionData ( ) |
public saveToCache ( ) : void | ||
Результат | void |
public setClassSchemataRuntimeCache ( Neos\Cache\Frontend\VariableFrontend $cache ) : void | ||
$cache | Neos\Cache\Frontend\VariableFrontend | |
Результат | void |
public setReflectionDataCompiletimeCache ( Neos\Cache\Frontend\VariableFrontend $cache ) : void | ||
$cache | Neos\Cache\Frontend\VariableFrontend | Cache for the reflection service |
Результат | void |
public setReflectionDataRuntimeCache ( Neos\Cache\Frontend\VariableFrontend $cache ) : void | ||
$cache | Neos\Cache\Frontend\VariableFrontend | Cache for the reflection service |
Результат | void |
public setStatusCache ( |
||
$cache | Cache for the reflection service | |
Результат | void |
public unfreezePackageReflection ( string $packageKey ) : void | ||
$packageKey | string | The package to remove the data from |
Результат | void |
protected updateReflectionData ( ) |
protected array $annotatedClasses | ||
Результат | array |
protected Reader,Doctrine\Common\Annotations $annotationReader | ||
Результат | Doctrine\Common\Annotations\Reader |
protected ClassLoader,Neos\Flow\Core $classLoader | ||
Результат |
protected array $classReflectionData | ||
Результат | array |
protected array<\Neos\Flow\Reflection\ClassSchema> $classSchemata | ||
Результат | array<\Neos\Flow\Reflection\ClassSchema> |
protected VariableFrontend,Neos\Cache\Frontend $classSchemataRuntimeCache | ||
Результат | Neos\Cache\Frontend\VariableFrontend |
protected array $classesByMethodAnnotations | ||
Результат | array |
protected array $classesCurrentlyBeingForgotten | ||
Результат | array |
protected ApplicationContext,Neos\Flow\Core $context | ||
Результат |
protected PhpParser,Doctrine\Common\Annotations $doctrinePhpParser | ||
Результат | Doctrine\Common\Annotations\PhpParser |
protected Environment,Neos\Flow\Utility $environment | ||
Результат |
protected bool $loadFromClassSchemaRuntimeCache | ||
Результат | boolean |
protected PackageManagerInterface,Neos\Flow\Package $packageManager | ||
Результат | Neos\Flow\Package\PackageManagerInterface |
protected VariableFrontend,Neos\Cache\Frontend $reflectionDataCompiletimeCache | ||
Результат | Neos\Cache\Frontend\VariableFrontend |
protected VariableFrontend,Neos\Cache\Frontend $reflectionDataRuntimeCache | ||
Результат | Neos\Cache\Frontend\VariableFrontend |
protected StringFrontend,Neos\Cache\Frontend $statusCache | ||
Результат |
protected SystemLoggerInterface,Neos\Flow\Log $systemLogger | ||
Результат | Neos\Flow\Log\SystemLoggerInterface |
protected array $updatedReflectionData | ||
Результат | array |
protected array $useStatementsForClassCache | ||
Результат | array |