personal.sakaki.io
クラス ObexConnection

java.lang.Object
  上位を拡張 personal.sakaki.io.ObexConnection
直系の既知のサブクラス:
ObexClientConnection, ObexServerConnection

public abstract class ObexConnection
extends java.lang.Object

INFRARED DATA ASSOCIATION(IrDA)が規定するデータ交換用プロトコル「Object Exchange Protocol(OBEX)」を処理するクラスが共通で行う処理を提供する抽象クラスです。 アプリケーションがこのクラスを直接使用する必要はありません。

このクラスの設計はNTTドコモ規定によるDoCoMoProfile-3.0(DoJa-3.0)を参考として、Java 2 Platform, Standard Edition向けに必要と思われる処理とOBEX 1.2仕様の広範囲なサポートを可能とするための処理を付加したものを採用しています。

OBEXクライアントはObexClientConnectionクラス、OBEXサーバーはObexServerConnectionクラスにて処理を担当します。

このOBEXライブラリのAPIで取り扱う日時情報は常にローカル時間です。 タイムゾーンの設定に基づいているため、サマータイムが適用される地域では適切にサマータイムを処理します(日本時間固定という処理は一切行っていません)。

警告:このAPIはINFRARED DATA ASSOCIATION(IrDA)およびNTTドコモとは関係ありません。両者に本APIに関する問い合わせを行うことを禁じます。

作成者:
さかきけい

フィールドの概要
static int ABORT
          ABORTオペレーションを示す定数(=0xff)です。
static int ACCEPTED
          許可したを示すレスポンス定数(=0x22)です。
static int ASCII
          Realmの文字コードがASCIIであることを示す定数(=0)です。
static int BAD_GATEWAY
          ゲートウェイが不正であることを示すレスポンス定数(=0x52)です。
static int BAD_REQUEST
          不正な要求が行われたことを示すレスポンス定数(=0x40)です。
static int CONFLICT
          リクエストが衝突したことを示すレスポンス定数(=0x49)です。
static int CONNECT
          CONNECTオペレーションを示す定数(=0x80)です。
static int CONTINUE
          継続して処理を行うことを示すレスポンス定数(=0x10)です。
static int CREATED
          作成したことを示すレスポンス定数(=0x21)です。
static int DATABASE_FULL
          データベースが満杯であることを示すレスポンス定数(=0x60)です。
static int DATABASE_LOCKED
          データベースがロックされていることを示すレスポンス定数(=0x61)です。
static int DISCONNECT
          DISCONNECTオペレーションを示す定数(=0x81)です。
static int FORBIDDEN
          許可されていないことを示すレスポンス定数(=0x43)です。
static int GATEWAY_TIMEOUT
          ゲートウェイがタイムアウトしたことを示すレスポンス定数(=0x54)です。
static int GET
          最初あるいは途中のGETオペレーションを示す定数(=0x83)です。
static int GONE
          存在しないことを示すレスポンス定数(=0x4a)です。
static int HTTP_VERSION_NOT_SUPPORTED
          指定されたHTTPのバージョンをサポートしていないことを示すレスポンス定数(=0x55)です。
static int INTERNAL_SERVER_ERROR
          サーバ内部で問題が発生したことを示すレスポンス定数(=0x50)です。
static int ISO_8859_1
          Realmの文字コードがISO-8859-1であることを示す定数(=1)です。
static int ISO_8859_2
          Realmの文字コードがISO-8859-2であることを示す定数(=2)です。
static int ISO_8859_3
          Realmの文字コードがISO-8859-3であることを示す定数(=3)です。
static int ISO_8859_4
          Realmの文字コードがISO-8859-4であることを示す定数(=4)です。
static int ISO_8859_5
          Realmの文字コードがISO-8859-5であることを示す定数(=5)です。
static int ISO_8859_6
          Realmの文字コードがISO-8859-6であることを示す定数(=6)です。
static int ISO_8859_7
          Realmの文字コードがISO-8859-7であることを示す定数(=7)です。
static int ISO_8859_8
          Realmの文字コードがISO-8859-8であることを示す定数(=8)です。
static int ISO_8859_9
          Realmの文字コードがISO-8859-9であることを示す定数(=9)です。
static int LENGTH_REQUIRED
          長さの指定が必要なことを示すレスポンス定数(=0x4b)です。
static int METHOD_NOT_ALLOWED
          指定されたメソッドが許可されないことを示すレスポンス定数(=0x45)です。
static int MOVED_PERMANENTLY
          コンテンツが恒久的に移動したことを示すレスポンス定数(=0x31)です。
static int MOVED_TEMPORARY
          コンテンツが一時的に移動したことを示すレスポンス定数(=0x32)です。
