org.mobicents.slee.service.callcontrol
Class CallControlSbb

java.lang.Object
  extended by org.mobicents.slee.service.common.CommonSbb
      extended by org.mobicents.slee.service.callcontrol.CallControlSbb
All Implemented Interfaces:
javax.slee.Sbb

public abstract class CallControlSbb
extends CommonSbb


Nested Class Summary
 class CallControlSbb.AfterCalleeConfirmedAndBeforeCallerConfirmedState
           
 class CallControlSbb.BeforeCalleeConfirmedState
           
 class CallControlSbb.CalleeRingingState
           
 class CallControlSbb.CalleeTryingState
           
 class CallControlSbb.CallerInvitedState
           
 class CallControlSbb.CallerRingingState
           
 class CallControlSbb.CallerTryingState
           
 class CallControlSbb.ExternalCancellationState
          We enter this state when an external cancellation has been triggered (e.g.
 class CallControlSbb.ExternalTerminationCalleeState
          We enter this state when the termination of both sessions has been triggered (e.g.
 class CallControlSbb.ExternalTerminationCallerState
          We enter this state when the termination of both sessions has been triggered (e.g.
 class CallControlSbb.InitialState
           
 class CallControlSbb.SessionEstablishedState
           
 class CallControlSbb.StateSupport
           
 class CallControlSbb.TerminationState
           
 class CallControlSbb.UATerminationState
           
 
Field Summary
static java.lang.String ENDPOINT_NAME
           
static java.lang.String IVR_ENDPOINT
           
protected  java.lang.String mmsBindAddress
           
 
Fields inherited from class org.mobicents.slee.service.common.CommonSbb
JBOSS_BIND_ADDRESS, MGCP_PEER_PORT, MGCP_PORT
 
Constructor Summary
CallControlSbb()
           
 
Method Summary
 javax.slee.InitialEventSelector callIdSelect(javax.slee.InitialEventSelector ies)
          Generate a custom convergence name so that events with the same call identifier will go to the same root SBB entity.
 java.lang.String getCallControlSipAddress()
           
 jain.protocol.ip.mgcp.message.parms.CallIdentifier getCallIdentifier()
           
abstract  jain.protocol.ip.mgcp.message.parms.CallIdentifier getCallIdentifierCmp()
           
abstract  org.mobicents.slee.service.events.CustomEvent getCustomEventCmp()
           
abstract  javax.slee.SbbLocalObject getParentCmp()
           
 java.lang.String getPassword()
           
 javax.sip.ResponseEvent getResponseEvent()
           
abstract  javax.sip.ResponseEvent getResponseEventCmp()
           
protected  javax.slee.SbbContext getSbbContext()
          Convenience method to retrieve the SbbContext object stored in setSbbContext.
 boolean getSendBye()
           
abstract  boolean getSendByeCmp()
           
 void onByeEvent(javax.sip.RequestEvent event, javax.slee.ActivityContextInterface aci)
           
 void onClientErrorRespEvent(javax.sip.ResponseEvent event, javax.slee.ActivityContextInterface aci)
           
 void onCreateConnectionResponse(jain.protocol.ip.mgcp.message.CreateConnectionResponse event, javax.slee.ActivityContextInterface aci)
           
 void onSuccessRespEvent(javax.sip.ResponseEvent event, javax.slee.ActivityContextInterface aci)
           
 void sbbActivate()
          implements javax.slee.Sbb Please refer to JSLEE v1.1 Specification, Early Draft Review Page 55 for further information.
 void sbbCreate()
          implements javax.slee.Sbb Please refer to JSLEE v1.1 Specification, Early Draft Review Page 55 for further information.
 void sbbExceptionThrown(java.lang.Exception exception, java.lang.Object event, javax.slee.ActivityContextInterface activity)
          implements javax.slee.Sbb Please refer to JSLEE v1.1 Specification, Early Draft Review Page 65 for further information.
 void sbbLoad()
          implements javax.slee.Sbb Please refer to JSLEE v1.1 Specification, Early Draft Review Page 56 for further information.
 void sbbPassivate()
          implements javax.slee.Sbb Please refer to JSLEE v1.1 Specification, Early Draft Review Page 56 for further information.
 void sbbPostCreate()
          implements javax.slee.Sbb Please refer to JSLEE v1.1 Specification, Early Draft Review Page 55 for further information.
 void sbbRemove()
          implements javax.slee.Sbb Please refer to JSLEE v1.1 Specification, Early Draft Review Page 56 for further information.
 void sbbRolledBack(javax.slee.RolledBackContext context)
          implements javax.slee.Sbb Please refer to JSLEE v1.1 Specification, Early Draft Review Page 67 for further information.
 void sbbStore()
          implements javax.slee.Sbb Please refer to JSLEE v1.1 Specification, Early Draft Review Page 57 for further information.
 void sendBye()
           
 void sendCallerAck(javax.sip.ResponseEvent event)
           
 void sendRQNT(java.lang.String textToPlay, java.lang.String audioFileUrl, boolean detectDtmf)
           
 void setCallControlSipAddress(java.lang.String username)
           
 void setCallIdentifier(jain.protocol.ip.mgcp.message.parms.CallIdentifier cid)
           
abstract  void setCallIdentifierCmp(jain.protocol.ip.mgcp.message.parms.CallIdentifier cid)
           
 void setCustomEvent(org.mobicents.slee.service.events.CustomEvent event)
           
abstract  void setCustomEventCmp(org.mobicents.slee.service.events.CustomEvent sbbLocalObject)
           
 void setParent(javax.slee.SbbLocalObject sbbLocalObject)
           
abstract  void setParentCmp(javax.slee.SbbLocalObject sbbLocalObject)
           
 void setPassword(java.lang.String password)
           
abstract  void setResponseEventCmp(javax.sip.ResponseEvent evt)
           
 void setSbbContext(javax.slee.SbbContext context)
          implements javax.slee.Sbb Please refer to JSLEE v1.1 Specification, Early Draft Review Page 54 for further information.
 void setSendBye(boolean isBye)
           
abstract  void setSendByeCmp(boolean isBye)
           
 void unsetSbbContext()
          implements javax.slee.Sbb Please refer to JSLEE v1.1 Specification, Early Draft Review Page 54 for further information.
 
Methods inherited from class org.mobicents.slee.service.common.CommonSbb
getCacheUtility, getMgcpActivityContestInterfaceFactory, getMgcpProvider, getNullACIFactory, getNullActivityFactory, getSipActivityContextInterfaceFactory, getSipProvider, getSipUtils
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ENDPOINT_NAME

public static final java.lang.String ENDPOINT_NAME
See Also:
Constant Field Values

IVR_ENDPOINT

public static final java.lang.String IVR_ENDPOINT
See Also:
Constant Field Values

mmsBindAddress

protected java.lang.String mmsBindAddress
Constructor Detail

CallControlSbb

public CallControlSbb()
Method Detail

getResponseEventCmp

public abstract javax.sip.ResponseEvent getResponseEventCmp()

setResponseEventCmp

public abstract void setResponseEventCmp(javax.sip.ResponseEvent evt)

setParentCmp

public abstract void setParentCmp(javax.slee.SbbLocalObject sbbLocalObject)

getParentCmp

public abstract javax.slee.SbbLocalObject getParentCmp()

setCustomEventCmp

public abstract void setCustomEventCmp(org.mobicents.slee.service.events.CustomEvent sbbLocalObject)

getCustomEventCmp

public abstract org.mobicents.slee.service.events.CustomEvent getCustomEventCmp()

setCustomEvent

public void setCustomEvent(org.mobicents.slee.service.events.CustomEvent event)

setParent

public void setParent(javax.slee.SbbLocalObject sbbLocalObject)

getResponseEvent

public javax.sip.ResponseEvent getResponseEvent()

setCallIdentifierCmp

public abstract void setCallIdentifierCmp(jain.protocol.ip.mgcp.message.parms.CallIdentifier cid)

getCallIdentifierCmp

public abstract jain.protocol.ip.mgcp.message.parms.CallIdentifier getCallIdentifierCmp()

setCallIdentifier

public void setCallIdentifier(jain.protocol.ip.mgcp.message.parms.CallIdentifier cid)

getCallIdentifier

public jain.protocol.ip.mgcp.message.parms.CallIdentifier getCallIdentifier()

setSendByeCmp

public abstract void setSendByeCmp(boolean isBye)

getSendByeCmp

public abstract boolean getSendByeCmp()

setSendBye

public void setSendBye(boolean isBye)

getSendBye

public boolean getSendBye()

callIdSelect

public javax.slee.InitialEventSelector callIdSelect(javax.slee.InitialEventSelector ies)
Generate a custom convergence name so that events with the same call identifier will go to the same root SBB entity. For other methods, use ActivityContext.


onByeEvent

public void onByeEvent(javax.sip.RequestEvent event,
                       javax.slee.ActivityContextInterface aci)

onClientErrorRespEvent

public void onClientErrorRespEvent(javax.sip.ResponseEvent event,
                                   javax.slee.ActivityContextInterface aci)

onSuccessRespEvent

public void onSuccessRespEvent(javax.sip.ResponseEvent event,
                               javax.slee.ActivityContextInterface aci)

onCreateConnectionResponse

public void onCreateConnectionResponse(jain.protocol.ip.mgcp.message.CreateConnectionResponse event,
                                       javax.slee.ActivityContextInterface aci)

sendRQNT

public void sendRQNT(java.lang.String textToPlay,
                     java.lang.String audioFileUrl,
                     boolean detectDtmf)

sendBye

public void sendBye()

setSbbContext

public void setSbbContext(javax.slee.SbbContext context)
Description copied from class: CommonSbb
implements javax.slee.Sbb Please refer to JSLEE v1.1 Specification, Early Draft Review Page 54 for further information.
The SLEE invokes this method after a new instance of the SBB abstract class is created. During this method, an SBB entity has not been assigned to the SBB object. The SBB object can take advantage of this method to allocate and initialize state or connect to resources that are to be held by the SBB object during its lifetime. Such state and resources cannot be specific to an SBB entity because the SBB object might be reused during its lifetime to serve multiple SBB entities.
This method indicates a transition from state "DOES NOT EXIST" to "POOLED" (see page 52)

Specified by:
setSbbContext in interface javax.slee.Sbb
Overrides:
setSbbContext in class CommonSbb

unsetSbbContext

public void unsetSbbContext()
Description copied from class: CommonSbb
implements javax.slee.Sbb Please refer to JSLEE v1.1 Specification, Early Draft Review Page 54 for further information.
The SLEE invokes this method before terminating the life of the SBB object. The SBB object can take advantage of this method to free state or resources that are held by the SBB object. These state and resources typically had been allocated by the setSbbContext method.
This method indicates a transition from state "POOLED" to "DOES NOT EXIST" (see page 52)

Specified by:
unsetSbbContext in interface javax.slee.Sbb
Overrides:
unsetSbbContext in class CommonSbb

sbbCreate

public void sbbCreate()
               throws javax.slee.CreateException
Description copied from class: CommonSbb
implements javax.slee.Sbb Please refer to JSLEE v1.1 Specification, Early Draft Review Page 55 for further information.
The SLEE invokes this method on an SBB object before the SLEE creates a new SBB entity in response to an initial event or an invocation of the create method on a ChildRelation object. This method should initialize the SBB object using the CMP field get and set accessor methods, such that when this method returns, the persistent representation of the SBB entity can be created.
This method is the first part of a transition from state "POOLED" to "READY" (see page 52)

Specified by:
sbbCreate in interface javax.slee.Sbb
Overrides:
sbbCreate in class CommonSbb
Throws:
javax.slee.CreateException

sbbPostCreate

public void sbbPostCreate()
                   throws javax.slee.CreateException
Description copied from class: CommonSbb
implements javax.slee.Sbb Please refer to JSLEE v1.1 Specification, Early Draft Review Page 55 for further information.
The SLEE invokes this method on an SBB object after the SLEE creates a new SBB entity. The SLEE invokes this method after the persistent representation of the SBB entity has been created and the SBB object is assigned to the created SBB entity. This method gives the SBB object a chance to initialize additional transient state and acquire additional resources that it needs while it is in the Ready state.
This method is the second part of a transition from state "POOLED" to "READY" (see page 52)

Specified by:
sbbPostCreate in interface javax.slee.Sbb
Overrides:
sbbPostCreate in class CommonSbb
Throws:
javax.slee.CreateException

sbbActivate

public void sbbActivate()
Description copied from class: CommonSbb
implements javax.slee.Sbb Please refer to JSLEE v1.1 Specification, Early Draft Review Page 55 for further information.
The SLEE invokes this method on an SBB object when the SLEE picks the SBB object in the pooled state and assigns it to a specific SBB entity. This method gives the SBB object a chance to initialize additional transient state and acquire additional resources that it needs while it is in the Ready state.
This method indicates a transition from state "POOLED" to "READY" (see page 52)

Specified by:
sbbActivate in interface javax.slee.Sbb
Overrides:
sbbActivate in class CommonSbb

sbbPassivate

public void sbbPassivate()
Description copied from class: CommonSbb
implements javax.slee.Sbb Please refer to JSLEE v1.1 Specification, Early Draft Review Page 56 for further information.
The SLEE invokes this method on an SBB object when the SLEE decides to disassociate the SBB object from the SBB entity, and to put the SBB object back into the pool of available SBB objects. This method gives the SBB object the chance to release any state or resources that should not be held while the SBB object is in the pool. These state and resources typically had been allocated during the sbbActivate method.
This method indicates a transition from state "READY" to "POOLED" (see page 52)

Specified by:
sbbPassivate in interface javax.slee.Sbb
Overrides:
sbbPassivate in class CommonSbb

sbbRemove

public void sbbRemove()
Description copied from class: CommonSbb
implements javax.slee.Sbb Please refer to JSLEE v1.1 Specification, Early Draft Review Page 56 for further information.
The SLEE invokes the sbbRemove method on an SBB object before the SLEE removes the SBB entity assigned to the SBB object.
This method indicates a transition from state "READY" to "POOLED" (see page 52)

Specified by:
sbbRemove in interface javax.slee.Sbb
Overrides:
sbbRemove in class CommonSbb

sbbLoad

public void sbbLoad()
Description copied from class: CommonSbb
implements javax.slee.Sbb Please refer to JSLEE v1.1 Specification, Early Draft Review Page 56 for further information.
The SLEE calls this method to synchronize the state of an SBB object with its assigned SBB entityÔøΩs persistent state. The SBB Developer can assume that the SBB objectÔøΩs persistent state has been loaded just before this method is invoked.
This method indicates a transition from state "READY" to "READY" (see page 52)

Specified by:
sbbLoad in interface javax.slee.Sbb
Overrides:
sbbLoad in class CommonSbb

sbbStore

public void sbbStore()
Description copied from class: CommonSbb
implements javax.slee.Sbb Please refer to JSLEE v1.1 Specification, Early Draft Review Page 57 for further information.
The SLEE calls this method to synchronize the state of the SBB entityÔøΩs persistent state with the state of the SBB object. The SBB Developer should use this method to update the SBB object using the CMP field accessor methods before its persistent state is synchronized.
This method indicates a transition from state "READY" to "READY" (see page 52)

Specified by:
sbbStore in interface javax.slee.Sbb
Overrides:
sbbStore in class CommonSbb

sbbExceptionThrown

public void sbbExceptionThrown(java.lang.Exception exception,
                               java.lang.Object event,
                               javax.slee.ActivityContextInterface activity)
Description copied from class: CommonSbb
implements javax.slee.Sbb Please refer to JSLEE v1.1 Specification, Early Draft Review Page 65 for further information.
The SLEE invokes this method after a SLEE originated invocation of a transactional method of the SBB object returns by throwing a RuntimeException.

Specified by:
sbbExceptionThrown in interface javax.slee.Sbb
Overrides:
sbbExceptionThrown in class CommonSbb

sbbRolledBack

public void sbbRolledBack(javax.slee.RolledBackContext context)
Description copied from class: CommonSbb
implements javax.slee.Sbb Please refer to JSLEE v1.1 Specification, Early Draft Review Page 67 for further information.
The SLEE invokes the sbbRolledBack callback method after a transaction used in a SLEE originated invocation has rolled back.

Specified by:
sbbRolledBack in interface javax.slee.Sbb
Overrides:
sbbRolledBack in class CommonSbb

getSbbContext

protected javax.slee.SbbContext getSbbContext()
Convenience method to retrieve the SbbContext object stored in setSbbContext. TODO: If your SBB doesn't require the SbbContext object you may remove this method, the sbbContext variable and the variable assignment in setSbbContext().

Overrides:
getSbbContext in class CommonSbb
Returns:
this SBB's SbbContext object

sendCallerAck

public void sendCallerAck(javax.sip.ResponseEvent event)

getPassword

public java.lang.String getPassword()

setPassword

public void setPassword(java.lang.String password)

getCallControlSipAddress

public java.lang.String getCallControlSipAddress()

setCallControlSipAddress

public void setCallControlSipAddress(java.lang.String username)


Copyright © 2010. All Rights Reserved.