Конфигурация внедрения зависимостей JMS Serializer - PullRequest
0 голосов
/ 11 декабря 2018

Используя JMSSerializerBundle v3.0.0 , я выяснил, как использовать apcu-кэширование для аннотаций и метаданных при создании нового сериализатора из SerializerBuilder::create().

use Doctrine\Common\Annotations\AnnotationReader;
use Doctrine\Common\Annotations\CachedReader;
use JMS\Serializer\SerializerBuilder;

public function createSerializer()
{
    $cache = new ApcuCache();

    return SerializerBuilder::create()
        ->setPropertyNamingStrategy(new SerializedNameAnnotationStrategy(new IdenticalPropertyNamingStrategy()))
        ->addDefaultHandlers()
        ->setAnnotationReader(new CachedReader(new AnnotationReader(), $cache, false))
        ->setMetadataCache(new DoctrineCacheAdapter('JMS_METADATA_', $cache))
        ->build();
}

Но я могу 'не найти способ сделать это для зависимого введенного сериализатора.В документации упоминается:

metadata:
    cache: file

, но ничего не сказано о настройке его в apcu cache и ничего о пользовательском кэшированном считывателе аннотаций.

Кто-нибудь уже реализовал это?

...