org.jdiameter.client.impl.app.auth
Class ClientAuthSessionImpl

java.lang.Object
  extended by org.jdiameter.common.impl.app.AppSessionImpl
      extended by org.jdiameter.common.impl.app.auth.AppAuthSessionImpl
          extended by org.jdiameter.client.impl.app.auth.ClientAuthSessionImpl
All Implemented Interfaces:
java.io.Serializable, org.jdiameter.api.app.AppSession, org.jdiameter.api.app.StateMachine, org.jdiameter.api.auth.ClientAuthSession, org.jdiameter.api.EventListener<org.jdiameter.api.Request,org.jdiameter.api.Answer>, org.jdiameter.api.NetworkReqListener

public class ClientAuthSessionImpl
extends AppAuthSessionImpl
implements org.jdiameter.api.auth.ClientAuthSession, org.jdiameter.api.EventListener<org.jdiameter.api.Request,org.jdiameter.api.Answer>, org.jdiameter.api.NetworkReqListener

See Also:
Serialized Form

Field Summary
protected  org.jdiameter.api.app.AppEvent buffer
           
protected  IClientAuthActionContext context
           
protected  java.lang.String destHost
           
protected  java.lang.String destRealm
           
protected  IAuthMessageFactory factory
           
protected  java.util.concurrent.ScheduledFuture fsf
           
protected  org.jdiameter.api.auth.ClientAuthSessionListener listener
           
protected static org.apache.log4j.Logger logger
           
protected  ClientAuthSessionState state
           
protected  boolean stateless
           
 
Fields inherited from class org.jdiameter.common.impl.app.auth.AppAuthSessionImpl
scheduler, stateListeners
 
Fields inherited from class org.jdiameter.common.impl.app.AppSessionImpl
appId, session
 
Constructor Summary
ClientAuthSessionImpl(boolean stl, IAuthMessageFactory fct, org.jdiameter.api.SessionFactory sf, org.jdiameter.api.auth.ClientAuthSessionListener lst)
           
ClientAuthSessionImpl(boolean stl, java.lang.String sessionId, IAuthMessageFactory fct, org.jdiameter.api.SessionFactory sf, org.jdiameter.api.auth.ClientAuthSessionListener lst)
           
 
Method Summary
protected  org.jdiameter.api.auth.events.AbortSessionAnswer createAbortSessionAnswer(org.jdiameter.api.Answer answer)
           
protected  org.jdiameter.api.auth.events.AbortSessionRequest createAbortSessionRequest(org.jdiameter.api.Request request)
           
protected  org.jdiameter.api.auth.events.ReAuthAnswer createReAuthAnswer(org.jdiameter.api.Answer answer)
           
protected  org.jdiameter.api.auth.events.ReAuthRequest createReAuthRequest(org.jdiameter.api.Request request)
           
protected  org.jdiameter.api.auth.events.SessionTermAnswer createSessionTermAnswer(org.jdiameter.api.Answer answer)
           
protected  org.jdiameter.api.Request createSessionTermRequest()
           
protected  org.jdiameter.api.auth.events.SessionTermRequest createSessionTermRequest(org.jdiameter.api.Request request)
           
<E> E
getState(java.lang.Class<E> eClass)
           
 boolean handleEvent(org.jdiameter.api.app.StateEvent event)
           
 boolean handleEventForStatefullSession(org.jdiameter.api.app.StateEvent event)
           
 boolean handleEventForStatelessSession(org.jdiameter.api.app.StateEvent event)
           
 boolean isStateless()
           
 org.jdiameter.api.Answer processRequest(org.jdiameter.api.Request request)
           
 void receivedSuccessMessage(org.jdiameter.api.Request request, org.jdiameter.api.Answer answer)
           
