public interface TcapLeg
Dialog
between the external TC user and the local TC user (the IPSMGW).
A TCAP leg has an associated pending TCAP message (see hasPendingTCAPMessage()
, getPendingTCAPMessage()
,
clearPendingTCAPMessage()
) that is created and updated by features during execution cycles of the
TcapLegManager
.Modifier and Type | Field and Description |
---|---|
static java.lang.String |
SEND_MESSAGE_FAILED_INSTRUCTION
Send Message instruction value, used in
FailedInstruction . |
Modifier and Type | Method and Description |
---|---|
void |
acceptDialog()
Accept the dialog associated with the leg.
|
void |
acceptDialog(DialogMessageTcapMessage accept)
Accept the dialog associated with this leg.
|
void |
clearPendingTCAPMessage()
Reset/clear the pending TCAP message.
|
boolean |
dialogCanBeAccepted()
Check if the dialog can be accepted.
|
javax.slee.ActivityContextInterface |
getAci()
Return the ACI for this leg.
|
long |
getInvokeTimeout()
Returns the time in milliseconds of the Invoke Timeout used for this leg
|
DialogTcapMessage |
getLatestIncomingTCAPMessage()
The latest Incoming TCAP message received on this leg's dialog.
|
DialogTcapMessage |
getLatestOutgoingTCAPMessage()
The latest Outgoing TCAP message sent on this leg's dialog.
|
java.lang.String |
getLegName()
The name assigned to the leg by the core or by a feature.
|
TcapLeg |
getLinkedLeg()
Return the leg linked to this leg.
|
DialogTcapMessage |
getPendingTCAPMessage()
The Pending TCAP message is built up during an execution cycle of the TCAP leg manager and processed after all
feature execution scripts have finished.
|
SasEndpointType |
getSasEndpoint()
Returns the SAS endpoint type to be used for all protocol events on this leg
|
java.lang.String |
getTargetFeature() |
Dialog |
getTcapDialog()
Return the Dialog for this leg .
|
boolean |
hasPendingTCAPMessage()
The Pending TCAP message is built up during an execution cycle of the TCAP leg manager and processed after all
feature execution scripts have finished.
|
boolean |
hasTargetFeature() |
boolean |
isLinked()
Return true if this leg is linked to another leg.
|
void |
issueOpenRequest(DialogOpenRequestTcapMessage openRequest)
Request that a new dialog, associated with this leg, should be initiated.
|
boolean |
isSuspended() |
void |
linkLeg(TcapLeg leg)
Immediately link this leg to the leg provided as an argument.
|
void |
refuseDialog()
Refuse an open dialog request.
|
void |
refuseDialog(DialogOpenRefuseTcapMessage refuse)
Refuse an open dialog request for the dialog associated with this leg.
|
void |
resume()
Resume sending messages.
|
void |
sendClose(boolean prearrangedEnd)
Close the dialog associated with this leg.
|
void |
sendDialogTcapMessage(DialogMessageTcapMessage toSend)
Issue a TCAP message on the dialog associated with this leg.
|
void |
sendError(TCOperationUserErrorTcapComponent<?> error)
Issue a user error response for an invoked operation on the dialog associated with this leg.
|
void |
sendInvoke(TCOperationInvokeTcapComponent toSend)
Issue an operation invoke on the dialog associated with this leg.
|
void |
sendResult(TCOperationResultTcapComponent result)
Issue a result to an operation on the dialog associated with this leg.
|
void |
sendUserAbort(DialogUserAbortTcapMessage abort)
Abort the dialog associated with this leg.
|
void |
setInvokeTimeout(long invokeTimeout)
Sets the Invoke Timeout value to be used for all messages on this leg.
|
void |
setSasEndpoint(SasEndpointType sasEndpoint)
Sets the SAS endpoint type to be used for all protocol events on this leg
|
void |
suspend()
Suspend sending messages.
|
void |
unlinkLeg()
Immediately unlink this leg from the leg linked to it, if any.
|
static final java.lang.String SEND_MESSAGE_FAILED_INSTRUCTION
FailedInstruction
.java.lang.String getLegName()
The Leg associated with the legName is obtained using the TcapLegManager#getLeg(String)
method.
boolean hasTargetFeature()
java.lang.String getTargetFeature()
void linkLeg(TcapLeg leg) throws LegsAlreadyLinkedException, java.lang.IllegalArgumentException
If the legs are already linked to each other, the legs will remain linked. If either of the legs is linked
to another leg then LegsAlreadyLinkedException
will be thrown. Legs may not be linked to themselves,
and IllegalArgumentException
will be thrown if this is attempted.
When linked, features may choose to act as a proxy between those legs.
leg
- the TcapLeg to link with this leg.LegsAlreadyLinkedException
- if either of the legs are currently linked to another leg.java.lang.IllegalArgumentException
- when supplied leg is null or is the same as this leg.void unlinkLeg()
TcapLeg getLinkedLeg()
boolean isLinked()
boolean hasPendingTCAPMessage()
DialogTcapMessage getPendingTCAPMessage()
DialogTcapMessage getLatestIncomingTCAPMessage()
DialogTcapMessage getLatestOutgoingTCAPMessage()
void issueOpenRequest(DialogOpenRequestTcapMessage openRequest)
hasPendingTCAPMessage()
and clearPendingTCAPMessage()
.openRequest
- the dialog open requestvoid sendInvoke(TCOperationInvokeTcapComponent toSend)
toSend
- invoke to sendvoid sendResult(TCOperationResultTcapComponent result)
result
- the operation resultvoid sendError(TCOperationUserErrorTcapComponent<?> error)
error
- a metadata object identifying the error to sendvoid sendClose(boolean prearrangedEnd)
prearrangedEnd == false
causes
the pending TCAP message to be sent as a TC-End. If prearrangedEnd == true
, no network message is
sent and the dialog is torn down by the local Provider, discarding any operation requests and/or responses.
If there is no pending TCAP message, a new TC-End pending TCAP message is created.prearrangedEnd
- true
if the dialog closure was "prearranged", false
if not (a "basic end").
The typical argument value is false
.void sendUserAbort(DialogUserAbortTcapMessage abort)
abort
- the user abortvoid acceptDialog(DialogMessageTcapMessage accept)
accept
is null
, then the pending TCAP message is set with a new open accept.
Any existing pending tcap message will be replaced by the open accept.
See hasPendingTCAPMessage()
and clearPendingTCAPMessage()
.accept
- the dialog acceptvoid acceptDialog()
hasPendingTCAPMessage()
and clearPendingTCAPMessage()
.void refuseDialog(DialogOpenRefuseTcapMessage refuse)
refuse
is null
then the pending TCAP message is set to a new open refuse.
Any existing pending tcap message will be replaced by the open refuse.
See hasPendingTCAPMessage()
and clearPendingTCAPMessage()
.refuse
- the open refusevoid refuseDialog()
hasPendingTCAPMessage()
and clearPendingTCAPMessage()
.void sendDialogTcapMessage(DialogMessageTcapMessage toSend)
hasPendingTCAPMessage()
and clearPendingTCAPMessage()
.toSend
- the message to sendvoid clearPendingTCAPMessage()
Dialog getTcapDialog()
boolean dialogCanBeAccepted()
true
if the dialog exists, and is in the INIT_RECEIVED
state.
(An Open Request has been received, but it has not been accepted or rejected yet)javax.slee.ActivityContextInterface getAci()
boolean isSuspended()
void suspend()
resume()
,
isSuspended()
void resume()
suspend()
,
isSuspended()
void setInvokeTimeout(long invokeTimeout)
invokeTimeout
- time in millisecondslong getInvokeTimeout()
void setSasEndpoint(SasEndpointType sasEndpoint)
sasEndpoint
- the type of the SAS endpointSasEndpointType getSasEndpoint()
Copyright © OpenCloud. All Rights Reserved.