static int MULTIPLE_CHOICES
          複数の選択肢があることを示すレスポンス定数(=0x30)です。
static int NO_CONTENT
          コンテンツが存在しないことを示すレスポンス定数(=0x24)です。
static int NON_AUTHORITATIVE_INFO
          認証されていない情報であることを示すレスポンス定数(=0x23)です。
static int NOT_ACCEPTABLE
          許容されないことを示すレスポンス定数(=0x46)です。
static int NOT_FOUND
          存在しないことを示すレスポンス定数(=0x44)です。
static int NOT_IMPLEMENTED
          実装されていないことを示すレスポンス定数(=0x51)です。
static int NOT_MODIFIED
          変更されていないことを示すレスポンス定数(=0x34)です。
static int PARTICAL_CONTENT
          分割されたコンテンツであることを示すレスポンス定数(=0x26)です。
static int PAYMENT_REQUIRED
          支払いが必要なことを示すレスポンス定数(=0x42)です。
static int PRECONDITION_FAILED
          前提条件が不正なことを示すレスポンス定数(=0x4c)です。
static int PROXY_AUTHENTICATION_REQUIRED
          プロキシが認証を要求していることを示すレスポンス定数(=0x47)です。
static int PUT
          最初あるいは途中のPUTオペレーションを示す定数(=0x82)です。
static int REQUEST_TIME_OUT
          リクエストがタイムオーバーしたことを示すレスポンス定数(=0x48)です。
static int REQUEST_URL_TOO_LARGE
          URLが長すぎることを示すレスポンス定数(=0x4e)です。
static int REQUESTED_ENTITY_TOO_LARGE
          エンティティが長すぎることを示すレスポンス定数(=0x4d)です。
static int RESET_CONTENT
          コンテンツがリセットされたことを示すレスポンス定数(=0x25)です。
static int SEE_OTHER
          別途参照すべきであることを示すレスポンス定数(=0x33)です。
static int SERVICE_UNAVAILABLE
          サービスを提供する準備ができていないことを示すレスポンス定数(=0x53)です。
static int SETPATH
          SETPATHオペレーションを示す定数(=0x85)です。
static int SUCCESS
          処理が成功したことを示すレスポンス定数(=0x20)です。
static int UNAUTHORIZED
          認証されていないことを示すレスポンス定数(=0x41)です。
static int UNICODE
          Realmの文字コードがUnicodeであることを示す定数(=0xff)です。
static int UNSUPPORTED_MEDIA_TYPE
          指定されたメディアタイプをサポートしていないことを示すレスポンス定数(=0x4f)です。
static int USE_PROXY
          プロキシの使用が必要なことを示すレスポンス定数(=0x35)です。
 
メソッドの概要
 void addHttpHeader(java.lang.String strName, java.lang.String strValue)
          送信する際にHTTPヘッダで添付するHTTP/1.xのヘッダを追加します。
 void close()
          このオブジェクトで開いているリソースを全て開放します。
protected  void finalize()
          このオブジェクトが確保しているリソースを開放します。
 byte[] getBody()
          受信したパケットに含まれるBODYおよびEND-OF-BODYで受信したデータを返します。
 int getContentLength()
          1度のオペレーションに含まれるBODYおよびEND-OF-BODYヘッダによる情報を全てまとめたサイズを返します。
 long getCount()
          受信したパケットにCOUNTヘッダが存在した場合、その値を返します。
 java.lang.String getDescription()
          受信したパケットに含まれるDESCRIPTIONヘッダの内容を文字列で返します。
 java.lang.String getHttpHeader(java.lang.String strName)
          受信したパケットに含まれるHTTPヘッダによるHTTP/1.xのヘッダから指定した名前のものを取り出します。
 java.util.Enumeration getHttpHeaderNames()
          受信したパケットに含まれるHTTPヘッダによるHTTP/1.xのヘッダの名前の列挙を返します。
 java.lang.String getName()
          受信したパケットに含まれるNAMEヘッダの内容を文字列で返します。
 int getReceiveMTU()
          受信する際に1パケットに最大何バイトのデータを受け入れるかを返します。
 int getSendMTU()
          送信する際に1パケットに最大何バイトのデータを入れることができるかを返します。
 long getTime()
          受信したパケットに含まれるTIMEヘッダによる時間を返します。
 java.lang.String getType()
          受信したパケットに含まれるTYPEヘッダの内容を文字列で返します。
 java.io.DataInputStream openDataInputStream()
          受信したリクエストあるいはレスポンスに含まれるBODYヘッダの内容に接続したDataInputStreamオブジェクトを返します。
 java.io.DataOutputStream openDataOutputStream()
          BODYヘッダで送信するデータを書き込むためのDataOutputStreamオブジェクトを返します。
 java.io.InputStream openInputStream()
          受信したリクエストあるいはレスポンスに含まれるBODYヘッダの内容に接続したInputStreamオブジェクトを返します。
 java.io.OutputStream openOutputStream()
          BODYヘッダで送信するデータを書き込むためのOutputStreamオブジェクトを返します。
 void removeHttpHeader(java.lang.String strName)
          指定した名前を持つ、addHttpHeader(java.lang.String, java.lang.String)メソッドで設定したHTTP/1.xのヘッダを削除します。
 void setAuthenticator(ObexAuthenticator auth)
          個別のユーザーIDに対応するパスワード管理を行うオブジェクトを設定します。
 void setBody(byte[] body)
          送信する際にBODYおよびEND-OF-BODYヘッダで送信するデータを設定します。
 void setCount(long lCount)
          送信する際にCOUNTヘッダで送信する値を設定します。
 void setDescription(java.lang.String description)
          送信する際にDESCRIPTIONヘッダで送信する文字列を設定します。
 void setName(java.lang.String name)
          送信する際にNAMEヘッダで送信する文字列を設定します。
 void setPassword(java.lang.String password)
          認証に使用するパスワードを設定します。
 void setPrivateKey(java.lang.String strKey)
          認証に使用するプライベートキーを設定します。
 void setTime(long time)
          送信する際にTIMEヘッダで送信する時間を設定します。
 void setTimeFormat(boolean fDWord)
          推奨されていません。 OBEX 1.2仕様においてこの形式は「互換のためだけ(for compatibility only)」としているため、それに従い非推奨のAPIとします。
 void setType(java.lang.String type)
          送信する際にTYPEヘッダで送信する文字列を設定します。
 void setUserId(java.lang.String userid)
          認証に使用するユーザーIDを設定します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

CONTINUE

public static final int CONTINUE

継続して処理を行うことを示すレスポンス定数(=0x10)です。

関連項目:
定数フィールド値

SUCCESS

public static final int SUCCESS

処理が成功したことを示すレスポンス定数(=0x20)です。

関連項目:
定数フィールド値

CREATED

public static final int CREATED

作成したことを示すレスポンス定数(=0x21)です。

関連項目:
定数フィールド値

ACCEPTED

public static final int ACCEPTED

許可したを示すレスポンス定数(=0x22)です。

関連項目:
定数フィールド値

NON_AUTHORITATIVE_INFO

public static final int NON_AUTHORITATIVE_INFO

認証されていない情報であることを示すレスポンス定数(=0x23)です。

関連項目:
定数フィールド値

NO_CONTENT

public static final int NO_CONTENT

コンテンツが存在しないことを示すレスポンス定数(=0x24)です。

関連項目:
定数フィールド値

RESET_CONTENT

public static final int RESET_CONTENT

コンテンツがリセットされたことを示すレスポンス定数(=0x25)です。

関連項目:
定数フィールド値

PARTICAL_CONTENT

public static final int PARTICAL_CONTENT

分割されたコンテンツであることを示すレスポンス定数(=0x26)です。

関連項目:
定数フィールド値

MULTIPLE_CHOICES

public static final int MULTIPLE_CHOICES

複数の選択肢があることを示すレスポンス定数(=0x30)です。

関連項目:
定数フィールド値

MOVED_PERMANENTLY

public static final int MOVED_PERMANENTLY

コンテンツが恒久的に移動したことを示すレスポンス定数(=0x31)です。

関連項目:
定数フィールド値

MOVED_TEMPORARY

public static final int MOVED_TEMPORARY

コンテンツが一時的に移動したことを示すレスポンス定数(=0x32)です。

関連項目:
定数フィールド値

SEE_OTHER

public static final int SEE_OTHER

別途参照すべきであることを示すレスポンス定数(=0x33)です。

関連項目:
定数フィールド値

NOT_MODIFIED

public static final int NOT_MODIFIED

変更されていないことを示すレスポンス定数(=0x34)です。

関連項目:
定数フィールド値

USE_PROXY

public static final int USE_PROXY

プロキシの使用が必要なことを示すレスポンス定数(=0x35)です。

関連項目:
定数フィールド値

BAD_REQUEST

public static final int BAD_REQUEST

不正な要求が行われたことを示すレスポンス定数(=0x40)です。

関連項目:
定数フィールド値

UNAUTHORIZED

public static final int UNAUTHORIZED

認証されていないことを示すレスポンス定数(=0x41)です。

関連項目:
定数フィールド値

PAYMENT_REQUIRED

public static final int PAYMENT_REQUIRED

支払いが必要なことを示すレスポンス定数(=0x42)です。

関連項目:
定数フィールド値

FORBIDDEN

public static final int FORBIDDEN

許可されていないことを示すレスポンス定数(=0x43)です。

