/**
  * {@inheritdoc}
  */
 public function associateScope(AccessTokenEntity $token, ScopeEntity $scope)
 {
     $key = RedisUtil::prefix($token->getId(), 'oauth_access_token_scopes');
     if (!isset($this->cache[$key])) {
         $this->cache[$key] = [];
     }
     $value = ['id' => $scope->getId()];
     array_push($this->cache[$key], $value);
     RedisCapsule::sadd($key, RedisUtil::prepare($value));
 }
 /**
  * {@inheritdoc}
  */
 public function create($token, $expireTime, $accessToken)
 {
     $payload = ['id' => $token, 'expire_time' => $expireTime, 'access_token_id' => $accessToken];
     $key = RedisUtil::prefix($token, 'oauth_refresh_tokens');
     $this->cache[$key] = $payload;
     RedisCapsule::set($key, RedisUtil::prepare($payload));
     $key = RedisUtil::prefix(null, 'oauth_refresh_tokens');
     if (!isset($this->cache[$key])) {
         $this->cache[$key] = [];
     }
     array_push($this->cache[$key], $token);
     RedisCapsule::sadd($key, RedisUtil::prepare($token));
 }