|
intra-mart 6.1.14 | ||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object jp.co.intra_mart.foundation.service.client.NetworkConnector
このクラスは、他のサーバで実行されるロジックを転送する ためのスケルトンを提供します。
サーバがネットワーク型構成で動作している場合は、ネットワーク通信を行い
目的のサーバにロジックを転送します。サーバがスタンドアロン型構成で動作
している場合は、そのサーバ内で直接ロジックを実行します。
このクラスを継承したサブクラスでは、他のサーバでロジックを実行するための
ネットワークコネクションを定義する必要があります。
また、サブクラスは直列化可能なクラスである必要があります。
サブクラスが直列化できない場合、ロジックの呼び出し時に例外がスローされます。
フィールドの概要 | |
protected static int |
GET
|
protected static int |
GET_ENTIRETY
|
protected static int |
GET_ENTIRETY_KEY
|
protected static int |
GET_ITEM
|
protected static int |
GET_ITEM_KEY
|
protected static int |
GET_SUBSET
|
protected static int |
MOVE
|
protected static int |
MOVE_ENTIRETY
|
protected static int |
MOVE_ITEM
|
protected static int |
REMOVE
|
protected static int |
REMOVE_ENTIRETY
|
protected static int |
REMOVE_ITEM
|
protected static int |
SET
|
protected static int |
SET_ENTIRETY
|
protected static int |
SET_ITEM
|
コンストラクタの概要 | |
protected |
NetworkConnector()
唯一のコンストラクタ。 |
メソッドの概要 | |
void |
close()
ネットワークを切断します。 |
protected abstract SocketConnection |
connection()
サーバに接続するためのコネクションを取得します。 |
Object |
execute(ActionListener target,
Object arg)
サーバに対して実行要求をします。 |
long |
freeMemory()
サーバシステムの空きメモリの量を返します。 |
boolean |
isConnected()
サーバとの接続状態をチェックします。 |
long |
serverTime()
サーバのミリ秒で表される現在の時間を返します。 |
long |
totalMemory()
サーバプロセスの Java Virtual Machine のメモリの総容量を返します。 |
クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
protected static final int SET
protected static final int SET_ITEM
protected static final int SET_ENTIRETY
protected static final int GET
protected static final int GET_ITEM
protected static final int GET_ENTIRETY
protected static final int GET_SUBSET
protected static final int GET_ITEM_KEY
protected static final int GET_ENTIRETY_KEY
protected static final int REMOVE
protected static final int REMOVE_ITEM
protected static final int REMOVE_ENTIRETY
protected static final int MOVE
protected static final int MOVE_ITEM
protected static final int MOVE_ENTIRETY
コンストラクタの詳細 |
protected NetworkConnector()
メソッドの詳細 |
protected abstract SocketConnection connection() throws UnsupportedNetworkConnectException, IOException
このメソッドは、サブクラスでオーバーライドする必要があります。
UnsupportedNetworkConnectException
- ネットワーク接続が許可されていない場合
IOException
- 入出力エラーが発生した場合public Object execute(ActionListener target, Object arg) throws IOException, RuntimeException, Error
サーバがスタンドアロン型で運用されている場合、
現在動作しているサーバ内で
リスナー ActionListener.action(Object)
を
実行し、その結果を返します。
サーバがネットワーク型で運用されている場合、connection()
メソッドにより取得したコネクションを利用してサーバに接続し、
リスナーオブジェクトを直列化して転送します。
接続先サーバでは、転送したリスナーオブジェクトを復元して
リスナーオブジェクトの ActionListener.action(Object)
を
実行します。実行結果はネットワークにより転送され、復元した後に、
このメソッドの実行結果として返します。
このメソッドに渡す引数は、直列化可能なオブジェクトに限ります。
引数を直列化できない場合、このメソッドは例外をスローします。
target
- サーバで実行するリスナーオブジェクトarg
- action() に渡す引数
InvalidClassException
- 直列化で使用されるクラスになんらかの不具合があった場合
StreamCorruptedException
- ストリームの制御情報に一貫性がない場合
OptionalDataException
- プリミティブデータが、オブジェクトではなくストリームに見つかった場合
NotSerializableException
- 直列化の対象が java.io.Serializable インタフェースを実装していない場合
IOException
- 入出力エラーが発生した場合
RuntimeException
- 実行時エラー
Error
- 致命的なエラーNetworkAgent.action(Object)
public boolean isConnected()
このメソッド実行時に取得したネットワークコネクションについて接続確認を
します。他のコネクションに関してはチェックしないため、このメソッドの
結果接続を確認できたとしても次のリクエストで取得したコネクションで
接続エラーが発生する場合があります。
public long serverTime() throws IOException
IOException
- 入出力エラーが発生した場合System.currentTimeMillis()
public long totalMemory() throws IOException
IOException
- 入出力エラーが発生した場合Runtime.totalMemory()
public long freeMemory() throws IOException
IOException
- 入出力エラーが発生した場合Runtime.freeMemory()
public void close() throws IOException
切断されるネットワークコネクションは、このメソッドを実行した時に、
このメソッド内でこのオブジェクトの connection() メソッドから
取得したコネクションに関してのみです。
IOException
- 入出力エラーが発生した場合
|
intra-mart 6.1.14 | ||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |