|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectgov.nist.javax.sip.stack.MessageChannel
gov.nist.javax.sip.stack.SIPTransaction
gov.nist.javax.sip.stack.SIPClientTransaction
public class SIPClientTransaction
Represents a client transaction. Implements the following state machines. (From RFC 3261)
|INVITE from TU Timer A fires |INVITE sent Reset A, V Timer B fires INVITE sent +-----------+ or Transport Err. +---------| |---------------+inform TU | | Calling | | +-------->| |-------------->| +-----------+ 2xx | | | 2xx to TU | | |1xx | 300-699 +---------------+ |1xx to TU | ACK sent | | | resp. to TU | 1xx V | | 1xx to TU -----------+ | | +---------| | | | | |Proceeding |-------------->| | +-------->| | 2xx | | +-----------+ 2xx to TU | | 300-699 | | | ACK sent, | | | resp. to TU| | | | | NOTE: | 300-699 V | | ACK sent +-----------+Transport Err. | transitions | +---------| |Inform TU | labeled with | | | Completed |-------------->| the event | +-------->| | | over the action | +-----------+ | to take | ˆ | | | | | Timer D fires | +--------------+ | - | | | V | +-----------+ | | | | | Terminated|<--------------+ | | +-----------+ Figure 5: INVITE client transaction |Request from TU |send request Timer E V send request +-----------+ +---------| |-------------------+ | | Trying | Timer F | +-------->| | or Transport Err.| +-----------+ inform TU | 200-699 | | | resp. to TU | |1xx | +---------------+ |resp. to TU | | | | | Timer E V Timer F | | send req +-----------+ or Transport Err. | | +---------| | inform TU | | | |Proceeding |------------------>| | +-------->| |-----+ | | +-----------+ |1xx | | | ˆ |resp to TU | | 200-699 | +--------+ | | resp. to TU | | | | | | V | | +-----------+ | | | | | | | Completed | | | | | | | +-----------+ | | ˆ | | | | | Timer K | +--------------+ | - | | | V | NOTE: +-----------+ | | | | transitions | Terminated|<------------------+ labeled with | | the event +-----------+ over the action to take Figure 6: non-INVITE client transaction
入れ子のクラスの概要 | |
---|---|
class |
SIPClientTransaction.TransactionTimer
|
フィールドの概要 |
---|
クラス gov.nist.javax.sip.stack.SIPTransaction から継承されたフィールド |
---|
CALLING_STATE, COMPLETED_STATE, CONFIRMED_STATE, INITIAL_STATE, PROCEEDING_STATE, TERMINATED_STATE, TRYING_STATE |
メソッドの概要 | |
---|---|
void |
clearPending()
Clear the mark that there is a pending event for this transaction. |
void |
clearState()
This is called by the stack after a non-invite client transaction goes to completed state. |
javax.sip.message.Request |
createAck()
Creates an ACK request for this transaction |
javax.sip.message.Request |
createCancel()
Creates a new Cancel message from the Request associated with this client transaction. |
Via |
getOutgoingViaHeader()
get the via header for an outgoing request. |
java.lang.String |
getProcessingInfo()
Get auxiliary information that is generated while logging for the purpose of writing out the log file. |
MessageChannel |
getRequestChannel()
Returns this transaction. |
java.lang.String |
getViaHost()
Get the host of the recipient. |
int |
getViaPort()
Get the port of the recipient. |
boolean |
hasPending()
Return true if this has a pending request |
boolean |
isMessagePartOfTransaction(SIPMessage messageToTest)
Deterines if the message is a part of this transaction. |
boolean |
isSecure()
Return true if this is a secure channel. |
void |
processPending()
Run any pending responses - gets called at the end of the event loop. |
void |
processResponse(SIPResponse transactionResponse,
MessageChannel sourceChannel)
Process a new response message through this transaction. |
void |
sendMessage(SIPMessage messageToSend)
Send a request message through this transaction and onto the client. |
void |
sendRequest()
Sends specified Request on a unique client
transaction identifier. |
void |
setResponseInterface(ServerResponseInterface newRespondTo)
Sets the real ResponseInterface this transaction encapsulates. |
void |
setState(javax.sip.TransactionState newState)
Sets a timeout after which the connection is closed (provided the server does not use the connection for outgoing requests in this time period) and calls the superclass to set state. |
クラス gov.nist.javax.sip.stack.MessageChannel から継承されたメソッド |
---|
getHostPort, getKey, getKey, getPeerHostPort, getRawIpSourceAddress, getViaHostPort, logResponse, sendMessage |
クラス java.lang.Object から継承されたメソッド |
---|
equals, getClass, notify, notifyAll, toString, wait, wait, wait |
インタフェース javax.sip.Transaction から継承されたメソッド |
---|
getBranchId, getDialog, getRequest, getRetransmitTimer, getState, setRetransmitTimer |
インタフェース gov.nist.javax.sip.stack.PendingRecord から継承されたメソッド |
---|
isTerminated |
メソッドの詳細 |
---|
public void setResponseInterface(ServerResponseInterface newRespondTo)
newRespondTo
- ResponseInterface to send messages to.public java.lang.String getProcessingInfo()
ServerResponseInterface
の記述:
ServerResponseInterface
内の getProcessingInfo
public MessageChannel getRequestChannel()
public boolean isMessagePartOfTransaction(SIPMessage messageToTest)
SIPTransaction
内の isMessagePartOfTransaction
messageToTest
- Message to check if it is part of this transaction.
public void sendMessage(SIPMessage messageToSend) throws java.io.IOException
SIPTransaction
内の sendMessage
messageToSend
- Request to process and send.
java.io.IOException
public void processResponse(SIPResponse transactionResponse, MessageChannel sourceChannel)
ServerResponseInterface
内の processResponse
transactionResponse
- Response to process.sourceChannel
- Channel that received this message.public void sendRequest() throws javax.sip.SipException
Request
on a unique client
transaction identifier. This method implies that the application is
functioning as either a User Agent Client or a Stateful proxy, hence the
underlying SipProvider acts statefully.
JAIN SIP defines a retransmission utility specific to user agent behaviour and the default retransmission behaviour for each method.
When an application wishes to send a message, it creates a Request message passes that Request to this method, this method returns the cleintTransactionId generated by the SipProvider. The Request message gets sent via the ListeningPoint that this SipProvider is attached to.
javax.sip.ClientTransaction
内の sendRequest
javax.sip.SipException
- if implementation cannot send request for any reasonpublic javax.sip.message.Request createCancel() throws javax.sip.SipException
javax.sip.ClientTransaction
内の createCancel
javax.sip.SipException
public javax.sip.message.Request createAck() throws javax.sip.SipException
javax.sip.ClientTransaction
内の createAck
javax.sip.SipException
- if transaction is in the wrong state to be acked.public int getViaPort()
SIPTransaction
内の getViaPort
public java.lang.String getViaHost()
SIPTransaction
内の getViaHost
public Via getOutgoingViaHeader()
public boolean isSecure()
MessageChannel
の記述:
SIPTransaction
内の isSecure
public void clearState()
public void setState(javax.sip.TransactionState newState)
SIPTransaction
内の setState
newState
- New state of this transaction.public void processPending()
PendingRecord
内の processPending
SIPTransaction
内の processPending
public boolean hasPending()
PendingRecord
の記述:
PendingRecord
内の hasPending
public void clearPending()
SIPTransaction
の記述:
PendingRecord
内の clearPending
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |