Home

Awesome

Build Status Coverage Status

PSR6 to Doctrine cache universal module

This package integrates cache/psr-6-doctrine-bridge (the bridge between Doctrine cache and PSR-6) in any container-interop/service-provider compatible framework/container.

Installation

composer require thecodingmachine/psr-6-doctrine-bridge-universal-module

Once installed, you need to register the TheCodingMachine\DoctrineCacheBridgeServiceProvider 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 cache implementation based on the already configured PSR-6 cache.

It assumes there is already a configured service providing a PSR-6 cache pool. You can install a service provider providing this service using:

composer require thecodingmachine/stash-universal-module

(this will install Stash and its related service-provider. Stash is a PSR-6 caching library)

Usage

use Doctrine\Common\Cache\CacheProvider;

$cachePool = $container->get(CacheProvider::class);
echo $cachePool->get('my_cached_value');

Expected values / services

This service provider expects the following configuration / services to be available:

NameCompulsoryDescription
CacheItemPoolInterface::classyesA PSR-6 compatible cache pool.

Provided services

This service provider provides the following services:

Service nameDescription
Doctrine\Common\Cache\CacheProviderA Doctrine cache, this is actually a bridge to the PSR-6 pool.
Doctrine\Common\Cache\CacheAn alias to the CacheProvider.

Extended services

This service provider does not extend any service.