Interface TokensManagement
-
public interface TokensManagementTokens 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 interfaceTokensManagement.TokenExpirationListenerReceives notifications about expired tokens.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidaddToken(String type, String value, byte[] contents, Date created, Date expires)Adds a new token without ownervoidaddToken(String type, String value, EntityParam owner, byte[] contents, Date created, Date expires)Adds a new tokenvoidaddTokenExpirationListener(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.TokengetTokenById(String type, String value)Returns a specified tokenvoidremoveToken(String type, String value)Removes the tokenvoidupdateToken(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:
IllegalIdentityValueExceptionIllegalTypeException
-
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
-
-