Awesome
Doctrine annotations universal module
This package integrates doctrine/annotations (the Doctrine annotation library) in any container-interop/service-provider compatible framework/container.
Installation
composer require thecodingmachine/doctrine-annotations-universal-module
Once installed, you need to register the TheCodingMachine\DoctrineAnnotationsServiceProvider
into your container.
If your container supports thecodingmachine/discovery integration, you have nothing to do. Otherwise, refer to your framework or container's documentation to learn how to register service providers.
Introduction
This service provider will provide a default Doctrine AnnotationReader implementation. It will use a Doctrine cache if the cache is available.
Note: you can get a service provider providing a working Doctrine cache using the following packages:
composer require thecodingmachine/stash-universal-module
composer require thecodingmachine/psr-6-doctrine-bridge-universal-module
This will install Stash and its related service-provider and a PSR-6 to Doctrine cache bridge.
Usage
use Doctrine\Common\Annotations\AnnotationReader;
$annotationReader = $container->get(AnnotationReader::class);
Default behaviour
This service provider will lookup for a Doctrine\Common\Cache\Cache
service. If available, this cache system will be used to cache annotations.
Annotations will be loaded using the autoloader from Composer.
Expected values / services
This service provider expects the following configuration / services to be available:
Name | Compulsory | Description |
---|---|---|
Doctrine\Common\Cache\Cache | no | A Doctrine cache. |
thecodingmachine.stash-universal-module.debug | no | Whether debug mode is enabled or not. Defaults to true . In debug mode, cache is invalidated with a PHP file changes. |
Provided services
This service provider provides the following services:
Service name | Description |
---|---|
Doctrine\Common\Annotations\Reader | A Doctrine annotation reader. |
Extended services
This service provider does not extend any service.