public function getScopeRepository()
 {
     $server = m::mock('League\\OAuth2\\Server\\AbstractServer');
     $repo = new FluentScope($this->app['db']);
     $repo->setServer($server);
     return $repo;
 }
 /**
  * Bind the storage implementations to the IoC container.
  *
  * @return void
  */
 public function registerStorageBindings()
 {
     $provider = $this;
     $this->app->singleton(FluentAccessToken::class, function () use($provider) {
         $storage = new FluentAccessToken($provider->app['db']);
         $storage->setConnectionName($provider->getConnectionName());
         return $storage;
     });
     $this->app->singleton(FluentAuthCode::class, function () use($provider) {
         $storage = new FluentAuthCode($provider->app['db']);
         $storage->setConnectionName($provider->getConnectionName());
         return $storage;
     });
     $this->app->singleton(FluentClient::class, function ($app) use($provider) {
         $limitClientsToGrants = $app['config']->get('oauth2.limit_clients_to_grants');
         $storage = new FluentClient($provider->app['db'], $limitClientsToGrants);
         $storage->setConnectionName($provider->getConnectionName());
         return $storage;
     });
     $this->app->singleton(FluentRefreshToken::class, function () use($provider) {
         $storage = new FluentRefreshToken($provider->app['db']);
         $storage->setConnectionName($provider->getConnectionName());
         return $storage;
     });
     $this->app->singleton(FluentScope::class, function ($app) use($provider) {
         $limitClientsToScopes = $app['config']->get('oauth2.limit_clients_to_scopes');
         $limitScopesToGrants = $app['config']->get('oauth2.limit_scopes_to_grants');
         $storage = new FluentScope($provider->app['db'], $limitClientsToScopes, $limitScopesToGrants);
         $storage->setConnectionName($provider->getConnectionName());
         return $storage;
     });
     $this->app->singleton(FluentSession::class, function () use($provider) {
         $storage = new FluentSession($provider->app['db']);
         $storage->setConnectionName($provider->getConnectionName());
         return $storage;
     });
 }
 /**
  * Bind the storage implementations to the IoC container
  * @return void
  */
 public function registerStorageBindings()
 {
     $provider = $this;
     $this->app->bindShared('LucaDegasperi\\OAuth2Server\\Storage\\FluentAccessToken', function () use($provider) {
         $storage = new FluentAccessToken($provider->app['db']);
         $storage->setConnectionName($provider->getConnectionName());
         return $storage;
     });
     $this->app->bindShared('LucaDegasperi\\OAuth2Server\\Storage\\FluentAuthCode', function () use($provider) {
         $storage = new FluentAuthCode($provider->app['db']);
         $storage->setConnectionName($provider->getConnectionName());
         return $storage;
     });
     $this->app->bindShared('LucaDegasperi\\OAuth2Server\\Storage\\FluentClient', function ($app) use($provider) {
         $limitClientsToGrants = $app['config']->get('oauth2.limit_clients_to_grants');
         $storage = new FluentClient($provider->app['db'], $limitClientsToGrants);
         $storage->setConnectionName($provider->getConnectionName());
         return $storage;
     });
     $this->app->bindShared('LucaDegasperi\\OAuth2Server\\Storage\\FluentRefreshToken', function () use($provider) {
         $storage = new FluentRefreshToken($provider->app['db']);
         $storage->setConnectionName($provider->getConnectionName());
         return $storage;
     });
     $this->app->bindShared('LucaDegasperi\\OAuth2Server\\Storage\\FluentScope', function ($app) use($provider) {
         $limitClientsToScopes = $app['config']->get('oauth2.limit_clients_to_scopes');
         $limitScopesToGrants = $app['config']->get('oauth2.limit_scopes_to_grants');
         $storage = new FluentScope($provider->app['db'], $limitClientsToScopes, $limitScopesToGrants);
         $storage->setConnectionName($provider->getConnectionName());
         return $storage;
     });
     $this->app->bindShared('LucaDegasperi\\OAuth2Server\\Storage\\FluentSession', function () use($provider) {
         $storage = new FluentSession($provider->app['db']);
         $storage->setConnectionName($provider->getConnectionName());
         return $storage;
     });
 }
 /**
  * Return information about a scope
  *
  * @param string $scope The scope
  * @param string $grantType The grant type used in the request (default = "null")
  * @param string $clientId The client sending the request (default = "null")
  *
  * @return \League\OAuth2\Server\Entity\ScopeEntity | null
  */
 public function get($scope, $grantType = null, $clientId = null)
 {
     $result = $this->storage->get($scope, $grantType, $clientId);
     return $result;
 }