public abstract class RepositoryAccess extends Object
| Modifier and Type | Field and Description |
|---|---|
protected AuthRepository |
authRepo
Field description
|
protected Authorization |
authState
Current authorization state - initialy session i
NOT_AUTHORIZED. |
protected VHostItem |
domain
Field description
|
protected boolean |
is_anonymous
Field description
|
protected static String |
NO_ACCESS_TO_REP_MSG
Field description
|
protected static String |
NOT_AUTHORIZED_MSG
Field description
|
| Constructor and Description |
|---|
RepositoryAccess(UserRepository rep,
AuthRepository auth)
Creates a new
RepositoryAccess instance. |
| Modifier and Type | Method and Description |
|---|---|
void |
addDataList(String subnode,
String key,
String[] list)
Method description
|
void |
addOfflineDataList(String subnode,
String key,
String[] list)
Method description
|
void |
addPublicDataList(String subnode,
String key,
String[] list)
Method description
|
String |
getAuthenticationToken(String xmpp_sessionId)
Method description
|
Authorization |
getAuthState()
Gets the value of authState
|
abstract tigase.xmpp.BareJID |
getBareJID()
Returns user JID but without resource part.
|
String |
getData(String subnode,
String key,
String def)
getData method is a twin sister (brother?) of
setData(String, String, String) method. |
String[] |
getDataGroups(String subnode)
This method retrieves list of all direct subnodes for given node.
|
String[] |
getDataKeys(String subnode)
This method returns all data keys available in permanent storage in given
node.
|
String[] |
getDataList(String subnode,
String key)
This method allows to retrieve list of values associated with one key.
|
VHostItem |
getDomain()
Method description
|
tigase.xmpp.JID |
getDomainAsJID()
Method description
|
String |
getOfflineData(String subnode,
String key,
String def)
Method description
|
String[] |
getOfflineDataList(String subnode,
String key)
Method description
|
String |
getPublicData(String subnode,
String key,
String def)
Method description
|
String[] |
getPublicDataList(String subnode,
String key)
Method description
|
abstract String |
getUserName()
Method description
|
boolean |
isAnonymous()
Method description
|
boolean |
isAuthorized()
This method allows you test this session if it already has been authorized.
|
protected abstract void |
login()
Method description
|
Authorization |
loginDigest(tigase.xmpp.BareJID userId,
String digest,
String id,
String alg)
Deprecated.
|
Authorization |
loginOther(Map<String,Object> props)
Deprecated.
|
Authorization |
loginPlain(tigase.xmpp.BareJID userId,
String password)
Deprecated.
|
Authorization |
loginToken(tigase.xmpp.BareJID userId,
String xmpp_sessionId,
String token)
Deprecated.
|
void |
logout()
Method description
|
void |
queryAuth(Map<String,Object> authProps)
Method description
|
Authorization |
register(String name_param,
String pass_param,
Map<String,String> reg_params)
Method description
|
Authorization |
register(String name_param,
String pass_param,
String email_param)
Deprecated.
|
void |
removeData(String subnode,
String key)
Method description
|
void |
removeDataGroup(String subnode)
Removes the last data node given in subnode path as parameter to this
method.
|
void |
removeOfflineData(String subnode,
String key)
Method description
|
void |
removeOfflineDataGroup(String subnode)
Method description
|
void |
removePublicData(String subnode,
String key)
Method description
|
void |
removePublicDataGroup(String subnode)
Method description
|
void |
setData(String subnode,
String key,
String value)
This method stores given data in permanent storage in given point of
hierarchy of data base.
|
void |
setDataList(String subnode,
String key,
String[] list)
This method allows to store list of values under one key ID reference.
|
void |
setDomain(VHostItem domain)
Method description
|
void |
setOfflineData(String subnode,
String key,
String value)
Method description
|
void |
setOfflineDataList(String subnode,
String key,
String[] list)
Method description
|
void |
setPublicData(String subnode,
String key,
String value)
Method description
|
void |
setPublicDataList(String subnode,
String key,
String[] list)
Method description
|
Authorization |
unregister(String name_param)
Method description
|
protected static final String NO_ACCESS_TO_REP_MSG
protected static final String NOT_AUTHORIZED_MSG
protected AuthRepository authRepo
protected VHostItem domain
protected boolean is_anonymous
protected Authorization authState
NOT_AUTHORIZED. It becomes AUTHORIZEDpublic RepositoryAccess(UserRepository rep, AuthRepository auth)
RepositoryAccess instance.rep - auth - public void addDataList(String subnode, String key, String[] list) throws NotAuthorizedException, TigaseDBException
subnode - key - list - NotAuthorizedExceptionTigaseDBExceptionpublic void addOfflineDataList(String subnode, String key, String[] list) throws NotAuthorizedException, TigaseDBException
subnode - key - list - NotAuthorizedExceptionTigaseDBExceptionpublic void addPublicDataList(String subnode, String key, String[] list) throws NotAuthorizedException, TigaseDBException
subnode - key - list - NotAuthorizedExceptionTigaseDBException@Deprecated public Authorization loginDigest(tigase.xmpp.BareJID userId, String digest, String id, String alg) throws NotAuthorizedException, AuthorizationException, TigaseDBException
userId - digest - id - alg - AuthorizationAuthorizationExceptionNotAuthorizedExceptionTigaseDBException@Deprecated public Authorization loginOther(Map<String,Object> props) throws NotAuthorizedException, AuthorizationException, TigaseDBException
props - AuthorizationAuthorizationExceptionNotAuthorizedExceptionTigaseDBException@Deprecated public Authorization loginPlain(tigase.xmpp.BareJID userId, String password) throws NotAuthorizedException, AuthorizationException, TigaseDBException
authorize method performs authorization with given password as
plain text. If AUTHORIZED has been returned it means
authorization process is successful and session has been activated,
otherwise session hasn't been authorized and return code gives more
detailed information of fail reason. Please refer to
Authorization documentation for more details.userId - password - Authorization value of result code.NotAuthorizedExceptionAuthorizationExceptionTigaseDBException@Deprecated public Authorization loginToken(tigase.xmpp.BareJID userId, String xmpp_sessionId, String token) throws NotAuthorizedException, AuthorizationException, TigaseDBException
userId - xmpp_sessionId - token - AuthorizationAuthorizationExceptionNotAuthorizedExceptionTigaseDBExceptionpublic void logout()
throws NotAuthorizedException
NotAuthorizedExceptionpublic void queryAuth(Map<String,Object> authProps) throws TigaseDBException
authProps - TigaseDBException@Deprecated public Authorization register(String name_param, String pass_param, String email_param) throws NotAuthorizedException, TigaseDBException, tigase.util.TigaseStringprepException
name_param - pass_param - email_param - AuthorizationNotAuthorizedExceptionTigaseDBExceptiontigase.util.TigaseStringprepExceptionpublic Authorization register(String name_param, String pass_param, Map<String,String> reg_params) throws NotAuthorizedException, TigaseDBException, tigase.util.TigaseStringprepException
name_param - pass_param - reg_params - AuthorizationNotAuthorizedExceptionTigaseDBExceptiontigase.util.TigaseStringprepExceptionpublic void removeData(String subnode, String key) throws NotAuthorizedException, TigaseDBException
subnode - key - NotAuthorizedExceptionTigaseDBExceptionpublic void removeDataGroup(String subnode) throws NotAuthorizedException, TigaseDBException
(key, val) are removed as well. Changes are commited to
repository immediatelly and there is no way to undo this operation so use
it with care.subnode - a String value of path to node which has to be
removed.NotAuthorizedException - is thrown when session has not been authorized yet and there
is no access to permanent storage.TigaseDBExceptionsetData(String, String, String)public void removeOfflineData(String subnode, String key) throws NotAuthorizedException, TigaseDBException
subnode - key - NotAuthorizedExceptionTigaseDBExceptionpublic void removeOfflineDataGroup(String subnode) throws NotAuthorizedException, TigaseDBException
subnode - NotAuthorizedExceptionTigaseDBExceptionpublic void removePublicData(String subnode, String key) throws NotAuthorizedException, TigaseDBException
subnode - key - NotAuthorizedExceptionTigaseDBExceptionpublic void removePublicDataGroup(String subnode) throws NotAuthorizedException, TigaseDBException
subnode - NotAuthorizedExceptionTigaseDBExceptionpublic Authorization unregister(String name_param) throws NotAuthorizedException, TigaseDBException, tigase.util.TigaseStringprepException
name_param - AuthorizationNotAuthorizedExceptionTigaseDBExceptiontigase.util.TigaseStringprepExceptionpublic String getAuthenticationToken(String xmpp_sessionId) throws NotAuthorizedException, TigaseDBException
xmpp_sessionId - StringNotAuthorizedExceptionTigaseDBExceptionpublic final Authorization getAuthState()
public abstract tigase.xmpp.BareJID getBareJID()
throws NotAuthorizedException
getJID() method.NotAuthorizedException.String value of user ID - this is user JID without
resource part. To obtain full user JID please refer to
getJID method.NotAuthorizedException - when this session has not been authorized
yet and some parts of user JID are not
known yet.public String getData(String subnode, String key, String def) throws NotAuthorizedException, TigaseDBException
getData method is a twin sister (brother?) of
setData(String, String, String) method. It allows you to
retrieve data stored with above method. It is data stored in given node
with given key identifier. If there are no data associated with given key
or given node does not exist given def value is returned.subnode - a String value is path to node where pair
(key, value) are stored.key - a String value of key ID for data to retrieve.def - a String value of default returned if there is
nothing stored with given key. def can be set to any
value you wish to have back as default value or null
if you want to have back null if no data was found.
If you set def to null it has exactly
the same effect as if you use getData(String) method.String value of data found for given key or
def if there was no data associated with given key.NotAuthorizedException - is thrown when session has not been authorized yet and there
is no access to permanent storage.TigaseDBExceptionsetData(String, String, String)public String[] getDataGroups(String subnode) throws NotAuthorizedException, TigaseDBException
ls unix command or dir under
DOS/Windows systems.subnode - a String value of path to node for which we want to
retrieve list of direct subnodes.String[] array of direct subnodes names for given
node.NotAuthorizedException - is thrown when session has not been authorized yet and there
is no access to permanent storage.TigaseDBExceptionsetData(String, String, String)public String[] getDataKeys(String subnode) throws NotAuthorizedException, TigaseDBException
subnode - a String value pointing to specific subnode in user
reposiotry where data have to be stored.String[] array containing all data keys found in
given subnode.NotAuthorizedException - is thrown when session has not been authorized yet and there
is no access to permanent storage.TigaseDBExceptionsetData(String, String, String)public String[] getDataList(String subnode, String key) throws NotAuthorizedException, TigaseDBException
null is returned.subnode - a String value pointing to specific subnode in user
reposiotry where data have to be stored.key - a String value of data key ID.String[] array containing all values found for given
key.NotAuthorizedException - is thrown when session has not been authorized yet and there
is no access to permanent storage.TigaseDBExceptionsetData(String, String, String)public VHostItem getDomain()
VHostItempublic tigase.xmpp.JID getDomainAsJID()
JIDpublic String getOfflineData(String subnode, String key, String def) throws NotAuthorizedException, TigaseDBException
subnode - key - def - StringNotAuthorizedExceptionTigaseDBExceptionpublic String[] getOfflineDataList(String subnode, String key) throws NotAuthorizedException, TigaseDBException
subnode - key - String[]NotAuthorizedExceptionTigaseDBExceptionpublic String getPublicData(String subnode, String key, String def) throws NotAuthorizedException, TigaseDBException
subnode - key - def - StringNotAuthorizedExceptionTigaseDBExceptionpublic String[] getPublicDataList(String subnode, String key) throws NotAuthorizedException, TigaseDBException
subnode - key - String[]NotAuthorizedExceptionTigaseDBExceptionpublic abstract String getUserName() throws NotAuthorizedException
StringNotAuthorizedExceptionpublic boolean isAnonymous()
booleanpublic boolean isAuthorized()
true is returned as method result it means session has
already been authorized, if false however session is still not
authorized.boolean value which informs whether this session has
been already authorized or not.public void setData(String subnode, String key, String value) throws NotAuthorizedException, TigaseDBException
setData(String, String) and differs in one additional
parameter which point to user data base subnode where data must be stored.
It helps to organize user data in more logical hierarchy.UserRepository
interface for general info and to XMLRepository for detailed
explanation regarding XML implementation of user repository.
subnode is kind of path to data node. If you specify
null or empty node data will be stored in root user node. This
has exactly the same effect as you call
setData(String, String). If you want to store data in
different node you must just specify node path like you do it to directory
on most file systems:
/rosterOr, if you need access deeper node:
/just/like/path/to/file
removeDataGroup(String) for deleting specified node as nodes
are not automaticaly deleted.subnode - a String value pointing to specific subnode in user
reposiotry where data have to be stored.key - a String value of data key ID.value - a String actual data stored in user repository.NotAuthorizedException - is thrown when session has not been authorized yet and there
is no access to permanent storage.TigaseDBExceptionremoveDataGroup(String),
UserRepositorypublic void setDataList(String subnode, String key, String[] list) throws NotAuthorizedException, TigaseDBException
subnode - a String value pointing to specific subnode in user
reposiotry where data have to be stored.key - a String value of data key ID.list - a String[] keeping list of actual data to be stored
in user repository.NotAuthorizedException - is thrown when session has not been authorized yet and there
is no access to permanent storage.TigaseDBExceptionsetData(String, String, String)public void setDomain(VHostItem domain) throws tigase.util.TigaseStringprepException
domain - tigase.util.TigaseStringprepExceptionpublic void setOfflineData(String subnode, String key, String value) throws NotAuthorizedException, TigaseDBException
subnode - key - value - NotAuthorizedExceptionTigaseDBExceptionpublic void setOfflineDataList(String subnode, String key, String[] list) throws NotAuthorizedException, TigaseDBException
subnode - key - list - NotAuthorizedExceptionTigaseDBExceptionpublic void setPublicData(String subnode, String key, String value) throws NotAuthorizedException, TigaseDBException
subnode - key - value - NotAuthorizedExceptionTigaseDBExceptionpublic void setPublicDataList(String subnode, String key, String[] list) throws NotAuthorizedException, TigaseDBException
subnode - key - list - NotAuthorizedExceptionTigaseDBExceptionprotected abstract void login()
Copyright © 2016 "Tigase, Inc.". All rights reserved.