org.mobicents.slee.resource.diameter.sh.server
Class ShServerSubscriptionActivityImpl

java.lang.Object
  extended by org.mobicents.slee.resource.diameter.base.DiameterActivityImpl
      extended by org.mobicents.slee.resource.diameter.sh.server.ShServerSubscriptionActivityImpl
All Implemented Interfaces:
java.io.Serializable, net.java.slee.resource.diameter.base.DiameterActivity, ShServerSubscriptionActivity, org.jdiameter.api.app.StateChangeListener<org.jdiameter.api.app.AppSession>

public class ShServerSubscriptionActivityImpl
extends org.mobicents.slee.resource.diameter.base.DiameterActivityImpl
implements ShServerSubscriptionActivity, org.jdiameter.api.app.StateChangeListener<org.jdiameter.api.app.AppSession>

Implementation of stateful activity.

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

Field Summary
protected  net.java.slee.resource.diameter.base.events.avp.AuthSessionStateType authSessionState
           
protected  net.java.slee.resource.diameter.sh.events.avp.DataReferenceType[] dataReferenceType
           
protected  ShServerMessageFactoryImpl messageFactory
           
protected  net.java.slee.resource.diameter.base.events.avp.DiameterIdentity remoteHost
           
protected  net.java.slee.resource.diameter.base.events.avp.DiameterIdentity remoteRealm
           
protected  org.jdiameter.api.sh.ServerShSession serverSession
           
protected  net.java.slee.resource.diameter.sh.DiameterShAvpFactory shAvpFactory
           
protected  java.util.ArrayList<org.mobicents.slee.resource.diameter.base.events.DiameterMessageImpl> stateMessages
          Should contain requests, so we can create answer.
protected  net.java.slee.resource.diameter.sh.events.avp.UserIdentityAvp userIdentity
           
 
Fields inherited from class org.mobicents.slee.resource.diameter.base.DiameterActivityImpl
avpFactory, baseListener, destinationHost, destinationRealm, eventListener, handle, logger, session, sessionId, terminateAfterProcessing
 
Constructor Summary
ShServerSubscriptionActivityImpl(ShServerMessageFactory shServerMessageFactory, net.java.slee.resource.diameter.sh.DiameterShAvpFactory diameterShAvpFactory, org.jdiameter.api.sh.ServerShSession session, net.java.slee.resource.diameter.base.events.avp.DiameterIdentity destinationHost, net.java.slee.resource.diameter.base.events.avp.DiameterIdentity destinationRealm)
           
 
Method Summary
 net.java.slee.resource.diameter.sh.events.ProfileUpdateAnswer createProfileUpdateAnswer()
           
 net.java.slee.resource.diameter.sh.events.ProfileUpdateAnswer createProfileUpdateAnswer(long resultCode, boolean isExperimentalResult)
           
 net.java.slee.resource.diameter.sh.events.PushNotificationRequest createPushNotificationRequest()
           
 net.java.slee.resource.diameter.sh.events.SubscribeNotificationsAnswer createSubscribeNotificationsAnswer()
           
 net.java.slee.resource.diameter.sh.events.SubscribeNotificationsAnswer createSubscribeNotificationsAnswer(long resultCode, boolean isExperimentalResult)
           
 net.java.slee.resource.diameter.sh.events.UserDataAnswer createUserDataAnswer()
           
 net.java.slee.resource.diameter.sh.events.UserDataAnswer createUserDataAnswer(byte[] userData)
           
 net.java.slee.resource.diameter.sh.events.UserDataAnswer createUserDataAnswer(long resultCode, boolean isExperimentalResult)
           
 void endActivity()
           
 void fetchSessionData(net.java.slee.resource.diameter.base.events.DiameterMessage msg, boolean incoming)
           
 net.java.slee.resource.diameter.sh.DiameterShAvpFactory getServerAvpFactory()
           
 ShServerMessageFactory getServerMessageFactory()
           
 void sendProfileUpdateAnswer(net.java.slee.resource.diameter.sh.events.ProfileUpdateAnswer message)
           
 void sendPushNotificationRequest(net.java.slee.resource.diameter.sh.events.PushNotificationRequest message)
           
 void sendSubscribeNotificationsAnswer(net.java.slee.resource.diameter.sh.events.SubscribeNotificationsAnswer message)
           
 void sendUserDataAnswer(net.java.slee.resource.diameter.sh.events.UserDataAnswer message)
           
 void setServerAvpFactory(net.java.slee.resource.diameter.sh.DiameterShAvpFactory shAvpFactory)
           
 void setServerMessageFactory(ShServerMessageFactory messageFactory)
           
 void setSession(org.jdiameter.api.sh.ServerShSession session)
           
 void stateChanged(org.jdiameter.api.app.AppSession arg0, java.lang.Enum oldState, java.lang.Enum newState)
           
 void stateChanged(java.lang.Enum oldState, java.lang.Enum newState)
           
 