protected  void send(org.jdiameter.client.impl.app.auth.Event.Type type, org.jdiameter.api.app.AppEvent event)
           
 void sendAbortSessionAnswer(org.jdiameter.api.auth.events.AbortSessionAnswer answer)
           
 void sendAuthRequest(org.jdiameter.api.app.AppRequestEvent request)
           
 void sendReAuthAnswer(org.jdiameter.api.auth.events.ReAuthAnswer answer)
           
 void sendSessionTerminationRequest(org.jdiameter.api.auth.events.SessionTermRequest request)
           
protected  void setState(ClientAuthSessionState newState)
           
 void timeoutExpired(org.jdiameter.api.Request request)
           
 
Methods inherited from class org.jdiameter.common.impl.app.auth.AppAuthSessionImpl
addStateChangeNotification, release, removeStateChangeNotification
 
Methods inherited from class org.jdiameter.common.impl.app.AppSessionImpl
getCreationTime, getLastAccessedTime, getSessionAppId, getSessions, isValid
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.jdiameter.api.app.AppSession
getCreationTime, getLastAccessedTime, getSessionAppId, getSessions, isValid, release
 
Methods inherited from interface org.jdiameter.api.app.StateMachine
addStateChangeNotification, removeStateChangeNotification
 

Field Detail

logger

protected static final org.apache.log4j.Logger logger

state

protected ClientAuthSessionState state

stateless

protected boolean stateless

factory

protected IAuthMessageFactory factory

destHost

protected java.lang.String destHost

destRealm

protected java.lang.String destRealm

context

protected IClientAuthActionContext context

buffer

protected org.jdiameter.api.app.AppEvent buffer

listener

protected org.jdiameter.api.auth.ClientAuthSessionListener listener

fsf

protected java.util.concurrent.ScheduledFuture fsf
Constructor Detail

ClientAuthSessionImpl

public ClientAuthSessionImpl(boolean stl,
                             IAuthMessageFactory fct,
                             org.jdiameter.api.SessionFactory sf,
                             org.jdiameter.api.auth.ClientAuthSessionListener lst)

ClientAuthSessionImpl

public ClientAuthSessionImpl(boolean stl,
                             java.lang.String sessionId,
                             IAuthMessageFactory fct,
                             org.jdiameter.api.SessionFactory sf,
                             org.jdiameter.api.auth.ClientAuthSessionListener lst)
Method Detail

sendAbortSessionAnswer

public void sendAbortSessionAnswer(org.jdiameter.api.auth.events.AbortSessionAnswer answer)
                            throws org.jdiameter.api.InternalException,
                                   org.jdiameter.api.IllegalDiameterStateException,
                                   org.jdiameter.api.RouteException,
                                   org.jdiameter.api.OverloadException
Specified by:
sendAbortSessionAnswer in interface org.jdiameter.api.auth.ClientAuthSession
Throws:
org.jdiameter.api.InternalException
org.jdiameter.api.IllegalDiameterStateException
org.jdiameter.api.RouteException
org.jdiameter.api.OverloadException

sendAuthRequest

public void sendAuthRequest(org.jdiameter.api.app.AppRequestEvent request)
                     throws org.jdiameter.api.InternalException,
                            org.jdiameter.api.IllegalDiameterStateException,
                            org.jdiameter.api.RouteException,
                            org.jdiameter.api.OverloadException
Specified by:
sendAuthRequest in interface org.jdiameter.api.auth.ClientAuthSession
Throws:
org.jdiameter.api.InternalException
org.jdiameter.api.IllegalDiameterStateException
org.jdiameter.api.RouteException
org.jdiameter.api.OverloadException

sendReAuthAnswer

public void sendReAuthAnswer(org.jdiameter.api.auth.events.ReAuthAnswer answer)
                      throws org.jdiameter.api.InternalException,
                             org.jdiameter.api.IllegalDiameterStateException,
                             org.jdiameter.api.RouteException,
                             org.jdiameter.api.OverloadException
Specified by:
sendReAuthAnswer in interface org.jdiameter.api.auth.ClientAuthSession
Throws:
org.jdiameter.api.InternalException
org.jdiameter.api.IllegalDiameterStateException
org.jdiameter.api.RouteException
org.jdiameter.api.OverloadException

