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
Modifier and TypeInterfaceDescriptionstatic interface
Receives notifications about expired tokens. -
Method Summary
Modifier and TypeMethodDescriptionvoid
Adds a new token without ownervoid
addToken
(String type, String value, pl.edu.icm.unity.base.entity.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>
List<pl.edu.icm.unity.base.token.Token>
getAllTokens
(String type) List<pl.edu.icm.unity.base.token.Token>
getOwnedTokens
(String type, pl.edu.icm.unity.base.entity.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 Details
-
addToken
void addToken(String type, String value, pl.edu.icm.unity.base.entity.EntityParam owner, byte[] contents, Date created, Date expires) throws pl.edu.icm.unity.base.identity.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:
pl.edu.icm.unity.base.identity.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
-
removeToken
Removes the token -
updateToken
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
Returns a specified token -
getOwnedTokens
List<pl.edu.icm.unity.base.token.Token> getOwnedTokens(String type, pl.edu.icm.unity.base.entity.EntityParam entity) throws pl.edu.icm.unity.base.identity.IllegalIdentityValueException, IllegalTypeException Returns all tokens of the entity- Throws:
pl.edu.icm.unity.base.identity.IllegalIdentityValueException
IllegalTypeException
-
getAllTokens
- Returns:
- all tokens of a given type
-
getAllTokens
List<pl.edu.icm.unity.base.token.Token> getAllTokens()- Returns:
- all tokens
-
addTokenExpirationListener
Adds a new listenr which is notified about expired tokens of a specified type
-