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

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

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

Implementation of stateles Sh Server activity whihc recieves. It ends after resposne is sent.

Author:
Bartosz Baranowski , Alexandre Mendonca
See Also:
ShServerActivity, 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<net.java.slee.resource.diameter.base.events.DiameterMessage> 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
ShServerActivityImpl(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.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 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 transient java.util.ArrayList<net.java.slee.resource.diameter.base.events.DiameterMessage> stateMessages
Should contain requests, so we can create answer.

Constructor Detail

ShServerActivityImpl

public ShServerActivityImpl(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

createProfileUpdateAnswer

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

createProfileUpdateAnswer

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

createUserDataAnswer

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

createUserDataAnswer

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

createUserDataAnswer

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

createSubscribeNotificationsAnswer

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

createSubscribeNotificationsAnswer

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

sendSubscribeNotificationsAnswer

public void sendSubscribeNotificationsAnswer(net.java.slee.resource.diameter.sh.events.SubscribeNotificationsAnswer message)
                                      throws java.io.IOException
Specified by:
sendSubscribeNotificationsAnswer in interface ShServerActivity
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 ShServerActivity
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 ShServerActivity
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 ShServerActivity

getServerMessageFactory

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

setServerAvpFactory

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

setServerMessageFactory

public void setServerMessageFactory(ShServerMessageFactory messageFactory)


Copyright © 2010. All Rights Reserved.