Methods inherited from class org.mobicents.slee.resource.diameter.base.DiameterActivityImpl
clean, equals, getActivityHandle, getDiameterAvpFactory, getDiameterMessageFactory, getSessionId, getSessionListener, hashCode, isTerminateAfterProcessing, isValid, sendMessage, sendSyncMessage, setAvpFactory, setCurrentWorkingSession, setEventListener, setMessageFactory, setSessionListener, setTerminateAfterProcessing
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface net.java.slee.resource.diameter.base.DiameterActivity
getDiameterAvpFactory, getDiameterMessageFactory, getSessionId, sendMessage
 

Field Detail

serverSession

protected transient org.jdiameter.api.sh.ServerShSession serverSession

shAvpFactory

protected transient net.java.slee.resource.diameter.sh.DiameterShAvpFactory shAvpFactory

messageFactory

protected transient ShServerMessageFactoryImpl messageFactory

userIdentity

protected net.java.slee.resource.diameter.sh.events.avp.UserIdentityAvp userIdentity

dataReferenceType

protected net.java.slee.resource.diameter.sh.events.avp.DataReferenceType[] dataReferenceType

authSessionState

protected net.java.slee.resource.diameter.base.events.avp.AuthSessionStateType authSessionState

remoteRealm

protected net.java.slee.resource.diameter.base.events.avp.DiameterIdentity remoteRealm

remoteHost

protected net.java.slee.resource.diameter.base.events.avp.DiameterIdentity remoteHost

stateMessages

protected java.util.ArrayList<org.mobicents.slee.resource.diameter.base.events.DiameterMessageImpl> stateMessages
Should contain requests, so we can create answer.

Constructor Detail

ShServerSubscriptionActivityImpl

public ShServerSubscriptionActivityImpl(ShServerMessageFactory shServerMessageFactory,
                                        net.java.slee.resource.diameter.sh.DiameterShAvpFactory diameterShAvpFactory,
                                        org.jdiameter.api.sh.ServerShSession session,
                                        net.java.slee.resource.diameter.base.events.avp.DiameterIdentity destinationHost,
                                        net.java.slee.resource.diameter.base.events.avp.DiameterIdentity destinationRealm)
Method Detail

createPushNotificationRequest

public net.java.slee.resource.diameter.sh.events.PushNotificationRequest createPushNotificationRequest()
Specified by:
createPushNotificationRequest in interface ShServerSubscriptionActivity

createSubscribeNotificationsAnswer

public net.java.slee.resource.diameter.sh.events.SubscribeNotificationsAnswer createSubscribeNotificationsAnswer(long resultCode,
                                                                                                                 boolean isExperimentalResult)
Specified by:
createSubscribeNotificationsAnswer in interface ShServerSubscriptionActivity

createSubscribeNotificationsAnswer

public net.java.slee.resource.diameter.sh.events.SubscribeNotificationsAnswer createSubscribeNotificationsAnswer()
Specified by:
createSubscribeNotificationsAnswer in interface ShServerSubscriptionActivity

createProfileUpdateAnswer

