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:
net.java.slee.resource.diameter.base.DiameterActivity, net.java.slee.resource.diameter.sh.server.ShServerSubscriptionActivity, org.jdiameter.api.app.StateChangeListener

public class ShServerSubscriptionActivityImpl
extends org.mobicents.slee.resource.diameter.base.DiameterActivityImpl
implements net.java.slee.resource.diameter.sh.server.ShServerSubscriptionActivity, org.jdiameter.api.app.StateChangeListener

Implementation of statful activity.

Author:
Bartosz Baranowski , Alexandre Mendonca
See Also:
ShServerSubscriptionActivity

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  ShServerSessionListener listener
           
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  net.java.slee.resource.diameter.sh.ShSessionState state
           
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, endpoint, handle, logger, raEventListener, session, sessionId, terminateAfterProcessing
 
Constructor Summary
ShServerSubscriptionActivityImpl(net.java.slee.resource.diameter.sh.server.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, javax.slee.resource.SleeEndpoint endpoint)
           
 
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 fetchSessionData(net.java.slee.resource.diameter.base.events.DiameterMessage msg, boolean incoming)
           
 java.lang.Object getSessionListener()
           
 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 setSessionListener(java.lang.Object ra)
           
 void stateChanged(java.lang.Enum oldState, java.lang.Enum newState)
           
 
Methods inherited from class org.mobicents.slee.resource.diameter.base.DiameterActivityImpl
clean, endActivity, getActivityHandle, getDiameterAvpFactory, getDiameterMessageFactory, getSessionId, isTerminateAfterProcessing, isValid, sendMessage, sendSyncMessage, setCurrentWorkingSession, setTerminateAfterProcessing
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface net.java.slee.resource.diameter.base.DiameterActivity
endActivity, getDiameterAvpFactory, getDiameterMessageFactory, getSessionId, sendMessage
 

Field Detail

serverSession

protected org.jdiameter.api.sh.ServerShSession serverSession

state

protected net.java.slee.resource.diameter.sh.ShSessionState state

listener

protected ShServerSessionListener listener

shAvpFactory

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

messageFactory

protected 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(net.java.slee.resource.diameter.sh.server.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,
                                        javax.slee.resource.SleeEndpoint endpoint)
Method Detail

createPushNotificationRequest

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

createSubscribeNotificationsAnswer

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

createSubscribeNotificationsAnswer

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

createProfileUpdateAnswer

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

createUserDataAnswer

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

createUserDataAnswer

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

createUserDataAnswer

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

createProfileUpdateAnswer

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

sendPushNotificationRequest

public void sendPushNotificationRequest(net.java.slee.resource.diameter.sh.events.PushNotificationRequest message)
                                 throws java.io.IOException
Specified by:
sendPushNotificationRequest in interface net.java.slee.resource.diameter.sh.server.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 net.java.slee.resource.diameter.sh.server.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 net.java.slee.resource.diameter.sh.server.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 net.java.slee.resource.diameter.sh.server.ShServerSubscriptionActivity
Throws:
java.io.IOException

stateChanged

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

fetchSessionData

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

getSessionListener

public java.lang.Object getSessionListener()
Overrides:
getSessionListener in class org.mobicents.slee.resource.diameter.base.DiameterActivityImpl

setSessionListener

public void setSessionListener(java.lang.Object ra)
Overrides:
setSessionListener in class org.mobicents.slee.resource.diameter.base.DiameterActivityImpl


Copyright © 2010. All Rights Reserved.