def remove(self, token): if IToken.providedBy(token): token = token.key token = self._tokens.pop(token) self._del_user_map(token) return token
def add(self, token): assert IToken.providedBy(token) if self.get(token.key): raise ValueError('token %s already exists', token.key) self._tokens[token.key] = token self._add_user_map(token)
def get(self, token, default=None): token_key = IToken.providedBy(token) and token.key or token return self._tokens.get(token_key, default)