public function update(EntityInterface $token)
    {
        if (!is_a($token, self::ACCESS_ENTITY_TYPE)) {
            throw new Exception('The given entity (' . get_class($token) . ') is not compatible with this data source (' . self::class . '.');
        }
        
        // If the uuid does not exists we cannot update the token
        if (!$this->accessControlManager->hasAccessEntityForUuid(self::ACCESS_ENTITY_TYPE, $token->getUuid())) {
            throw new Exception('Cannot update the token. Token does not exist.');
        }
        
        // Add the access entity
        return $this->accessControlManager->updateAccessEntity($token);
    }