sendSessionTerminationRequest

public void sendSessionTerminationRequest(org.jdiameter.api.auth.events.SessionTermRequest request)
                                   throws org.jdiameter.api.InternalException,
                                          org.jdiameter.api.IllegalDiameterStateException,
                                          org.jdiameter.api.RouteException,
                                          org.jdiameter.api.OverloadException
Specified by:
sendSessionTerminationRequest in interface org.jdiameter.api.auth.ClientAuthSession
Throws:
org.jdiameter.api.InternalException
org.jdiameter.api.IllegalDiameterStateException
org.jdiameter.api.RouteException
org.jdiameter.api.OverloadException

send

protected void send(org.jdiameter.client.impl.app.auth.Event.Type type,
                    org.jdiameter.api.app.AppEvent event)
             throws org.jdiameter.api.InternalException
Throws:
org.jdiameter.api.InternalException

isStateless

public boolean isStateless()
Specified by:
isStateless in interface org.jdiameter.api.app.AppSession

setState

protected void setState(ClientAuthSessionState newState)

getState

public <E> E getState(java.lang.Class<E> eClass)
Specified by:
getState in interface org.jdiameter.api.app.StateMachine

handleEvent

public boolean handleEvent(org.jdiameter.api.app.StateEvent event)
                    throws org.jdiameter.api.InternalException,
                           org.jdiameter.api.OverloadException
Specified by:
handleEvent in interface org.jdiameter.api.app.StateMachine
Throws:
org.jdiameter.api.InternalException
org.jdiameter.api.OverloadException

handleEventForStatelessSession

public boolean handleEventForStatelessSession(org.jdiameter.api.app.StateEvent event)
                                       throws org.jdiameter.api.InternalException,
                                              org.jdiameter.api.OverloadException
Throws:
org.jdiameter.api.InternalException
org.jdiameter.api.OverloadException

handleEventForStatefullSession

public boolean handleEventForStatefullSession(org.jdiameter.api.app.StateEvent event)
                                       throws org.jdiameter.api.InternalException,
                                              org.jdiameter.api.OverloadException
Throws:
org.jdiameter.api.InternalException
org.jdiameter.api.OverloadException

receivedSuccessMessage

public void receivedSuccessMessage(org.jdiameter.api.Request request,
                                   org.jdiameter.api.Answer answer)
Specified by:
receivedSuccessMessage in interface org.jdiameter.api.EventListener<org.jdiameter.api.Request,org.jdiameter.api.Answer>

timeoutExpired

public void timeoutExpired(org.jdiameter.api.Request request)
Specified by:
timeoutExpired in interface org.jdiameter.api.EventListener<org.jdiameter.api.Request,org.jdiameter.api.Answer>

processRequest

public org.jdiameter.api.Answer processRequest(org.jdiameter.api.Request request)
Specified by:
processRequest in interface org.jdiameter.api.NetworkReqListener

createAbortSessionAnswer

protected org.jdiameter.api.auth.events.AbortSessionAnswer createAbortSessionAnswer(org.jdiameter.api.Answer answer)

createAbortSessionRequest

protected org.jdiameter.api.auth.events.AbortSessionRequest createAbortSessionRequest(org.jdiameter.api.Request request)

createReAuthAnswer

protected org.jdiameter.api.auth.events.ReAuthAnswer createReAuthAnswer(org.jdiameter.api.Answer answer)

createReAuthRequest

protected org.jdiameter.api.auth.events.ReAuthRequest createReAuthRequest(org.jdiameter.api.Request request)

createSessionTermAnswer

protected org.jdiameter.api.auth.events.SessionTermAnswer createSessionTermAnswer(org.jdiameter.api.Answer answer)

createSessionTermRequest

protected org.jdiameter.api.auth.events.SessionTermRequest createSessionTermRequest(org.jdiameter.api.Request request)

createSessionTermRequest

protected org.jdiameter.api.Request createSessionTermRequest()


Copyright © 2008. All Rights Reserved.