Interface TokensManagement
-
public interface TokensManagement
Tokens API allows for manipulating generic tokens. Token is a piece of information which is:- bound to an entity
- has unique identifier
- has type (e.g. OAuth access token)
- can have expiration time, when it is removed
- can contain additional, type specific data
As this is a low level interface it allows for external transaction steering. All methods will join an existing transaction if it is present.
- Author:
- K. Benedyczak
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interface
TokensManagement.TokenExpirationListener
Receives notifications about expired tokens.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
addToken(String type, String value, byte[] contents, Date created, Date expires)
Adds a new token without ownervoid
addToken(String type, String value, EntityParam owner, byte[] contents, Date created, Date expires)
Adds a new tokenvoid
addTokenExpirationListener(TokensManagement.TokenExpirationListener listener, String type)
Adds a new listenr which is notified about expired tokens of a specified typeList<pl.edu.icm.unity.base.token.Token>
getAllTokens()
List<pl.edu.icm.unity.base.token.Token>
getAllTokens(String type)
List<pl.edu.icm.unity.base.token.Token>
getOwnedTokens(String type, EntityParam entity)
Returns all tokens of the entitypl.edu.icm.unity.base.token.Token
getTokenById(String type, String value)
Returns a specified tokenvoid
removeToken(String type, String value)
Removes the tokenvoid
updateToken(String type, String value, Date expires, byte[] contents)
Update the token.
-
-
-
Method Detail
-
addToken
void addToken(String type, String value, EntityParam owner, byte[] contents, Date created, Date expires) throws IllegalIdentityValueException, IllegalTypeException
Adds a new token- Parameters:
type
- type or category of the tokencreated
- creation timestamp. It is guaranteed to be stored with second precision, though implementation might also store the full time.expires
- precision as in created case.- Throws:
IllegalIdentityValueException
IllegalTypeException
-
addToken
void addToken(String type, String value, byte[] contents, Date created, Date expires) throws IllegalTypeException
Adds a new token without owner- Parameters:
type
- type or category of the tokencreated
- creation timestamp. It is guaranteed to be stored with second precision, though implementation might also store the full time.expires
- precision as in created case.- Throws:
IllegalTypeException
-
updateToken
void updateToken(String type, String value, Date expires, byte[] contents)
Update the token. Only contents and expiration time can be updated - the type and value are used to look up a token for update.- Parameters:
expires
- if null -> leave unchangedcontents
- if null -> leave unchanged
-
getTokenById
pl.edu.icm.unity.base.token.Token getTokenById(String type, String value)
Returns a specified token
-
getOwnedTokens
List<pl.edu.icm.unity.base.token.Token> getOwnedTokens(String type, EntityParam entity) throws IllegalIdentityValueException, IllegalTypeException
Returns all tokens of the entity
-
getAllTokens
List<pl.edu.icm.unity.base.token.Token> getAllTokens(String type)
- Returns:
- all tokens of a given type
-
getAllTokens
List<pl.edu.icm.unity.base.token.Token> getAllTokens()
- Returns:
- all tokens
-
addTokenExpirationListener
void addTokenExpirationListener(TokensManagement.TokenExpirationListener listener, String type)
Adds a new listenr which is notified about expired tokens of a specified type
-
-