public class ShClientSessionImpl extends ShSession implements ClientShSession, EventListener<Request,Answer>, NetworkReqListener
| Modifier and Type | Field and Description |
|---|---|
protected IShMessageFactory |
factory |
protected ClientShSessionListener |
listener |
protected Lock |
sendAndStateLock |
protected IShClientSessionData |
sessionData |
stateListenersappSessionData, scheduler, session, sessions, sf, timerFacility| Constructor and Description |
|---|
ShClientSessionImpl(IShClientSessionData sessionData,
IShMessageFactory fct,
ISessionFactory sf,
ClientShSessionListener lst) |
| Modifier and Type | Method and Description |
|---|---|
<E> E |
getState(Class<E> stateType) |
boolean |
handleEvent(StateEvent event) |
boolean |
isReplicable() |
boolean |
isStateless() |
void |
onTimer(String timerName) |
Answer |
processRequest(Request request) |
void |
receivedSuccessMessage(Request request,
Answer answer) |
void |
release() |
protected void |
send(org.jdiameter.client.impl.app.sh.Event.Type type,
AppEvent request,
AppEvent answer) |
void |
sendProfileUpdateRequest(ProfileUpdateRequest request) |
void |
sendPushNotificationAnswer(PushNotificationAnswer answer) |
void |
sendSubscribeNotificationsRequest(SubscribeNotificationsRequest request) |
void |
sendUserDataRequest(UserDataRequest request) |
void |
timeoutExpired(Request request) |
addStateChangeNotification, removeStateChangeNotificationequals, getCreationTime, getLastAccessedTime, getSessionAppId, getSessionId, getSessions, hashCode, isAppSession, isValidclone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitgetSessionAppId, getSessionsgetCreationTime, getLastAccessedTime, getSessionId, isAppSession, isValidaddStateChangeNotification, removeStateChangeNotificationprotected Lock sendAndStateLock
protected transient IShMessageFactory factory
protected transient ClientShSessionListener listener
protected IShClientSessionData sessionData
public ShClientSessionImpl(IShClientSessionData sessionData, IShMessageFactory fct, ISessionFactory sf, ClientShSessionListener lst)
public Answer processRequest(Request request)
processRequest in interface NetworkReqListenerpublic <E> E getState(Class<E> stateType)
getState in interface StateMachinepublic boolean handleEvent(StateEvent event) throws InternalException, OverloadException
handleEvent in interface StateMachineInternalExceptionOverloadExceptionpublic void sendProfileUpdateRequest(ProfileUpdateRequest request) throws InternalException, IllegalDiameterStateException, RouteException, OverloadException
sendProfileUpdateRequest in interface ClientShSessionInternalExceptionIllegalDiameterStateExceptionRouteExceptionOverloadExceptionpublic void sendPushNotificationAnswer(PushNotificationAnswer answer) throws InternalException, IllegalDiameterStateException, RouteException, OverloadException
sendPushNotificationAnswer in interface ClientShSessionInternalExceptionIllegalDiameterStateExceptionRouteExceptionOverloadExceptionpublic void sendSubscribeNotificationsRequest(SubscribeNotificationsRequest request) throws InternalException, IllegalDiameterStateException, RouteException, OverloadException
sendSubscribeNotificationsRequest in interface ClientShSessionInternalExceptionIllegalDiameterStateExceptionRouteExceptionOverloadExceptionpublic void sendUserDataRequest(UserDataRequest request) throws InternalException, IllegalDiameterStateException, RouteException, OverloadException
sendUserDataRequest in interface ClientShSessionInternalExceptionIllegalDiameterStateExceptionRouteExceptionOverloadExceptionprotected void send(org.jdiameter.client.impl.app.sh.Event.Type type,
AppEvent request,
AppEvent answer)
throws InternalException
InternalExceptionpublic void receivedSuccessMessage(Request request, Answer answer)
receivedSuccessMessage in interface EventListener<Request,Answer>public void timeoutExpired(Request request)
timeoutExpired in interface EventListener<Request,Answer>public void release()
release in interface BaseSessionrelease in class ShSessionpublic boolean isStateless()
isStateless in interface AppSessionpublic boolean isReplicable()
isReplicable in interface BaseSessionisReplicable in class AppSessionImplpublic void onTimer(String timerName)
onTimer in class AppSessionImplCopyright © 2016. All Rights Reserved.