org.jdiameter.common.impl.app.cxdx
Class CxDxSession

java.lang.Object
  extended by org.jdiameter.common.impl.app.AppSessionImpl
      extended by org.jdiameter.common.impl.app.cxdx.CxDxSession
All Implemented Interfaces:
java.io.Serializable, AppSession, StateMachine, BaseSession, NetworkReqListener
Direct Known Subclasses:
CxDxClientSessionImpl, CxDxServerSessionImpl

public abstract class CxDxSession
extends AppSessionImpl
implements NetworkReqListener, StateMachine

Start time:15:18:44 2009-08-17
Project: diameter-parent

Author:
Bartosz Baranowski , Alexandre Mendonca
See Also:
Serialized Form

Field Summary
static int _TX_TIMEOUT
           
protected  Message buffer
           
protected  ICxDxMessageFactory messageFactory
           
protected  java.util.concurrent.locks.Lock sendAndStateLock
           
protected  CxDxSessionState state
           
protected  java.util.List<StateChangeListener> stateListeners
           
protected static java.lang.String TIMER_NAME_MSG_TIMEOUT
           
protected  java.io.Serializable timerId_timeout
           
 
Fields inherited from class org.jdiameter.common.impl.app.AppSessionImpl
appId, scheduler, session, sessionDataSource, sessionId, sf, timerFacility
 
Constructor Summary
CxDxSession(SessionFactory sf, java.lang.String sessionId)
           
 
Method Summary
 void addStateChangeNotification(StateChangeListener listener)
           
protected  void cancelMsgTimer()
           
 boolean equals(java.lang.Object obj)
           
 int hashCode()
           
 boolean isReplicable()
           
 boolean isStateless()
           
 void relink(IContainer stack)
           
 void removeStateChangeNotification(StateChangeListener listener)
           
protected  void startMsgTimer()
           
 
Methods inherited from class org.jdiameter.common.impl.app.AppSessionImpl
getCreationTime, getLastAccessedTime, getSessionAppId, getSessionId, getSessions, isAppSession, isValid, onTimer, release
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.jdiameter.api.NetworkReqListener
processRequest
 
Methods inherited from interface org.jdiameter.api.app.StateMachine
getState, handleEvent
 

Field Detail

_TX_TIMEOUT

public static final int _TX_TIMEOUT
See Also:
Constant Field Values

sendAndStateLock

protected java.util.concurrent.locks.Lock sendAndStateLock

stateListeners

protected transient java.util.List<StateChangeListener> stateListeners

messageFactory

protected transient ICxDxMessageFactory messageFactory

state

protected CxDxSessionState state

timerId_timeout

protected java.io.Serializable timerId_timeout

TIMER_NAME_MSG_TIMEOUT

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

buffer

protected Message buffer
Constructor Detail

CxDxSession

public CxDxSession(SessionFactory sf,
                   java.lang.String sessionId)
Method Detail

addStateChangeNotification

public void addStateChangeNotification(StateChangeListener listener)
Specified by:
addStateChangeNotification in interface StateMachine

removeStateChangeNotification

public void removeStateChangeNotification(StateChangeListener listener)
Specified by:
removeStateChangeNotification in interface StateMachine

isStateless

public boolean isStateless()
Specified by:
isStateless in interface AppSession

isReplicable

public boolean isReplicable()
Specified by:
isReplicable in interface BaseSession
Overrides:
isReplicable in class AppSessionImpl

startMsgTimer

protected void startMsgTimer()

cancelMsgTimer

protected void cancelMsgTimer()

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

equals

public boolean equals(java.lang.Object obj)
Overrides:
equals in class java.lang.Object

relink

public void relink(IContainer stack)
Overrides:
relink in class AppSessionImpl


Copyright © 2010. All Rights Reserved.