gov.nist.javax.sip.stack
クラス UDPMessageProcessor

java.lang.Object
  上位を拡張 gov.nist.javax.sip.stack.MessageProcessor
      上位を拡張 gov.nist.javax.sip.stack.UDPMessageProcessor
すべての実装されたインタフェース:
java.lang.Runnable

public class UDPMessageProcessor
extends MessageProcessor

Sit in a loop and handle incoming udp datagram messages. For each Datagram packet, a new UDPMessageChannel is created (upto the max thread pool size). Each UDP message is processed in its own thread).

バージョン:
JAIN-SIP-1.1 $Revision: 1.21 $ $Date: 2004/09/26 14:48:03 $
作成者:
M. Ranganathan
This code is in the public domain. See the implementation sequence diagram for processing incoming requests. Acknowledgement: Jeff Keyser contributed ideas on starting and stoppping the stack that were incorporated into this code. Niklas Uhrberg suggested that thread pooling be added to limit the number of threads and improve performance.

メソッドの概要
 MessageChannel createMessageChannel(HostPort targetHostPort)
          Create and return new TCPMessageChannel for the given host/port.
 MessageChannel createMessageChannel(java.net.InetAddress host, int port)
          Create a message channel for the specified host/port.
 int getDefaultTargetPort()
          Default target port for UDP
 int getMaximumMessageSize()
          UDP can handle a message as large as the MAX_DATAGRAM_SIZE.
 int getPort()
          Get port on which to listen for incoming stuff.
 SIPMessageStack getSIPStack()
          Returns the stack.
 java.lang.Thread getThread()
          Get my thread.
 java.lang.String getTransport()
          Return the transport string.
 boolean inUse()
          Return true if there are any messages in use.
 boolean isSecure()
          UDP is not a secure protocol.
 void run()
          Thread main routine.
 void start()
          Start our processor thread.
 void stop()
          Shut down the message processor.
 
クラス gov.nist.javax.sip.stack.MessageProcessor から継承されたメソッド
getViaHeader
 
クラス java.lang.Object から継承されたメソッド
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

メソッドの詳細

getThread

public java.lang.Thread getThread()
Get my thread.

定義:
クラス MessageProcessor 内の getThread

getPort

public int getPort()
Get port on which to listen for incoming stuff.

定義:
クラス MessageProcessor 内の getPort
戻り値:
port on which I am listening.

start

public void start()
           throws java.io.IOException
Start our processor thread.

定義:
クラス MessageProcessor 内の start
例外:
java.io.IOException

run

public void run()
Thread main routine.

定義:
インタフェース java.lang.Runnable 内の run
定義:
クラス MessageProcessor 内の run

stop

public void stop()
Shut down the message processor. Close the socket for recieving incoming messages.

定義:
クラス MessageProcessor 内の stop

getTransport

public java.lang.String getTransport()
Return the transport string.

定義:
クラス MessageProcessor 内の getTransport
戻り値:
the transport string

getSIPStack

public SIPMessageStack getSIPStack()
Returns the stack.

定義:
クラス MessageProcessor 内の getSIPStack
戻り値:
my sip stack.

createMessageChannel

public MessageChannel createMessageChannel(HostPort targetHostPort)
                                    throws java.net.UnknownHostException
Create and return new TCPMessageChannel for the given host/port.

定義:
クラス MessageProcessor 内の createMessageChannel
戻り値:
New MessageChannel for this processor.
例外:
java.net.UnknownHostException

createMessageChannel

public MessageChannel createMessageChannel(java.net.InetAddress host,
                                           int port)
                                    throws java.io.IOException
クラス MessageProcessor の記述:
Create a message channel for the specified host/port.

定義:
クラス MessageProcessor 内の createMessageChannel
戻り値:
New MessageChannel for this processor.
例外:
java.io.IOException

getDefaultTargetPort

public int getDefaultTargetPort()
Default target port for UDP

定義:
クラス MessageProcessor 内の getDefaultTargetPort

isSecure

public boolean isSecure()
UDP is not a secure protocol.

定義:
クラス MessageProcessor 内の isSecure

getMaximumMessageSize

public int getMaximumMessageSize()
UDP can handle a message as large as the MAX_DATAGRAM_SIZE.

定義:
クラス MessageProcessor 内の getMaximumMessageSize

inUse

public boolean inUse()
Return true if there are any messages in use.

定義:
クラス MessageProcessor 内の inUse