関連項目:
定数フィールド値

NOT_FOUND

public static final int NOT_FOUND

存在しないことを示すレスポンス定数(=0x44)です。

関連項目:
定数フィールド値

METHOD_NOT_ALLOWED

public static final int METHOD_NOT_ALLOWED

指定されたメソッドが許可されないことを示すレスポンス定数(=0x45)です。

関連項目:
定数フィールド値

NOT_ACCEPTABLE

public static final int NOT_ACCEPTABLE

許容されないことを示すレスポンス定数(=0x46)です。

関連項目:
定数フィールド値

PROXY_AUTHENTICATION_REQUIRED

public static final int PROXY_AUTHENTICATION_REQUIRED

プロキシが認証を要求していることを示すレスポンス定数(=0x47)です。

関連項目:
定数フィールド値

REQUEST_TIME_OUT

public static final int REQUEST_TIME_OUT

リクエストがタイムオーバーしたことを示すレスポンス定数(=0x48)です。

関連項目:
定数フィールド値

CONFLICT

public static final int CONFLICT

リクエストが衝突したことを示すレスポンス定数(=0x49)です。

関連項目:
定数フィールド値

GONE

public static final int GONE

存在しないことを示すレスポンス定数(=0x4a)です。

関連項目:
定数フィールド値

LENGTH_REQUIRED

public static final int LENGTH_REQUIRED

長さの指定が必要なことを示すレスポンス定数(=0x4b)です。

関連項目:
定数フィールド値

PRECONDITION_FAILED

public static final int PRECONDITION_FAILED

前提条件が不正なことを示すレスポンス定数(=0x4c)です。

関連項目:
定数フィールド値

REQUESTED_ENTITY_TOO_LARGE

public static final int REQUESTED_ENTITY_TOO_LARGE

エンティティが長すぎることを示すレスポンス定数(=0x4d)です。

関連項目:
定数フィールド値

REQUEST_URL_TOO_LARGE

public static final int REQUEST_URL_TOO_LARGE

URLが長すぎることを示すレスポンス定数(=0x4e)です。

関連項目:
定数フィールド値

UNSUPPORTED_MEDIA_TYPE

public static final int UNSUPPORTED_MEDIA_TYPE

指定されたメディアタイプをサポートしていないことを示すレスポンス定数(=0x4f)です。

関連項目:
定数フィールド値

INTERNAL_SERVER_ERROR

public static final int INTERNAL_SERVER_ERROR

サーバ内部で問題が発生したことを示すレスポンス定数(=0x50)です。

関連項目:
定数フィールド値

NOT_IMPLEMENTED

public static final int NOT_IMPLEMENTED

実装されていないことを示すレスポンス定数(=0x51)です。

関連項目:
定数フィールド値

BAD_GATEWAY

public static final int BAD_GATEWAY

ゲートウェイが不正であることを示すレスポンス定数(=0x52)です。

関連項目:
定数フィールド値

SERVICE_UNAVAILABLE

public static final int SERVICE_UNAVAILABLE

サービスを提供する準備ができていないことを示すレスポンス定数(=0x53)です。

関連項目:
定数フィールド値

GATEWAY_TIMEOUT

public static final int GATEWAY_TIMEOUT

ゲートウェイがタイムアウトしたことを示すレスポンス定数(=0x54)です。

関連項目:
定数フィールド値

HTTP_VERSION_NOT_SUPPORTED

public static final int HTTP_VERSION_NOT_SUPPORTED

指定されたHTTPのバージョンをサポートしていないことを示すレスポンス定数(=0x55)です。

関連項目:
定数フィールド値

DATABASE_FULL

public static final int DATABASE_FULL

データベースが満杯であることを示すレスポンス定数(=0x60)です。

関連項目:
定数フィールド値

DATABASE_LOCKED

public static final int DATABASE_LOCKED

データベースがロックされていることを示すレスポンス定数(=0x61)です。

関連項目:
定数フィールド値

CONNECT

public static final int CONNECT

CONNECTオペレーションを示す定数(=0x80)です。

関連項目:
定数フィールド値

DISCONNECT

public static final int DISCONNECT

DISCONNECTオペレーションを示す定数(=0x81)です。

関連項目:
定数フィールド値

PUT

public static final int PUT

最初あるいは途中のPUTオペレーションを示す定数(=0x82)です。

関連項目:
定数フィールド値

GET

public static final int GET

最初あるいは途中のGETオペレーションを示す定数(=0x83)です。

関連項目:
定数フィールド値

SETPATH

public static final int SETPATH

SETPATHオペレーションを示す定数(=0x85)です。

関連項目:
定数フィールド値

ABORT

public static final int ABORT

ABORTオペレーションを示す定数(=0xff)です。

関連項目:
定数フィールド値

