annotationManager = ($annotationManager) ?: $this->createDefaultAnnotationManager(); } /** * Get annotation manager * * @return null|AnnotationManager */ public function getAnnotationManager() { return $this->annotationManager; } /** * Create default annotation manager * * @return AnnotationManager */ public function createDefaultAnnotationManager() { $annotationManager = new AnnotationManager; $parser = new GenericAnnotationParser(); $parser->registerAnnotation(new Annotation\Inject()); $annotationManager->attach($parser); return $annotationManager; } /** * set use annotations * * @param bool $useAnnotations */ public function setUseAnnotations($useAnnotations) { $this->useAnnotations = (bool) $useAnnotations; } /** * Get use annotations * * @return bool */ public function getUseAnnotations() { return $this->useAnnotations; } /** * Set method name inclusion pattern * * @param array $methodNameInclusionPatterns */ public function setMethodNameInclusionPatterns(array $methodNameInclusionPatterns) { $this->methodNameInclusionPatterns = $methodNameInclusionPatterns; } /** * Get method name inclusion pattern * * @return array */ public function getMethodNameInclusionPatterns() { return $this->methodNameInclusionPatterns; } /** * Set interface injection inclusion patterns * * @param array $interfaceInjectionInclusionPatterns */ public function setInterfaceInjectionInclusionPatterns(array $interfaceInjectionInclusionPatterns) { $this->interfaceInjectionInclusionPatterns = $interfaceInjectionInclusionPatterns; } /** * Get interface injection inclusion patterns * * @return array */ public function getInterfaceInjectionInclusionPatterns() { return $this->interfaceInjectionInclusionPatterns; } }