Viewing file: CacheServiceProvider.php (1.32 KB) -rwxr-xr-x Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
namespace Illuminate\Cache;
use Illuminate\Contracts\Support\DeferrableProvider; use Illuminate\Support\ServiceProvider; use Symfony\Component\Cache\Adapter\Psr16Adapter;
class CacheServiceProvider extends ServiceProvider implements DeferrableProvider { /** * Register the service provider. * * @return void */ public function register() { $this->app->singleton('cache', function ($app) { return new CacheManager($app); });
$this->app->singleton('cache.store', function ($app) { return $app['cache']->driver(); });
$this->app->singleton('cache.psr6', function ($app) { return new Psr16Adapter($app['cache.store']); });
$this->app->singleton('memcached.connector', function () { return new MemcachedConnector; });
$this->app->singleton(RateLimiter::class, function ($app) { return new RateLimiter($app->make('cache')->driver( $app['config']->get('cache.limiter') )); }); }
/** * Get the services provided by the provider. * * @return array */ public function provides() { return [ 'cache', 'cache.store', 'cache.psr6', 'memcached.connector', RateLimiter::class, ]; } }
|