ASCII

public static final int ASCII

Realmの文字コードがASCIIであることを示す定数(=0)です。

関連項目:
ObexServerConnection.setRealm(int, java.lang.String), 定数フィールド値

ISO_8859_1

public static final int ISO_8859_1

Realmの文字コードがISO-8859-1であることを示す定数(=1)です。

関連項目:
ObexServerConnection.setRealm(int, java.lang.String), 定数フィールド値

ISO_8859_2

public static final int ISO_8859_2

Realmの文字コードがISO-8859-2であることを示す定数(=2)です。

関連項目:
ObexServerConnection.setRealm(int, java.lang.String), 定数フィールド値

ISO_8859_3

public static final int ISO_8859_3

Realmの文字コードがISO-8859-3であることを示す定数(=3)です。

関連項目:
ObexServerConnection.setRealm(int, java.lang.String), 定数フィールド値

ISO_8859_4

public static final int ISO_8859_4

Realmの文字コードがISO-8859-4であることを示す定数(=4)です。

関連項目:
ObexServerConnection.setRealm(int, java.lang.String), 定数フィールド値

ISO_8859_5

public static final int ISO_8859_5

Realmの文字コードがISO-8859-5であることを示す定数(=5)です。

関連項目:
ObexServerConnection.setRealm(int, java.lang.String), 定数フィールド値

ISO_8859_6

public static final int ISO_8859_6

Realmの文字コードがISO-8859-6であることを示す定数(=6)です。

関連項目:
ObexServerConnection.setRealm(int, java.lang.String), 定数フィールド値

ISO_8859_7

public static final int ISO_8859_7

Realmの文字コードがISO-8859-7であることを示す定数(=7)です。

関連項目:
ObexServerConnection.setRealm(int, java.lang.String), 定数フィールド値

ISO_8859_8

public static final int ISO_8859_8

Realmの文字コードがISO-8859-8であることを示す定数(=8)です。

関連項目:
ObexServerConnection.setRealm(int, java.lang.String), 定数フィールド値

ISO_8859_9

public static final int ISO_8859_9

Realmの文字コードがISO-8859-9であることを示す定数(=9)です。

関連項目:
ObexServerConnection.setRealm(int, java.lang.String), 定数フィールド値

UNICODE

public static final int UNICODE

Realmの文字コードがUnicodeであることを示す定数(=0xff)です。

関連項目:
ObexServerConnection.setRealm(int, java.lang.String), 定数フィールド値
メソッドの詳細

getContentLength

public int getContentLength()

1度のオペレーションに含まれるBODYおよびEND-OF-BODYヘッダによる情報を全てまとめたサイズを返します。 返すべきデータが存在しない場合はRuntimeException例外クラスをthrowします。

戻り値:
1度のオペレーションに含まれる全てのBODYおよびEND-OF-BODYヘッダによるデータ長を返します。
例外:
java.lang.IllegalStateException - データを受信する前にこのメソッドを呼び出した場合にthrowします。

getCount

public long getCount()

受信したパケットにCOUNTヘッダが存在した場合、その値を返します。 データを受信する前にこのメソッドを呼び出した場合、IllegalStateException例外クラスをthrowします。

COUNTヘッダがデータに含まれていなかった場合は-1を返します。

戻り値:
COUNTヘッダによる値が返されます。
例外:
java.lang.IllegalStateException - データを受信する前にこのメソッドを呼び出した場合にthrowします。

setCount

public void setCount(long lCount)

送信する際にCOUNTヘッダで送信する値を設定します。 複数回設定した場合、最後に設定した値を送信します。

-1を渡すとCOUNTヘッダの送信を行いません。 また、送信する値は下位32ビットのみです。上位32ビットは無視します。

パラメータ:
lCount - COUNTヘッダで送信する値あるいは-1を渡します。

setName

public void setName(java.lang.String name)

送信する際にNAMEヘッダで送信する文字列を設定します。 複数回設定した場合、最後に設定した値を送信します。 nullが渡されると文字列を削除します。

パラメータ:
name - 送信する文字列を渡します。

getName

public java.lang.String getName()

受信したパケットに含まれるNAMEヘッダの内容を文字列で返します。 データを受信する前にこのメソッドを呼び出した場合、IllegalStateException例外クラスをthrowします。

NAMEヘッダがデータに含まれていなかった場合はnullを返します。

戻り値:
NAMEヘッダによって受信した文字列を返します。
例外:
java.lang.IllegalStateException - データを受信する前にこのメソッドを呼び出した場合にthrowします。

setType

public void setType(java.lang.String type)

送信する際にTYPEヘッダで送信する文字列を設定します。 複数回設定した場合、最後に設定した値を送信します。 nullが渡されると文字列を削除します。