public net.java.slee.resource.diameter.sh.events.ProfileUpdateAnswer createProfileUpdateAnswer(long resultCode,
                                                                                               boolean isExperimentalResult)
Specified by:
createProfileUpdateAnswer in interface ShServerSubscriptionActivity

createUserDataAnswer

public net.java.slee.resource.diameter.sh.events.UserDataAnswer createUserDataAnswer(byte[] userData)
Specified by:
createUserDataAnswer in interface ShServerSubscriptionActivity

createUserDataAnswer

public net.java.slee.resource.diameter.sh.events.UserDataAnswer createUserDataAnswer(long resultCode,
                                                                                     boolean isExperimentalResult)
Specified by:
createUserDataAnswer in interface ShServerSubscriptionActivity

createUserDataAnswer

public net.java.slee.resource.diameter.sh.events.UserDataAnswer createUserDataAnswer()
Specified by:
createUserDataAnswer in interface ShServerSubscriptionActivity

createProfileUpdateAnswer

public net.java.slee.resource.diameter.sh.events.ProfileUpdateAnswer createProfileUpdateAnswer()
Specified by:
createProfileUpdateAnswer in interface ShServerSubscriptionActivity

sendPushNotificationRequest

public void sendPushNotificationRequest(net.java.slee.resource.diameter.sh.events.PushNotificationRequest message)
                                 throws java.io.IOException
Specified by:
sendPushNotificationRequest in interface ShServerSubscriptionActivity
Throws:
java.io.IOException

sendUserDataAnswer

public void sendUserDataAnswer(net.java.slee.resource.diameter.sh.events.UserDataAnswer message)
                        throws java.io.IOException
Specified by:
sendUserDataAnswer in interface ShServerSubscriptionActivity
Throws:
java.io.IOException

sendProfileUpdateAnswer

public void sendProfileUpdateAnswer(net.java.slee.resource.diameter.sh.events.ProfileUpdateAnswer message)
                             throws java.io.IOException
Specified by:
sendProfileUpdateAnswer in interface ShServerSubscriptionActivity
Throws:
java.io.IOException

sendSubscribeNotificationsAnswer

public void sendSubscribeNotificationsAnswer(net.java.slee.resource.diameter.sh.events.SubscribeNotificationsAnswer message)
                                      throws java.io.IOException
Specified by:
sendSubscribeNotificationsAnswer in interface ShServerSubscriptionActivity
Throws:
java.io.IOException

stateChanged

public void stateChanged(org.jdiameter.api.app.AppSession arg0,
                         java.lang.Enum oldState,
                         java.lang.Enum newState)
Specified by:
stateChanged in interface org.jdiameter.api.app.StateChangeListener<org.jdiameter.api.app.AppSession>

stateChanged

public void stateChanged(java.lang.Enum oldState,
                         java.lang.Enum newState)
Specified by:
stateChanged in interface org.jdiameter.api.app.StateChangeListener<org.jdiameter.api.app.AppSession>

fetchSessionData

public void fetchSessionData(net.java.slee.resource.diameter.base.events.DiameterMessage msg,
                             boolean incoming)

endActivity

public void endActivity()
Specified by:
endActivity in interface net.java.slee.resource.diameter.base.DiameterActivity
Overrides:
endActivity in class org.mobicents.slee.resource.diameter.base.DiameterActivityImpl

setSession

public void setSession(org.jdiameter.api.sh.ServerShSession session)

getServerAvpFactory

public net.java.slee.resource.diameter.sh.DiameterShAvpFactory getServerAvpFactory()
Specified by:
getServerAvpFactory in interface ShServerSubscriptionActivity

getServerMessageFactory

public ShServerMessageFactory getServerMessageFactory()
Specified by:
getServerMessageFactory in interface ShServerSubscriptionActivity

setServerAvpFactory

public void setServerAvpFactory(net.java.slee.resource.diameter.sh.DiameterShAvpFactory shAvpFactory)

setServerMessageFactory

public void setServerMessageFactory(ShServerMessageFactory messageFactory)


Copyright © 2010. All Rights Reserved.