public class Packet
extends java.lang.Object
このクラスのpublicメソッドの多くは、RciとRciServerに使われることを想定しており、
クライアントユーザが直接呼び出すのは返却値を受け取るgetResult, toResult程度である。
遠隔メソッドコール時のパラメータ領域のクラスがリモートで変更された場合もクライアントで反映される。
publicにしている大きな理由は、パッケージ間のアクセスがjavaではそうせざるを得ないということだけではなく、
パケットを転送する際にオブジェクトをxmlにするためのXMLEncoderがpublicのsetter, getterを必要とするからである。
(そのためどこからも呼ばれないようなsetterも削除してはいけない。)
修飾子とタイプ | フィールドと説明 |
---|---|
protected java.lang.Exception |
exception
サーバで発生した例外
|
protected int |
instanceNumber
サーバ側でクラスのインスタンスを識別する番号
|
static java.lang.String |
OPTION_CALLBACK
サーバからイベント通知であることを示すオプション
|
static java.lang.String |
OPTION_LISTENER_HASHCODE
サーバでイベントを受け取るクラスのハッシュコード
|
static java.lang.String |
OPTION_LISTENER_NUMBER
サーバで発生したイベントをクライアントで受信してリスナーを起動する際に識別する番号
|
static java.lang.String |
OPTION_PARAMTYPES
パラメータの型を登録するオプション
|
protected java.util.HashMap<java.lang.Object,java.lang.Object> |
optionMap
各種オプションを保持する領域
|
protected java.lang.Object[] |
params
メソッド名を含む可変パラメータ
|
protected long |
requestId
要求に対する応答であることを識別する情報(特に使われていない)
|
protected java.lang.Object |
result
メソッドの返却値の相当するObject
|
protected java.lang.String |
serializedException
サーバで発生した例外をシリアライズする領域
|
protected java.lang.String[] |
serializedParams
パラメータをシリアライズして転送するための領域。
|
コンストラクタと説明 |
---|
Packet()
デフォルトコンストラクタ
|
修飾子とタイプ | メソッドと説明 |
---|---|
static <T> T |
cast(T to,
java.lang.Object from) |
static java.lang.Class<?> |
convertPrimitive(java.lang.Object obj)
オブジェクトの型を求める
|
static boolean |
copyObject(java.lang.Object from,
java.lang.Object to)
オブジェクトをコピーする。
|
static byte[] |
deBase64Byte(java.lang.String text)
Base64文字列形式をバイナリに変換する。
|
static byte[] |
deDumpByte(java.lang.String text)
Base64形式をバイナリに変換する。
|
static byte[] |
deHexByte(java.lang.String text)
16進数文字列形式をバイナリに変換する。
|
void |
deSerializeParam()
パラメータをデシリアライズする。
|
static java.lang.String |
enBase64Byte(byte[] buf)
バイナリの文字列(Base64)形式を返す
|
static java.lang.String |
enDumpByte(byte[] buf)
バイナリの文字列(Base64)形式を返す
|
static java.lang.String |
enHexByte(byte[] buf)
バイナリの文字列(16進数)形式を返す
|
void |
enSerializeParam()
パラメータをシリアライズする。
|
static java.lang.Object |
getDecode(byte[] buf)
オブジェクトをデシリアライズする。
|
static java.lang.Object |
getDecodeStr(java.lang.String obj) |
static java.lang.Object |
getDecodeXML(java.lang.String xmlObject)
XML形式の文字列からObjectを生成する。
|
static byte[] |
getEncode(java.lang.Object obj)
オブジェクトをシリアライズする。
|
static java.lang.String |
getEncodeStr(java.lang.Object obj)
オブジェクトをシリアライズしBase64にして返す。
|
static java.lang.String |
getEncodeXML(java.lang.Object obj)
ObjectをXML形式の文字列として返す。
|
java.lang.Exception |
getException()
サーバで発生した例外を取得する。
|
int |
getInstanceNumber()
インスタンス番号を取得する。
|
static java.lang.String |
getMethodName()
実行しているメソッド名を取得する。
|
java.util.HashMap<java.lang.Object,java.lang.Object> |
getOptionMap()
オプションマップを取得する。
|
java.lang.Object[] |
getParams()
パラメータを取得する。
|
long |
getRequestId()
要求電文と応答電文を関連づけるリクエストIDを取得する。
|
java.lang.Object |
getResult()
サーバで実行したメソッドの返却値相当を受け取る
|
java.lang.String |
getSerializedException()
シリアライズされたサーバで発生した例外を取得する。
|
java.lang.String[] |
getSerializedParams()
シリアライズされたパラメータを取得する。
|
static java.lang.Boolean |
isPrimitive(java.lang.Object obj)
オブジェクトのラッパークラスがプリミティブ型ならtrueを返す。
|
void |
setException(java.lang.Exception exception)
サーバで発生した例外を設定する。
|
void |
setInstanceNumber(int instanceNumber)
インスタンス番号を設定する。
|
void |
setOptionMap(java.util.HashMap<java.lang.Object,java.lang.Object> optionMap)
オプションマップを設定する。
|
void |
setParams(java.lang.Object[] params)
パラメータを設定する。
|
void |
setRequestId(long requestId)
要求電文と応答電文を関連づけるリクエストIDを設定する。
|
void |
setResult(java.lang.Object result)
遠隔メソッドコールの返却値を設定する。
|
void |
setSerializedException(java.lang.String serializedException)
シリアライズされたサーバで発生した例外を設定する。
|
void |
setSerializedParams(java.lang.String[] serializedParams)
シリアライズされたパラメータを設定する。
|
<T> T |
toResult(T to) |
public static final java.lang.String OPTION_LISTENER_NUMBER
public static final java.lang.String OPTION_CALLBACK
public static final java.lang.String OPTION_LISTENER_HASHCODE
public static final java.lang.String OPTION_PARAMTYPES
protected long requestId
protected java.lang.Object[] params
protected java.lang.String[] serializedParams
protected int instanceNumber
protected java.lang.Object result
protected java.lang.Exception exception
protected java.lang.String serializedException
protected java.util.HashMap<java.lang.Object,java.lang.Object> optionMap
public long getRequestId()
public void setRequestId(long requestId)
requestId
- リクエストIDpublic java.lang.String[] getSerializedParams()
public void setSerializedParams(java.lang.String[] serializedParams)
serializedParams
- シリアライズされたパラメータpublic java.util.HashMap<java.lang.Object,java.lang.Object> getOptionMap()
public void setOptionMap(java.util.HashMap<java.lang.Object,java.lang.Object> optionMap)
optionMap
- オプションマップpublic java.lang.Object[] getParams()
public void setParams(java.lang.Object[] params)
params
- パラメータpublic int getInstanceNumber()
public void setInstanceNumber(int instanceNumber)
instanceNumber
- インスタンス番号public java.lang.Object getResult()
public <T> T toResult(T to)
public void setResult(java.lang.Object result)
result
- 返却値public java.lang.Exception getException()
public void setException(java.lang.Exception exception)
exception
- 例外public java.lang.String getSerializedException()
public void setSerializedException(java.lang.String serializedException)
serializedException
- シリアライズされたBase64例外public void enSerializeParam() throws java.io.IOException
java.io.IOException
- IO例外public void deSerializeParam() throws java.lang.Exception
java.lang.Exception
- 何らかの例外public static java.lang.String getEncodeXML(java.lang.Object obj) throws java.io.IOException
obj
- Objectjava.io.IOException
- IO例外public static java.lang.Object getDecodeXML(java.lang.String xmlObject) throws java.io.IOException
xmlObject
- Objectのxml形式java.io.IOException
- IO例外public static java.lang.String getEncodeStr(java.lang.Object obj) throws java.io.IOException
obj
- Obejctjava.io.IOException
- IO例外public static byte[] getEncode(java.lang.Object obj) throws java.io.IOException
obj
- Obejctjava.io.IOException
- IO例外public static java.lang.Object getDecodeStr(java.lang.String obj) throws java.lang.Exception
java.lang.Exception
public static java.lang.Object getDecode(byte[] buf) throws java.io.IOException, java.lang.ClassNotFoundException
buf
- Objectシリアライズjava.io.IOException
- IO例外java.lang.ClassNotFoundException
- クラスが見つからないpublic static java.lang.String enDumpByte(byte[] buf)
buf
- バイナリpublic static java.lang.String enHexByte(byte[] buf)
buf
- バイナリpublic static java.lang.String enBase64Byte(byte[] buf)
buf
- バイナリpublic static byte[] deDumpByte(java.lang.String text)
text
- Base64形式public static byte[] deHexByte(java.lang.String text)
text
- 16進数文字列public static byte[] deBase64Byte(java.lang.String text)
text
- Base64形式文字列public static java.lang.String getMethodName()
public static boolean copyObject(java.lang.Object from, java.lang.Object to) throws java.lang.IllegalArgumentException, java.lang.IllegalAccessException
from
- コピー元Objectto
- コピー先Objectjava.lang.IllegalArgumentException
- パラメータエラーjava.lang.IllegalAccessException
- 不正アクセスpublic static java.lang.Class<?> convertPrimitive(java.lang.Object obj)
obj
- Objectpublic static java.lang.Boolean isPrimitive(java.lang.Object obj)
obj
- オブジェクトpublic static <T> T cast(T to, java.lang.Object from)