パラメータ:
type - 送信する文字列を渡します。

getType

public java.lang.String getType()

受信したパケットに含まれるTYPEヘッダの内容を文字列で返します。 データを受信する前にこのメソッドを呼び出した場合、IllegalStateException例外クラスをthrowします。

TYPEヘッダがデータに含まれていなかった場合はnullを返します。

戻り値:
TYPEヘッダによって受信した文字列を返します。
例外:
java.lang.IllegalStateException - データを受信する前にこのメソッドを呼び出した場合にthrowします。

setTime

public void setTime(long time)

送信する際にTIMEヘッダで送信する時間を設定します。 設定する時間はローカルタイムです。

Long.MIN_VALUEを渡された場合、日時情報を削除します。

パラメータ:
time - 1970/1/1 00:00AM(GMT)からの経過ミリ秒数を渡します。

getTime

public long getTime()

受信したパケットに含まれるTIMEヘッダによる時間を返します。 データを受信する前にこのメソッドを呼び出した場合、IllegalStateException例外クラスをthrowします。

TIMEヘッダがデータに含まれていなかった場合はLong.MIN_VALUEを返します。

返される時間はローカルタイムです。

戻り値:
TIMEヘッダによって受信した1970/1/1 00:00AM(GMT)からの経過ミリ秒数を返します。
例外:
java.lang.IllegalStateException - データを受信する前にこのメソッドを呼び出した場合にthrowします。

setDescription

public void setDescription(java.lang.String description)

送信する際にDESCRIPTIONヘッダで送信する文字列を設定します。 複数回設定した場合、最後に設定した値を送信します。 nullが渡されると文字列を削除します。

パラメータ:
description - 送信する文字列を渡します。

getDescription

public java.lang.String getDescription()

受信したパケットに含まれるDESCRIPTIONヘッダの内容を文字列で返します。 データを受信する前にこのメソッドを呼び出した場合、IllegalStateException例外クラスをthrowします。

DESCRIPTIONヘッダがデータに含まれていなかった場合はnullを返します。

戻り値:
DESCRIPTIONヘッダによって受信した文字列を返します。
例外:
java.lang.IllegalStateException - データを受信する前にこのメソッドを呼び出した場合にthrowします。

setTimeFormat

public void setTimeFormat(boolean fDWord)
推奨されていません。 OBEX 1.2仕様においてこの形式は「互換のためだけ(for compatibility only)」としているため、それに従い非推奨のAPIとします。

日時を送信する際のフォーマットをDWORD形式にするか否かを指定します。 OBEX 1.2仕様では通常時間をISO8601形式で取り扱います。 しかし実装によってはこの形式を取り扱えないことがあることから、本メソッドを用意しました。 デフォルトではISO8601形式を使用します。

OBEXライブラリは、受信する時間がどちらの形式でも正しく取り扱えます。

このメソッドはできる限り使用すべきではありません。

パラメータ:
fDWord - trueを渡すとDWORD形式で、falseを渡すとISO8601形式で送信します。

addHttpHeader

public void addHttpHeader(java.lang.String strName,
                          java.lang.String strValue)

送信する際にHTTPヘッダで添付するHTTP/1.xのヘッダを追加します。 複数設定することが出来ますが、実際に送信することが出来るサイズは最大パケットサイズによって制限されます。

HTTPヘッダはOBEX仕様上オプションです。

パラメータ:
strName - 設定するHTTP/1.xヘッダの名前を渡します。
strValue - 設定するHTTP/1.xヘッダの値を渡します。
例外:
java.lang.NullPointerException - strNameあるいはstrValuenullの場合にthrowします。
関連項目:
removeHttpHeader(java.lang.String)

removeHttpHeader

public void removeHttpHeader(java.lang.String strName)

指定した名前を持つ、addHttpHeader(java.lang.String, java.lang.String)メソッドで設定したHTTP/1.xのヘッダを削除します。

パラメータ:
strName - 削除するHTTP/1.xヘッダの名前を渡します。
関連項目:
addHttpHeader(java.lang.String, java.lang.String)

getHttpHeader

public java.lang.String getHttpHeader(java.lang.String strName)

受信したパケットに含まれるHTTPヘッダによるHTTP/1.xのヘッダから指定した名前のものを取り出します。 対応するHTTP/1.xのヘッダが存在しない場合はnullを返します。

受信が完了する前にこのメソッドを呼び出すとIllegalStateException例外クラスをthrowします。

パラメータ:
strName - 取得するHTTP/1.xヘッダの名前を渡します。
戻り値:
指定されたヘッダの名前に対応する値あるいはnullを返します。
例外:
java.lang.IllegalStateException - データを受信する前にこのメソッドを呼び出した場合にthrowします。

getHttpHeaderNames

public java.util.Enumeration getHttpHeaderNames()

受信したパケットに含まれるHTTPヘッダによるHTTP/1.xのヘッダの名前の列挙を返します。 HTTPヘッダを受信していない場合も有効な列挙を返します。

受信が完了する前にこのメソッドを呼び出すとIllegalStateException例外クラスをthrowします。

戻り値:
受信したHTTP/1.xのヘッダの名前を列挙するオブジェクトを返します。
例外:
java.lang.IllegalStateException - データを受信する前にこのメソッドを呼び出した場合にthrowします。

setBody

public void setBody(byte[] body)

送信する際にBODYおよびEND-OF-BODYヘッダで送信するデータを設定します。 複数回設定した場合、最後に設定した値を送信します。 nullが渡されるとデータを削除します。

このメソッドで設定したデータはObexServerConnectionクラスのreceiveRequest()メソッドあるいはObexClientConnectionクラスのsendRequest()メソッドを使用した場合に限って送信します。

パラメータ:
body - 設定するデータを渡します。

getBody

public byte[] getBody()

受信したパケットに含まれるBODYおよびEND-OF-BODYで受信したデータを返します。 データを受信していない場合はnullを返します。

このメソッドはObexServerConnectionクラスのreceiveRequest()メソッドあるいはObexClientConnectionクラスのsendRequest()メソッドを使用してBODYあるいはEND-OF-BODYヘッダを受信した場合に限って取得できます。

受信が完了する前にこのメソッドを呼び出すとIllegalStateException例外クラスをthrowします。

戻り値:
受信したデータあるいはnullを返します。
例外:
java.lang.IllegalStateException - データを受信する前にこのメソッドを呼び出した場合にthrowします。

openInputStream

public java.io.InputStream openInputStream()
                                    throws java.io.IOException

受信したリクエストあるいはレスポンスに含まれるBODYヘッダの内容に接続したInputStreamオブジェクトを返します。 BODYヘッダを受信する前にこのメソッドを呼び出した場合IllegalStateException例外クラスをthrowします。

このメソッドはObexServerConnectionクラスのreceiveRequest()メソッドあるいはObexClientConnectionクラスのsendRequest()メソッドを使用してBODYあるいはEND-OF-BODYヘッダを受信した場合に限って取得できます。

受信が完了する前にこのメソッドを呼び出すとIllegalStateException例外クラスをthrowします。

戻り値:
BODYヘッダによる受信データへ接続したオブジェクトが返されます。
例外:
java.io.IOException - BODYヘッダを受信していない状態でこのメソッドを呼び出すとthrowされます。
java.lang.IllegalStateException - データを受信する前にこのメソッドを呼び出した場合にthrowします。

openDataInputStream

public java.io.DataInputStream openDataInputStream()
                                            throws java.io.IOException

受信したリクエストあるいはレスポンスに含まれるBODYヘッダの内容に接続したDataInputStreamオブジェクトを返します。 BODYヘッダを受信する前にこのメソッドを呼び出した場合RuntimeException例外クラスをthrowします。

このメソッドはObexServerConnectionクラスのreceiveRequest()メソッドあるいはObexClientConnectionクラスのsendRequest()メソッドを使用してBODYあるいはEND-OF-BODYヘッダを受信した場合に限って取得できます。

戻り値:
BODYヘッダによる受信データへ接続したオブジェクトが返されます。
例外:
java.io.IOException - BODYヘッダを受信していない状態でこのメソッドを呼び出すとthrowされます。
java.lang.IllegalStateException - データを受信する前にこのメソッドを呼び出した場合にthrowします。

openOutputStream

public java.io.OutputStream openOutputStream()
                                      throws java.io.IOException

BODYヘッダで送信するデータを書き込むためのOutputStreamオブジェクトを返します。 複数回このオブジェクトを取り出した場合、最後にクローズしたオブジェクトに書き込んだ情報が有効になります。

このメソッドで設定したデータはObexServerConnectionクラスのreceiveRequest()メソッドあるいはObexClientConnectionクラスのsendRequest()メソッドを使用した場合に限って送信します。

戻り値:
BODYヘッダとして送信するデータを受け取る出力ストリームオブジェクトが返されます。
例外:
java.io.IOException - 現在のリリースではthrowしませんが、互換性のために宣言しています。

openDataOutputStream

public java.io.DataOutputStream openDataOutputStream()
                                              throws java.io.IOException

BODYヘッダで送信するデータを書き込むためのDataOutputStreamオブジェクトを返します。 複数回このオブジェクトを取り出した場合、最後にクローズしたオブジェクトに書き込んだ情報が有効になります。

このメソッドで設定したデータはObexServerConnectionクラスのreceiveRequest()メソッドあるいはObexClientConnectionクラスのsendRequest()メソッドを使用した場合に限って送信します。

戻り値:
BODYヘッダとして送信するデータを受け取る出力ストリームオブジェクトが返されます。
例外:
java.io.IOException - 現在のリリースではthrowしませんが、互換性のために宣言しています。

finalize

protected void finalize()
                 throws java.lang.Throwable

このオブジェクトが確保しているリソースを開放します。

オーバーライド:
クラス java.lang.Object 内の finalize
例外:
java.lang.Throwable - finalize規定に基づきます。

getSendMTU

public int getSendMTU()

送信する際に1パケットに最大何バイトのデータを入れることができるかを返します。 ネゴシエーションが終了するまでは常に255バイトになります。 ネゴシエーションの終了後はOBEXソケットが取り扱うことができる最大バイト数かターゲットデバイスが取り扱うことができる最大バイト数のいずれか小さい方のバイト数になります。

このメソッドで1パケットの最大サイズを取得することにより、ヘッダーとして送信するデータのサイズをあらかじめ調整することができます。

戻り値:
送信時の1パケットの最大容量を返します。

getReceiveMTU

public int getReceiveMTU()

受信する際に1パケットに最大何バイトのデータを受け入れるかを返します。 ネゴシエーションが終了するまでは常に255バイトになります。 ネゴシエーションの終了後はOBEXソケットが取り扱うことができる最大バイト数になります。

通常、このメソッドを使用する意味はあまりないでしょう。

戻り値:
受信時の1パケットの最大容量を返します。

close

public void close()
           throws ObexException

このオブジェクトで開いているリソースを全て開放します。 以後そのオブジェクトで通信することは出来ません。

通信が不要になり次第、必ずこのメソッドを呼び出さなければなりません。 呼び出さなかった場合、リソースを確保しつづけて以後の動作に影響を与えることがあります。

このメソッドを複数回呼び出した場合、何も処理を行ないません。

例外:
ObexException - 何らかの理由でリソースの開放に失敗した場合に関連するステータスが設定されてthrowされます。

setPassword

public final void setPassword(java.lang.String password)

認証に使用するパスワードを設定します。 このメソッドで設定したパスワードはsetAuthenticator(personal.sakaki.io.ObexAuthenticator)メソッドよりも優先度が低く、同メソッドの設定が有効な場合はそちらが優先されます。

このパスワードはどのユーザーIDに対する場合およびユーザーIDを使用しない場合でも使用します。

ユーザーIDによってパスワードを使い分ける必要がある場合はsetAuthenticator(personal.sakaki.io.ObexAuthenticator)メソッドを使用してください。

パスワードにnullを渡すと設定されているパスワードを削除します。

パラメータ:
password - 設定するパスワードあるいはnullを渡します。
関連項目:
setAuthenticator(personal.sakaki.io.ObexAuthenticator)

setAuthenticator

public final void setAuthenticator(ObexAuthenticator auth)

個別のユーザーIDに対応するパスワード管理を行うオブジェクトを設定します。 オブジェクトの代わりにnullを渡すと対応するオブジェクトが設定されていない(=個別認証しない)状態になります。

パラメータ:
auth - ユーザーIDとパスワードを結びつけるオブジェクトを渡します。

setPrivateKey

public final void setPrivateKey(java.lang.String strKey)

認証に使用するプライベートキーを設定します。 デフォルトのキーを更新する場合に使用します。

認証を行う場合にはアプリケーション固有のプライベートキーを設定することを推奨します。

パラメータ:
strKey - 新たに設定するプライベートキーを表す文字列を渡します。
例外:
java.lang.NullPointerException - strKeynullを渡すとthrowされます。

setUserId

public void setUserId(java.lang.String userid)

認証に使用するユーザーIDを設定します。 このメソッドで設定したユーザーIDはObexConnectionクラスのsetAuthenticatorメソッドよりも優先度が低く、同メソッドの設定が有効な場合はそちらが優先されます。

ユーザーIDにnullを渡すと設定されているユーザーIDを削除します。

関連項目:
setAuthenticator(personal.sakaki.io.ObexAuthenticator)


本ライブラリは"さかきけい"が作成した無保証の評価目的専用のOBEXライブラリです。他の用途への転用は一切行えません。
記載された内容および本ライブラリには既知か否かに関らず誤りが含まれる可能性があり、一切保証はありません。本APIリファレンスおよび本ライブラリを使用した結果、不利益が生じたとしても"さかきけい"は一切の責任を負いません。
許可無く公開/非公開およびInternet/Intranet/LANを問わず他サイトに転載すること、複写および複製することを禁じます。

Copyright© 2002-2008 by KEI SAKAKI.
ALL RIGHTS RESERVED.
無断転載を禁じます。