javax.servlet.sip
インタフェース Address

すべてのスーパーインタフェース:
java.lang.Cloneable

public interface Address
extends java.lang.Cloneable

From、ToおよびContractのヘッダなどに使用するSIPアドレスを表します。
アプリケーションがAddressを使用するのは、ユーザエージェントクライアント(UAC)としてリクエストを送る時、また受信リクエストをリダイレクトする時です。
アドレスは、多数のSIPヘッダに表示され、通常RFC3261の(constituent non-terminals are defined in the SIP specification)の文法の準拠します。
(name-addr / addr-spec) *(SEMI generic-params)
Addressは、URI、任意の表示名およびname-valueパラメータで構成されます。

Addressインターフェースは、上記に定義するとおり、1つ以上のアドレスを含むために定義されたすべてのヘッダーの値を表すために使用されます。
From、ToおよびContactは別にして、これにはP-Asserted-Identity、P-Preferred-IdentityおよびPathのような拡張ヘッダのみならず、
Route、Record-Route、Reply-To、Alert-Info、Call-InfoおよびError-Infoが含まれます。

Addressオブジェクトは、 SipFactory.createAddressメソッドの一つを使用して作成することができ、
SipServletMessage.getAddressHeader(java.lang.String) とSipServletMessage.getAddressHeaders(java.lang.String)
を使用してメッセージから入手できます。


メソッドの概要
 java.lang.Object clone()
          このAddressのクローンを返します。
 java.lang.String getDisplayName()
          このAddressの表示名を返します。
 int getExpires()
          "expires"パラメータの値をデルタ秒として返します。
 java.lang.String getParameter(java.lang.String name)
          指定されたパラメータの値を返します。
 java.util.Iterator getParameterNames()
          このAddressのすべてのパラメータを、Iteratorのデータとして返します。
 float getQ()
          このAddressの"q"パラメータの値を返します。"
 URI getURI()
          このAddressのURIコンポーネントを返します。
 boolean isWildcard()
          このAddressが"wildcard"コンタクトアドレスを表す場合には、trueを返します。
 void removeParameter(java.lang.String name)
          指定された名前のパラメータを削除します。
 void setDisplayName(java.lang.String name)
          このAddressの表示名を設定します。
 void setExpires(int seconds)
          "expires"パラメータの値を設定します。
 void setParameter(java.lang.String name, java.lang.String value)
          指定されたパラメータの値を設定します。
 void setQ(float q)
          このAddressの qvalueを設定します。
 void setURI(URI uri)
          このAddressのURIを設定します。
 java.lang.String toString()
          このアドレスの値をStringとして返します。
 

メソッドの詳細

clone

public java.lang.Object clone()
このAddressのクローンを返します。クローン化したAddressは、同一の表示名、URIおよびパラメータを持ちます。
ただし、タグパラメータは持ちませ。これは、クローン化したアドレスは、SipFactory.createRequestに対する引数として使用することができることを意味します。

戻り値:
このAddressのクローンを返します。

getDisplayName

public java.lang.String getDisplayName()
このAddressの表示名を返します。これは通常、発呼側または着呼側の本当の名前で、 例えば警告時などにユーザエージェントにより提供される可能性があります。

戻り値:
このAddressの表示名を返す。存在しない場合にはnullを返す。

getExpires

public int getExpires()
"expires"パラメータの値をデルタ秒として返します。

戻り値:
デルタ秒で計測された"expires"パラメータの値を返します。パラメータが存在しない場合には、-1を返します。

getParameter

public java.lang.String getParameter(java.lang.String name)
指定されたパラメータの値を返します。長さが0のStringは、フラグパラメータを示します。

パラメータ:
name - パラメータの名前
戻り値:
指定されたパラメータの値を返します。

getParameterNames

public java.util.Iterator getParameterNames()
このAddressのすべてのパラメータを、Iteratorのデータとして返します。

戻り値:
このAddressのパラメータの名前であるStringオブジェクトを、Iteratorのデータとして返します。

getQ

public float getQ()
このAddressの"q"パラメータの値を返します。"qvalue"は、ロケーションのなかでの相対的優先を示します。
"qvalue"値は、0から1の10進数で、値が高いほど優先度が高いことを示します。

戻り値:
このAddressのqvalueを返します。これが設定されていなければ、-1.0を返します。

getURI

public URI getURI()
このAddressのURIコンポーネントを返します。 このメソッドは、ワイルドカードアドレスに対してnullを返します。(isWildcard()参照のこと。) 非ワイルドカードアドレスについては、結果は常に非nullとなります。

戻り値:
このAddressのURIを返します。

isWildcard

public boolean isWildcard()
このAddressが"wildcard"コンタクトアドレスを表す場合には、trueを返します。
これは、文字列の値が"*"であるContactヘッダーを表す場合です。同様に、SipFactory.createAddress("*")は常にワイルドカードAddressインスタンスを返します。

戻り値:
このAddressが"wildcard"コンタクトアドレスを表す場合にはtrueを戻し、そうでない場合にはfalseを返します。

removeParameter

public void removeParameter(java.lang.String name)
指定された名前のパラメータを削除します。

パラメータ:
name - パラメータの名前
例外:
java.lang.IllegalStateException - このAddressが、修正できないコンテキストで使用されている場合に、java.lang.IllegalStateExceptionをスローします。

setDisplayName

public void setDisplayName(java.lang.String name)
このAddressの表示名を設定します。

パラメータ:
name - ディスプレイ名
例外:
java.lang.IllegalStateException - このAddressが、修正できないコンテキストで使用されている場合には、java.lang.IllegalStateExceptionをスローします。

setExpires

public void setExpires(int seconds)
"expires"パラメータの値を設定します。

パラメータ:
seconds - 秒数を返します。"expires"パラメータの新しい相対的な値です。負の値は"expires"パラメータを削除します。

setParameter

public void setParameter(java.lang.String name,
                         java.lang.String value)
指定されたパラメータの値を設定します。長さが0のStringは、フラグパラメータを示します。

パラメータ:
name - パラメータの名前
value - パラメータの値
例外:
java.lang.IllegalStateException - このAddressが、修正できないコンテキストで使用されている場合に、java.lang.IllegalStateExceptionをスローします。

setQ

public void setQ(float q)
このAddressの qvalueを設定します。

パラメータ:
q - このAddressに対する新しいqvalue、またはqvalueを削除するには-1
例外:
java.lang.IllegalArgumentException - 新しいqvalueが0.0と1.0の間(0.0と1.0を含む)でなく、また-1.0でない場合は、java.lang.IllegalArgumentExceptionをスローします。

setURI

public void setURI(URI uri)
このAddressのURIを設定します。

パラメータ:
uri - このAddressに対する新しいURI
例外:
java.lang.IllegalStateException - このAddressが、修正できないコンテキストで使用されている場合に、java.lang.IllegalStateExceptionをスローします。

toString

public java.lang.String toString()
このアドレスの値をStringとして返します。結果の文字列は、SIPのFromまたはToヘッダの有効な値でなければなりません。

戻り値:
このAddressの値をStringとして返します。