tigase.db
Interface UserAuthRepository

All Known Implementing Classes:
DrupalAuth, JDBCRepository, LibreSourceAuth, UserAuthRepositoryImpl, XMLRepository

public interface UserAuthRepository

Describe interface UserAuthRepository here. Created: Sun Nov 5 21:15:46 2006

Version:
$Rev: 853 $
Author:
Artur Hefczyc

Field Summary
static java.lang.String DATA_KEY
           
static java.lang.String MACHANISM_KEY
           
static java.lang.String PROTOCOL_KEY
           
static java.lang.String PROTOCOL_VAL_NONSASL
           
static java.lang.String PROTOCOL_VAL_SASL
           
static java.lang.String REALM_KEY
           
static java.lang.String RESULT_KEY
           
static java.lang.String SERVER_NAME_KEY
           
static java.lang.String USER_ID_KEY
           
 
Method Summary
 void addUser(java.lang.String user, java.lang.String password)
          Describe addUser method here.
 boolean digestAuth(java.lang.String user, java.lang.String digest, java.lang.String id, java.lang.String alg)
          plainAuth method performs non-sasl, digest authentication as described in non-sasl authentication XEP-0078 For now it is empty and always returns false as I don't have description for database with passwords.
 java.lang.String getResourceUri()
          getResourceUri method returns database connection string.
 void initRepository(java.lang.String resource_uri, java.util.Map<java.lang.String,java.lang.String> params)
          initRepository method is doing initialization for database connection.
 void logout(java.lang.String user)
          Describe logout method here.
 boolean otherAuth(java.util.Map<java.lang.String,java.lang.Object> authProps)
          Describe otherAuth method here.
 boolean plainAuth(java.lang.String user, java.lang.String password)
          plainAuth method performs non-sasl, plain authentication as described in non-sasl authentication XEP-0078.
 void queryAuth(java.util.Map<java.lang.String,java.lang.Object> authProps)
          queryAuth returns mechanisms available for authentication.
 void removeUser(java.lang.String user)
          Describe removeUser method here.
 void updatePassword(java.lang.String user, java.lang.String password)
          Describe updatePassword method here.
 

Field Detail

PROTOCOL_KEY

static final java.lang.String PROTOCOL_KEY
See Also:
Constant Field Values

PROTOCOL_VAL_SASL

static final java.lang.String PROTOCOL_VAL_SASL
See Also:
Constant Field Values

PROTOCOL_VAL_NONSASL

static final java.lang.String PROTOCOL_VAL_NONSASL
See Also:
Constant Field Values

RESULT_KEY

static final java.lang.String RESULT_KEY
See Also:
Constant Field Values

MACHANISM_KEY

static final java.lang.String MACHANISM_KEY
See Also:
Constant Field Values

REALM_KEY

static final java.lang.String REALM_KEY
See Also:
Constant Field Values

SERVER_NAME_KEY

static final java.lang.String SERVER_NAME_KEY
See Also:
Constant Field Values

DATA_KEY

static final java.lang.String DATA_KEY
See Also:
Constant Field Values

USER_ID_KEY

static final java.lang.String USER_ID_KEY
See Also:
Constant Field Values
Method Detail

queryAuth

void queryAuth(java.util.Map<java.lang.String,java.lang.Object> authProps)
queryAuth returns mechanisms available for authentication.

Parameters:
authProps - a Map value with parameters for authentication.

initRepository

void initRepository(java.lang.String resource_uri,
                    java.util.Map<java.lang.String,java.lang.String> params)
                    throws DBInitException
initRepository method is doing initialization for database connection. It may also do lazy initialization with database. Connection to database might be established during the first authentication request.

Parameters:
conn_str - a String value of database connection string. The string must also contain database user name and password if required for connection.
Throws:
DBInitException - if an error occurs during access database. It won't happen however as in this method we do simple variable assigment.

getResourceUri

java.lang.String getResourceUri()
getResourceUri method returns database connection string.

Returns:
a String value of database connection string.

plainAuth

boolean plainAuth(java.lang.String user,
                  java.lang.String password)
                  throws UserNotFoundException,
                         TigaseDBException,
                         AuthorizationException
plainAuth method performs non-sasl, plain authentication as described in non-sasl authentication XEP-0078.

Parameters:
user - a String value of user name
password - a String value of plain user password.
Returns:
a boolean value true on successful authentication, false on authentication failure.
Throws:
UserNotFoundException - if an given user name is not found in the authentication repository.
TigaseDBException - if an error occurs during during accessing database;
AuthorizationException - if an error occurs during authentication process.

digestAuth

boolean digestAuth(java.lang.String user,
                   java.lang.String digest,
                   java.lang.String id,
                   java.lang.String alg)
                   throws UserNotFoundException,
                          TigaseDBException,
                          AuthorizationException
plainAuth method performs non-sasl, digest authentication as described in non-sasl authentication XEP-0078 For now it is empty and always returns false as I don't have description for database with passwords.

Parameters:
user - a String value of user name
digest - a String value password digest sum
id - a String value session ID used for digest sum calculation.
alg - a String value of algorithm ID used for digest sum calculation.
Returns:
a boolean value true on successful authentication, false on authentication failure.
Throws:
UserNotFoundException - if an given user name is not found in the authentication repository.
TigaseDBException - if an error occurs during during accessing database;
AuthorizationException - if an error occurs during authentication process.

otherAuth

boolean otherAuth(java.util.Map<java.lang.String,java.lang.Object> authProps)
                  throws UserNotFoundException,
                         TigaseDBException,
                         AuthorizationException
Describe otherAuth method here.

Parameters:
props - a Map value
Returns:
a boolean value
Throws:
UserNotFoundException - if an error occurs
TigaseDBException - if an error occurs
AuthorizationException - if an error occurs

addUser

void addUser(java.lang.String user,
             java.lang.String password)
             throws UserExistsException,
                    TigaseDBException
Describe addUser method here.

Parameters:
user - a String value
password - a String value
Throws:
UserExistsException - if an error occurs
TigaseDBException - if an error occurs

updatePassword

void updatePassword(java.lang.String user,
                    java.lang.String password)
                    throws TigaseDBException
Describe updatePassword method here.

Parameters:
user - a String value
password - a String value
Throws:
TigaseDBException - if an error occurs

removeUser

void removeUser(java.lang.String user)
                throws UserNotFoundException,
                       TigaseDBException
Describe removeUser method here.

Parameters:
user - a String value
Throws:
UserNotFoundException - if an error occurs
TigaseDBException - if an error occurs

logout

void logout(java.lang.String user)
            throws UserNotFoundException,
                   TigaseDBException
Describe logout method here.

Parameters:
user - a String value
Throws:
UserNotFoundException - if an error occurs
TigaseDBException - if an error occurs


Copyright © 2008 Tigase. All Rights Reserved.