|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし すべてのクラス | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectgov.nist.javax.sip.stack.SIPDialog
public class SIPDialog
Tracks dialogs. A dialog is a peer to peer association of communicating SIP entities. For INVITE transactions, a Dialog is created when a success message is received (i.e. a response that has a To tag). The SIP Protocol stores enough state in the message structure to extract a dialog identifier that can be used to retrieve this structure from the SipStack.
入れ子のクラスの概要 | |
---|---|
class |
SIPDialog.DialogTimerTask
|
フィールドの概要 | |
---|---|
static int |
COMPLETED_STATE
|
static int |
CONFIRMED_STATE
|
static int |
EARLY_STATE
|
static int |
TERMINATED_STATE
|
メソッドの概要 | |
---|---|
void |
ackReceived(SIPRequest sipRequest)
Mark that the dialog has seen an ACK. |
void |
addRoute(SIPMessage sipMessage)
Extract the route information from this SIP Message and add the relevant information to the route set. |
void |
addTransaction(SIPTransaction transaction)
Add a transaction record to the dialog. |
void |
clearPending()
Clear any pending request flag. |
javax.sip.message.Request |
createRequest(java.lang.String method)
Creates a new Request message based on the dialog creating request. |
void |
delete()
This method will release all resources associated with this dialog that are tracked by the Provider. |
java.lang.Object |
getApplicationData()
Get ptr to opaque application data. |
javax.sip.header.CallIdHeader |
getCallId()
Returns the Call-ID for this SipSession. |
java.lang.String |
getDialogId()
Get the id for this dialog. |
javax.sip.Transaction |
getFirstTransaction()
Get the transaction that created this dialog. |
SIPServerTransaction |
getInviteTransaction()
Get the INVITE transaction (null if no invite transaction). |
SIPRequest |
getLastAck()
Get the last ACK for this transaction. |
SIPTransaction |
getLastTransaction()
Get the last transaction from the dialog. |
javax.sip.address.Address |
getLocalParty()
Get the local Address for this dialog. |
int |
getLocalSequenceNumber()
Get the local sequence number (for cseq assignment of outgoing requests within this dialog). |
java.lang.String |
getLocalTag()
Get local identifier for the dialog. |
HopImpl |
getNextHop()
Get the next hop to which requests in the dialog will be routed to. |
javax.sip.address.Address |
getRemoteParty()
Returns the Address identifying the remote party. |
int |
getRemoteSequenceNumber()
Get the remote sequence number (for cseq assignment of outgoing requests within this dialog). |
java.lang.String |
getRemoteTag()
Get peer identifier identifier for the dialog. |
javax.sip.address.Address |
getRemoteTarget()
Returns the Address identifying the remote target. |
java.util.Iterator |
getRouteSet()
Gets the route set for the dialog. |
javax.sip.DialogState |
getState()
Returns the current state of the dialogue. |
boolean |
hasPending()
Return true if this has a pending request |
void |
incrementLocalSequenceNumber()
Increment the local CSeq # for the dialog. |
boolean |
isAckSeen()
Return true if the dialog has already seen the ack. |
boolean |
isClientDialog()
Return true if this is a client dialog. |
boolean |
isInviteDialog()
|
boolean |
isRequestConsumable(SIPRequest dialogRequest)
Return true if this request can be consumed by the dialog. |
boolean |
isSecure()
Returns true if this Dialog is secure i.e. if the request arrived over TLS, and the Request-URI contained a SIPS URI, the "secure" flag is set to TRUE. |
boolean |
isServer()
Return true if is server. |
boolean |
isTerminated()
return true if the record is done. |
void |
printDebugInfo()
Debugging print for the dialog. |
void |
processPending()
Process the pending request. |
void |
requestConsumed()
Updates the next consumable seqno and notifies the pending thread if there are any queued requests. |
void |
resendAck()
Resend the last ack. |
void |
sendAck(javax.sip.message.Request request)
Sends ACK Request to the remote party of this Dialogue. |
void |
sendRequest(javax.sip.ClientTransaction clientTransactionId)
Sends a Request to the remote party of this dialog. |
void |
setApplicationData(java.lang.Object applicationData)
Set ptr to app data. |
void |
setDefaultRoute(Route defaultRoute)
Set the default route (the default next hop for the proxy or the proxy address for the user agent). |
void |
setDialogId(java.lang.String dialogId)
Set the dialog identifier. |
void |
setLocalTag(java.lang.String mytag)
Set local tag for the transaction. |
void |
setRemoteTag(java.lang.String hisTag)
Set the remote tag. |
void |
setStack(SIPTransactionStack sipStack)
Set the stack address. |
void |
setState(int state)
Set the state for this dialog. |
void |
setUser(java.lang.String user)
Set the user name for the default route. |
クラス java.lang.Object から継承されたメソッド |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
---|
public static final int EARLY_STATE
public static final int CONFIRMED_STATE
public static final int COMPLETED_STATE
public static final int TERMINATED_STATE
メソッドの詳細 |
---|
public boolean isTerminated()
PendingRecord
内の isTerminated
public void setApplicationData(java.lang.Object applicationData)
javax.sip.Dialog
内の setApplicationData
public java.lang.Object getApplicationData()
javax.sip.Dialog
内の getApplicationData
public void requestConsumed()
public boolean isRequestConsumable(SIPRequest dialogRequest)
dialogRequest
- is the request to check with the dialog.
public HopImpl getNextHop() throws javax.sip.SipException
javax.sip.SipException
public boolean isClientDialog()
public void setState(int state)
state
- is the state to set for the dialog.public void printDebugInfo()
public void ackReceived(SIPRequest sipRequest)
public boolean isAckSeen()
public SIPRequest getLastAck()
public javax.sip.Transaction getFirstTransaction()
javax.sip.Dialog
内の getFirstTransaction
public java.util.Iterator getRouteSet()
Requests within a dialog MAY contain Record-Route and Contact header fields. However, these requests do not cause the dialog's route set to be modified.
The User Agent Client uses the remote target and route set to build the Request-URI and Route header field of the request.
javax.sip.Dialog
内の getRouteSet
public void setStack(SIPTransactionStack sipStack)
sipStack
- the address of the SIP stack.public void setDefaultRoute(Route defaultRoute)
defaultRoute
- is the default route to set.public void setUser(java.lang.String user)
user
- is the user name to set for the default route.public void addRoute(SIPMessage sipMessage)
sipMessage
- is the SIP message for which we want to add the route.public void setDialogId(java.lang.String dialogId)
public boolean isServer()
javax.sip.Dialog
内の isServer
public java.lang.String getDialogId()
javax.sip.Dialog
内の getDialogId
public void addTransaction(SIPTransaction transaction)
transaction
- is the transaction to add to the dialog.public void setRemoteTag(java.lang.String hisTag)
hisTag
- is the remote tag to set.public SIPTransaction getLastTransaction()
public SIPServerTransaction getInviteTransaction()
public void incrementLocalSequenceNumber()
javax.sip.Dialog
内の incrementLocalSequenceNumber
public int getRemoteSequenceNumber()
javax.sip.Dialog
内の getRemoteSequenceNumber
public int getLocalSequenceNumber()
javax.sip.Dialog
内の getLocalSequenceNumber
public java.lang.String getLocalTag()
javax.sip.Dialog
内の getLocalTag
public java.lang.String getRemoteTag()
javax.sip.Dialog
内の getRemoteTag
public void setLocalTag(java.lang.String mytag)
mytag
- is the tag to use in From headers client transactions that
belong to this dialog and for generating To tags for Server
transaction requests that belong to this dialog.public void delete()
javax.sip.Dialog
内の delete
public javax.sip.header.CallIdHeader getCallId()
javax.sip.Dialog
内の getCallId
public javax.sip.address.Address getLocalParty()
javax.sip.Dialog
内の getLocalParty
public javax.sip.address.Address getRemoteParty()
This is the value of the From header of recieved responses in this dialogue when acting as an User Agent Server.
javax.sip.Dialog
内の getRemoteParty
public javax.sip.address.Address getRemoteTarget()
This is the value of the Contact header of recieved Requests or refresh Requests in this dialogue when acting as an User Agent Server. Bug fix sent in by Steve Crossley.
javax.sip.Dialog
内の getRemoteTarget
public javax.sip.DialogState getState()
javax.sip.Dialog
内の getState
DialogState
public boolean isSecure()
javax.sip.Dialog
内の isSecure
true
if this dialogue was established using a sips
URI over TLS, and false
otherwise.public void sendAck(javax.sip.message.Request request) throws javax.sip.SipException
javax.sip.Dialog
内の sendAck
request
- the new ACK Request message to send.
javax.sip.SipException
- if implementation cannot send the ACK Request for any other
reasonpublic javax.sip.message.Request createRequest(java.lang.String method) throws javax.sip.SipException
javax.sip.Dialog
内の createRequest
method
- the string value that determines if the request to be created.
javax.sip.SipException
- if the Dialog is not yet established.public void sendRequest(javax.sip.ClientTransaction clientTransactionId) throws javax.sip.TransactionDoesNotExistException, javax.sip.SipException
This methods will set the From and the To tags for the outgoing request and also set the correct sequence number to the outgoing Request and associate the client transaction with this dialog. Note that any tags assigned by the user will be over-written by this method.
The User Agent must not send a BYE on a confirmed INVITE until it has received an ACK for its 2xx response or until the server transaction timeout is received.
When the retransmissionFilter is true
, that is the
SipProvider takes care of all retransmissions for the application, and
the SipProvider can not deliver the Request after multiple retransmits
the SipListener will be notified with a TimeoutEvent
when the
transaction expires.
javax.sip.Dialog
内の sendRequest
clientTransactionId
- the new ClientTransaction object identifying this transaction,
this clientTransaction should be requested from
SipProvider.getNewClientTransaction
javax.sip.TransactionDoesNotExistException
- if the serverTransaction does not correspond to any existing
server transaction.
javax.sip.SipException
- if implementation cannot send the Request for any reason.public void resendAck() throws javax.sip.SipException
javax.sip.SipException
public boolean isInviteDialog()
public void clearPending()
PendingRecord
の記述:
PendingRecord
内の clearPending
public boolean hasPending()
PendingRecord
の記述:
PendingRecord
内の hasPending
public void processPending()
PendingRecord
の記述:
PendingRecord
内の processPending
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし すべてのクラス | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |