Hitachi

インメモリデータグリッド Hitachi Elastic Application Data Store ユーザーズガイド


18.1.2 CacheManagerクラス

〈この項の構成〉

(1) 機能

EADSのキャッシュを管理するためのクラスです。

create()を実行して,EADSクライアントの初期設定をします。

EADSクライアントの使用を終了する場合は,必ずdestroy()を実行してください。

(2) 継承関係

java.lang.Object
 └com.hitachi.software.xeads.client.api.CacheManager

(3) 形式

public class CacheManager
extends java.lang.Object

(4) メソッド一覧

CacheManagerクラスが提供するメソッド一覧を次の表に示します。

メソッド名

説明

create()(パス指定)

クライアント定義に従って,EADSクライアントの初期設定をします。

create()(EADSクライアント名およびパス指定)

クライアント定義に従って,EADSクライアントの初期設定をします。

create()(入力ストリーム指定)

クライアント定義に従って,EADSクライアントの初期設定をします。

create()(EADSクライアント名および入力ストリーム指定)

クライアント定義に従って,EADSクライアントの初期設定をします。

create()(クライアント定義指定)

クライアント定義に従って,EADSクライアントの初期設定をします。

create()(EADSクライアント名およびクライアント定義指定)

クライアント定義に従って,EADSクライアントの初期設定をします。

getCache()

Cacheクラスのインスタンスを取得します。

removeCache()

キャッシュへのアクセスを終了します。

destroy()

EADSクライアントの使用を終了します。

getNodeList()

EADSクライアントが保持する接続先EADSサーバの情報を取得します。

【非推奨】getNode()

【非推奨】指定したkey(またはグループ)を格納する,本来のEADSサーバ(コピー元EADSサーバ)の情報を取得します。

getSlaveNodeList()

指定したEADSサーバに格納されているデータの,本来のコピー先EADSサーバの情報を取得します。

getCurrentMasterNode()

指定したkey(またはグループ)を現時点で格納する,コピー元EADSサーバの情報を取得します。

getOriginalMasterNode()

指定したkey(またはグループ)を格納する,本来のコピー元EADSサーバの情報を取得します。

addClusterEventListener()

クラスタイベントリスナを追加します。

addNodeEventListener()

ノードイベントリスナを追加します。

removeClusterEventListener()

クラスタイベントリスナを削除します。

removeNodeEventListener()

ノードイベントリスナを削除します。

(5) create()(パス指定)

(a) 機能

クライアント定義に従って,EADSクライアントの初期設定をします。

このメソッドを実行するたびに,通信タイムアウトを監視するスレッドと,クラスタを監視するスレッドが1つずつ生成されます。生成されたスレッドは,destroy()実行時に終了します。

EADSクライアントの初期設定で問題が発生した場合は,例外が返却されます。

クライアント定義のeads.client.eventListener.enableパラメタにtrueを指定していた場合は,次のように動作します。

  • 新たにイベントリスナ用のコネクションが生成されて,EADSサーバとの接続に成功すると,クラスタ構成情報の通知を受け取れる状態になります。生成されたコネクションは,destroy()実行時に削除されます。

  • クラスタイベントリスナおよびノードイベントリスナを実行するためのスレッドが1つ生成されます。生成されたスレッドは,destroy()実行時に終了します。

(b) 形式

public static CacheManager create(String fileName)
                           throws CacheException

(c) パラメータ

fileName

EADSクライアントのクライアント定義ファイルの格納先パス名を指定します。

nullまたは空文字列は不正となります。

(d) 戻り値

CacheManagerクラスのインスタンスが返却されます。

(e) 発生する例外

  • UserOperationException(ユーザの操作不正)

  • InitializeException(CacheManagerクラスの初期化失敗)

  • InternalClientException(EADSクライアントの内部エラー)

(f) 注意事項

  • EADSクライアントを同一マシンで複数同時に実行する場合は,それぞれ異なるログ出力先を指定してください。同一のログ出力先を指定した場合,動作は保証されません。ログ出力先の設定については,「8.4.2 ファイルの出力先の設定」を参照してください。

  • Java EEサーバ(uCosminexus Application Server)上で実行する場合,このメソッドの実行後,destroy()を実行しないとメモリリークとなるので必ず実行してください。

(6) create()(EADSクライアント名およびパス指定)

(a) 機能

クライアント定義に従って,EADSクライアントの初期設定をします。

このメソッドを実行するたびに,通信タイムアウトを監視するスレッドと,クラスタを監視するスレッドが1つずつ生成されます。生成されたスレッドは,destroy()実行時に終了します。

EADSクライアントの初期設定で問題が発生した場合は,例外が返却されます。

クライアント定義のeads.client.eventListener.enableパラメタにtrueを指定していた場合は,次のように動作します。

  • 新たにイベントリスナ用のコネクションが生成されて,EADSサーバとの接続に成功すると,クラスタ構成情報の通知を受け取れる状態になります。生成されたコネクションは,destroy()実行時に削除されます。

  • クラスタイベントリスナおよびノードイベントリスナを実行するためのスレッドが1つ生成されます。生成されたスレッドは,destroy()実行時に終了します。

(b) 形式

public static CacheManager create(String clientName, String fileName)
                           throws CacheException

(c) パラメータ

clientName

EADSクライアント名を指定します。

指定できるデータについては,「15.2.2(5) EADSクライアント名として指定できるデータ」を参照してください。

EADSクライアント名とログファイルの出力先の関係については,「8.4.2 ファイルの出力先の設定」を参照してください。

fileName

EADSクライアントのクライアント定義ファイルの格納先パス名を指定します。

nullまたは空文字列は不正となります。

(d) 戻り値

CacheManagerクラスのインスタンスが返却されます。

(e) 発生する例外

  • UserOperationException(ユーザの操作不正)

  • InitializeException(CacheManagerクラスの初期化失敗)

  • InternalClientException(EADSクライアントの内部エラー)

(f) 注意事項

  • EADSクライアントを同一マシンで複数同時に実行する場合は,それぞれ異なるログ出力先を指定してください。同一のログ出力先を指定した場合,動作は保証されません。ログ出力先の設定については,「8.4.2 ファイルの出力先の設定」を参照してください。

  • Java EEサーバ(uCosminexus Application Server)上で実行する場合,このメソッドの実行後,destroy()を実行しないとメモリリークとなるので必ず実行してください。

(7) create()(入力ストリーム指定)

(a) 機能

クライアント定義に従って,EADSクライアントの初期設定をします。

このメソッドを実行するたびに,通信タイムアウトを監視するスレッドと,クラスタを監視するスレッドが1つずつ生成されます。生成されたスレッドは,destroy()実行時に終了します。

EADSクライアントの初期設定で問題が発生した場合は,例外が返却されます。

クライアント定義のeads.client.eventListener.enableパラメタにtrueを指定していた場合は,次のように動作します。

  • 新たにイベントリスナ用のコネクションが生成されて,EADSサーバとの接続に成功すると,クラスタ構成情報の通知を受け取れる状態になります。生成されたコネクションは,destroy()実行時に削除されます。

  • クラスタイベントリスナおよびノードイベントリスナを実行するためのスレッドが1つ生成されます。生成されたスレッドは,destroy()実行時に終了します。

(b) 形式

public static CacheManager create(InputStream in)
                           throws CacheException

(c) パラメータ

in

EADSクライアントのクライアント定義ファイルを読み込む入力ストリームを指定します。

nullの場合は不正となります。

(d) 戻り値

CacheManagerクラスのインスタンスが返却されます。

(e) 発生する例外

  • UserOperationException(ユーザの操作不正)

  • InitializeException(CacheManagerクラスの初期化失敗)

  • InternalClientException(EADSクライアントの内部エラー)

(f) 注意事項

  • EADSクライアントを同一マシンで複数同時に実行する場合は,それぞれ異なるログ出力先を指定してください。同一のログ出力先を指定した場合,動作は保証されません。ログ出力先の設定については,「8.4.2 ファイルの出力先の設定」を参照してください。

  • Java EEサーバ(uCosminexus Application Server)上で実行する場合,このメソッドの実行後,destroy()を実行しないとメモリリークとなるので必ず実行してください。

(8) create()(EADSクライアント名および入力ストリーム指定)

(a) 機能

クライアント定義に従って,EADSクライアントの初期設定をします。

このメソッドを実行するたびに,通信タイムアウトを監視するスレッドと,クラスタを監視するスレッドが1つずつ生成されます。生成されたスレッドは,destroy()実行時に終了します。

EADSクライアントの初期設定で問題が発生した場合は,例外が返却されます。

クライアント定義のeads.client.eventListener.enableパラメタにtrueを指定していた場合は,次のように動作します。

  • 新たにイベントリスナ用のコネクションが生成されて,EADSサーバとの接続に成功すると,クラスタ構成情報の通知を受け取れる状態になります。生成されたコネクションは,destroy()実行時に削除されます。

  • クラスタイベントリスナおよびノードイベントリスナを実行するためのスレッドが1つ生成されます。生成されたスレッドは,destroy()実行時に終了します。

(b) 形式

public static CacheManager create(String clientName, InputStream in)
                           throws CacheException

(c) パラメータ

clientName

EADSクライアント名を指定します。

指定できるデータについては,「15.2.2(5) EADSクライアント名として指定できるデータ」を参照してください。

EADSクライアント名とログファイルの出力先の関係については,「8.4.2 ファイルの出力先の設定」を参照してください。

in

EADSクライアントのクライアント定義ファイルを読み込む入力ストリームを指定します。

nullの場合は不正となります。

(d) 戻り値

CacheManagerクラスのインスタンスが返却されます。

(e) 発生する例外

  • UserOperationException(ユーザの操作不正)

  • InitializeException(CacheManagerクラスの初期化失敗)

  • InternalClientException(EADSクライアントの内部エラー)

(f) 注意事項

  • EADSクライアントを同一マシンで複数同時に実行する場合は,それぞれ異なるログ出力先を指定してください。同一のログ出力先を指定した場合,動作は保証されません。ログ出力先の設定については,「8.4.2 ファイルの出力先の設定」を参照してください。

  • Java EEサーバ(uCosminexus Application Server)上で実行する場合,このメソッドの実行後,destroy()を実行しないとメモリリークとなるので必ず実行してください。

(9) create()(クライアント定義指定)

(a) 機能

クライアント定義に従って,EADSクライアントの初期設定をします。

このメソッドを実行するたびに,通信タイムアウトを監視するスレッドと,クラスタを監視するスレッドが1つずつ生成されます。生成されたスレッドは,destroy()実行時に終了します。

EADSクライアントの初期設定で問題が発生した場合は,例外が返却されます。

クライアント定義のeads.client.eventListener.enableパラメタにtrueを指定していた場合は,次のように動作します。

  • 新たにイベントリスナ用のコネクションが生成されて,EADSサーバとの接続に成功すると,クラスタ構成情報の通知を受け取れる状態になります。生成されたコネクションは,destroy()実行時に削除されます。

  • クラスタイベントリスナおよびノードイベントリスナを実行するためのスレッドが1つ生成されます。生成されたスレッドは,destroy()実行時に終了します。

(b) 形式

public static CacheManager create(Properties properties)
                           throws CacheException

(c) パラメータ

properties

EADSクライアントのクライアント定義を指定します。

nullの場合は不正となります。

(d) 戻り値

CacheManagerクラスのインスタンスが返却されます。

(e) 発生する例外

  • UserOperationException(ユーザの操作不正)

  • InitializeException(CacheManagerクラスの初期化失敗)

  • InternalClientException(EADSクライアントの内部エラー)

(f) 注意事項

  • EADSクライアントを同一マシンで複数同時に実行する場合は,それぞれ異なるログ出力先を指定してください。同一のログ出力先を指定した場合,動作は保証されません。ログ出力先の設定については,「8.4.2 ファイルの出力先の設定」を参照してください。

  • Java EEサーバ(uCosminexus Application Server)上で実行する場合,このメソッドの実行後,destroy()を実行しないとメモリリークとなるので必ず実行してください。

(10) create()(EADSクライアント名およびクライアント定義指定)

(a) 機能

クライアント定義に従って,EADSクライアントの初期設定をします。

このメソッドを実行するたびに,通信タイムアウトを監視するスレッドと,クラスタを監視するスレッドが1つずつ生成されます。生成されたスレッドは,destroy()実行時に終了します。

EADSクライアントの初期設定で問題が発生した場合は,例外が返却されます。

クライアント定義のeads.client.eventListener.enableパラメタにtrueを指定していた場合は,次のように動作します。

  • 新たにイベントリスナ用のコネクションが生成されて,EADSサーバとの接続に成功すると,クラスタ構成情報の通知を受け取れる状態になります。生成されたコネクションは,destroy()実行時に削除されます。

  • クラスタイベントリスナおよびノードイベントリスナを実行するためのスレッドが1つ生成されます。生成されたスレッドは,destroy()実行時に終了します。

(b) 形式

public static CacheManager create(String clientName, Properties properties)
                           throws CacheException

(c) パラメータ

clientName

EADSクライアント名を指定します。

指定できるデータについては,「15.2.2(5) EADSクライアント名として指定できるデータ」を参照してください。

EADSクライアント名とログファイルの出力先の関係については,「8.4.2 ファイルの出力先の設定」を参照してください。

properties

EADSクライアントのクライアント定義を指定します。

nullの場合は不正となります。

(d) 戻り値

CacheManagerクラスのインスタンスが返却されます。

(e) 発生する例外

  • UserOperationException(ユーザの操作不正)

  • InitializeException(CacheManagerクラスの初期化失敗)

  • InternalClientException(EADSクライアントの内部エラー)

(f) 注意事項

  • EADSクライアントを同一マシンで複数同時に実行する場合は,それぞれ異なるログ出力先を指定してください。同一のログ出力先を指定した場合,動作は保証されません。ログ出力先の設定については,「8.4.2 ファイルの出力先の設定」を参照してください。

  • Java EEサーバ(uCosminexus Application Server)上で実行する場合,このメソッドの実行後,destroy()を実行しないとメモリリークとなるので必ず実行してください。

(11) getCache()

(a) 機能

キャッシュへのアクセスを開始し,Cacheクラスのインスタンスを取得します。

また,removeCache()でアクセスを終了したキャッシュのインスタンスを再度開始状態にします。

キャッシュへのアクセス開始で問題が発生した場合は,例外が返却されます。

(b) 形式

public Cache getCache(String name)
               throws CacheException

(c) パラメータ

name

取得するCacheクラスのキャッシュ名を指定します。

指定できるデータについては,「15.2.2(4) キャッシュ名として指定できるデータ」を参照してください。

(d) 戻り値

指定したキャッシュ名に関連づけられたCacheクラスのインスタンスが返却されます。

すでに同じキャッシュ名を指定してgetCache()を実行している場合は,初回実行時と同じインスタンスが返却されます。

(e) 発生する例外

  • UserOperationException(ユーザの操作不正)

  • ServerCommunicationException(通信障害)

  • InternalServerException(EADSサーバの内部エラー)

  • InternalClientException(EADSクライアントの内部エラー)

(12) removeCache()

(a) 機能

キャッシュへのアクセスを終了します。

キャッシュのアクセス終了で問題が発生した場合は,例外が返却されます。

(b) 形式

public void removeCache(String name)
                 throws CacheException

(c) パラメータ

name

終了するCacheクラスのキャッシュ名を指定します。

指定できるデータについては,「15.2.2(4) キャッシュ名として指定できるデータ」を参照してください。

(d) 発生する例外

  • UserOperationException(ユーザの操作不正)

  • InternalClientException(EADSクライアントの内部エラー)

(e) 注意事項

同じキャッシュ名を指定して取得したすべてのキャッシュ(Cacheクラスのインスタンス)へのアクセスを終了するため,複数スレッドで実行している場合などは注意してください。

(13) destroy()

(a) 機能

すべてのキャッシュに対して終了処理を行い,EADSクライアントの使用を終了します。

destroy()を実行してEADSクライアントがすでに終了している場合は,CacheException.EAD_ERROR_CLIENT_FINALIZEDが返却されます。

クライアント定義のeads.client.eventListener.enableパラメタにtrueを指定していた場合は,次のように動作します。

  • クラスタイベントリスナおよびノードイベントリスナが存在する場合は,すべてのクラスタイベントリスナおよびノードイベントリスナを削除します。

  • すべてのEADSサーバ間で,イベントリスナ用のコネクションを切断します。

(b) 形式

public void destroy()
             throws CacheException

(c) 発生する例外

  • UserOperationException(ユーザの操作不正)

  • InternalClientException(EADSクライアントの内部エラー)

(d) 注意事項

  • destroy()はcreate()と対になるように実行してください。create()で取得したインスタンスにつき1度だけ実行してください。

  • Java EEサーバ(uCosminexus Application Server)上で実行する場合,このメソッドを実行しないとメモリリークとなるので必ず実行してください。

(14) getNodeList()

(a) 機能

EADSクライアントが保持する接続先EADSサーバの情報を取得します。

接続先EADSサーバの情報の取得で問題が発生した場合は,例外が返却されます。

(b) 形式

public Node[] getNodeList()
                   throws CacheException

(c) 戻り値

EADSクライアントが保持する接続先EADSサーバの情報が,Nodeクラスの配列として返却されます。

EADSサーバの状態に関係なく,すべてのEADSサーバの情報が返却されます。

(d) 発生する例外

  • UserOperationException(ユーザの操作不正)

  • InternalClientException(EADSクライアントの内部エラー)

(e) 注意事項

  • このメソッドの実行時には,EADSサーバへの通信は行われません。そのため,取得した情報が最新でないことがあります。

  • このメソッドの実行時には,EADSサーバの接続可否は考慮されません。そのため,取得した情報には,縮退状態などで接続できないEADSサーバが含まれていることがあります。取得したEADSサーバを接続先として使用する場合は,そのEADSサーバに接続できるかどうか,NodeクラスのisEnable()で確認してください。

    NodeクラスのisEnable()については,「18.1.3(6) isEnable()」を参照してください。

(15) 【非推奨】getNode()

参考

このメソッドは非推奨です。このメソッドの代わりに,CacheManagerクラスのgetOriginalMasterNode()を使用してください。

(a) 機能

指定したkey(またはグループ)を格納する,本来のコピー元EADSサーバの情報を取得します。

本来のコピー元EADSサーバとは,クラスタを構成するすべてのEADSサーバが正常に接続できる場合に,指定したkey(またはグループ)のコピー元のデータを格納するEADSサーバのことです。

(b) 形式

public Node getNode(String key)
             throws CacheException

(c) パラメータ

key

key(またはグループ)を指定します。

指定できるデータについては,「15.2.2(1) keyとして指定できるデータ」を参照してください。

(d) 戻り値

指定したkey(またはグループ)の本来のコピー元EADSサーバを表すNodeクラスのインスタンスが返却されます。

接続先EADSサーバの接続可否については,戻り値に影響しません。

(e) 発生する例外

  • UserOperationException(ユーザの操作不正)

  • InternalClientException(EADSクライアントの内部エラー)

(f) 注意事項

  • このメソッドの実行時には,EADSサーバへの通信は行われません。そのため,取得した情報が最新でないことがあります。

  • クラスタ構成に変更がなければ,EADSサーバの接続可否に関係なく,常に同じEADSサーバの情報が取得されます。

  • 取得したEADSサーバを接続先として使用する場合は,そのEADSサーバに接続できるかどうか,NodeクラスのisEnable()で確認してください。

    NodeクラスのisEnable()については,「18.1.3(6) isEnable()」を参照してください。

(16) getSlaveNodeList()

(a) 機能

指定したEADSサーバに格納されているデータの,本来のコピー先EADSサーバの情報を取得します。

本来のコピー先EADSサーバとは,クラスタを構成するすべてのEADSサーバが正常に接続できる場合に,指定したEADSサーバ(コピー元EADSサーバ)に格納されているデータの,コピー先となるEADSサーバのことです。

(b) 形式

public Node[] getSlaveNodeList(Node masterNode)
                        throws CacheException

(c) パラメータ

masterNode

コピー元のデータを格納するEADSサーバ(CacheManagerクラスから取得したNodeクラスのインスタンス)を指定します。それ以外のインスタンスを指定した場合の動作は保証しません。

次の場合は不正となります。

  • nullの場合

  • 指定したNodeクラスが保持するアドレス情報(IPアドレスおよびポート番号)が,EADSクライアントが保持するどのEADSサーバのアドレス情報とも一致しない場合

(d) 戻り値

本来のコピー先EADSサーバの情報が,Nodeクラスの配列として返却されます。

接続先EADSサーバの接続可否については,戻り値に影響しません。

データの多重度が1の場合,要素数0の配列が返却されます。

(e) 発生する例外

  • UserOperationException(ユーザの操作不正)

  • InternalClientException(EADSクライアントの内部エラー)

(f) 注意事項

  • このメソッドの実行時には,EADSサーバへの通信は行われません。そのため,取得した情報が最新でないことがあります。

  • このメソッドの実行時には,指定したEADSサーバ,および情報の取得対象となるEADSサーバの接続可否は考慮されません。そのため,取得した情報には,縮退状態などで接続できないEADSサーバの情報が含まれていることがあります。

(17) getCurrentMasterNode()

(a) 機能

指定したkey(またはグループ)を現時点で格納する,コピー元EADSサーバの情報を取得します。

(b) 形式

public Node getCurrentMasterNode(String key)
                          throws CacheException

(c) パラメータ

key

key(またはグループ)を指定します。

指定できるデータについては,「15.2.2(1) keyとして指定できるデータ」を参照してください。

(d) 戻り値

指定したkey(またはグループ)を現時点で格納するコピー元EADSサーバを表す,Nodeクラスのインスタンスが返却されます。

(e) 発生する例外

  • UserOperationException(ユーザの操作不正)

  • InternalServerException(EADSサーバの内部エラー)

  • InternalClientException(EADSクライアントの内部エラー)

(f) 注意事項

このメソッドの実行時には,EADSサーバへの通信は行われません。そのため,取得した情報が最新でないことがあります。

(18) getOriginalMasterNode()

(a) 機能

指定したkey(またはグループ)を格納する,本来のコピー元EADSサーバの情報を取得します。

本来のコピー元EADSサーバとは,クラスタを構成するすべてのEADSサーバが正常に接続できる場合に,指定したkey(またはグループ)のマスタとなるデータ(コピー元となるデータ)を格納するEADSサーバのことです。現時点のコピー元EADSサーバとは異なることがあります。

クラスタ構成に変更がなければ,EADSサーバの接続可否に関係なく,常に同じEADSサーバの情報が取得されます。

(b) 形式

public Node getOriginalMasterNode(String key) 
                           throws CacheException

(c) パラメータ

key

key(またはグループ)を指定します。

指定できるデータについては,「15.2.2(1) keyとして指定できるデータ」を参照してください。

(d) 戻り値

指定したkey(またはグループ)を格納する本来のコピー元EADSサーバを表すNodeクラスのインスタンスが返却されます。

接続先EADSサーバの接続可否については,戻り値に影響しません。

(e) 発生する例外

  • UserOperationException(ユーザの操作不正)

  • InternalClientException(EADSクライアントの内部エラー)

(f) 注意事項

  • このメソッドの実行時には,EADSサーバへの通信は行われません。そのため,取得した情報が最新でないことがあります。

  • 取得したEADSサーバを接続先として使用する場合は,そのEADSサーバに接続できるかどうか,NodeクラスのisEnable()で確認してください。

    NodeクラスのisEnable()については,「18.1.3(6) isEnable()」を参照してください。

(19) addClusterEventListener()

(a) 機能

クラスタイベントリスナを追加します。

(b) 形式

public Node[] addClusterEventListener(
                   ClusterEventListener clusterEventListener)
              throws CacheException

(c) パラメータ

clusterEventListener

ユーザが作成したClusterEventListenerインタフェース実装クラスを指定します。

(d) 戻り値

クラスタイベントリスナの追加が終了した時点での接続先EADSサーバの情報一覧が,Nodeクラスの配列として返却されます。

EADSサーバの状態に関係なく,すべてのEADSサーバの情報が返却されます。

(e) 発生する例外

  • UserOperationException(ユーザの操作不正)

  • InternalClientException(EADSクライアントの内部エラー)

(f) 注意事項

  • clusterEventListenerには,同一クライアント内のほかのクラスタイベントリスナまたはノードイベントリスナと同じインスタンスを指定できません。

  • このメソッドの実行と同時にクラスタ構成情報が変わった場合,縮退しているEADSサーバ,または追加されたEADSサーバに対しては,ClusterEventListenerインタフェースのメソッドを呼び出しません。そのため,メソッド実行後に,返却されたEADSサーバの情報を確認してください。

  • このメソッドの実行時には,EADSサーバの接続可否は考慮されません。そのため,取得した情報には,接続できないEADSサーバ(例:EADSサーバの縮退)が含まれていることがあります。取得したEADSサーバを接続先として使用する場合は,そのEADSサーバに接続できるかどうかを,NodeクラスのisEnable()で確認してください。

    NodeクラスのisEnable()については,「18.1.3(6) isEnable()」を参照してください。

(20) addNodeEventListener()

(a) 機能

ノードイベントリスナを追加します。

(b) 形式

public Node[] addNodeEventListener(
                   NodeEventListener nodeEventListener,
                   int               nodeId,
                   NodeEventType[]   nodeEventTypeList)
              throws CacheException

(c) パラメータ

nodeEventListener

ユーザが作成したNodeEventListenerインタフェース実装クラスを指定します。

nodeId

ノードイベントリスナを実行するEADSサーバIDを指定します。

nodeEventTypeList

ノードイベントリスナを実行する条件の一覧を,NodeEventTypeクラスの配列として指定します。

(d) 戻り値

ノードイベントリスナの追加が終了した時点での接続先EADSサーバの情報一覧が,Nodeクラスの配列として返却されます。

EADSサーバの状態に関係なく,すべてのEADSサーバの情報が返却されます。

(e) 発生する例外

  • UserOperationException(ユーザの操作不正)

  • InternalClientException(EADSクライアントの内部エラー)

(f) 注意事項

  • nodeEventListenerには,同一クライアント内のほかのクラスタイベントリスナまたはノードイベントリスナと同じインスタンスを指定できません。

  • このメソッドの実行と同時にクラスタ構成情報が変わった場合,縮退しているEADSサーバ,または追加されたEADSサーバに対しては,NodeEventListenerインタフェースのメソッドを呼び出しません。そのため,メソッド実行後に,返却されたEADSサーバの情報を確認してください。

  • このメソッドの実行時には,EADSサーバの接続可否は考慮されません。そのため,取得した情報には,接続できないEADSサーバ(例:EADSサーバの縮退)が含まれていることがあります。取得したEADSサーバを接続先として使用する場合は,そのEADSサーバに接続できるかどうかを,NodeクラスのisEnable()で確認してください。

    NodeクラスのisEnable()については,「18.1.3(6) isEnable()」を参照してください。

(21) removeClusterEventListener()

(a) 機能

クラスタイベントリスナを削除します。

未通知のイベントの情報を破棄します。

このメソッドは,addClusterEventListener()と対になるように呼び出してください。

(b) 形式

public void removeClusterEventListener(
                        ClusterEventListener clusterEventListener)
            throws CacheException

(c) パラメータ

clusterEventListener

ユーザが作成したClusterEventListenerインタフェース実装クラスを指定します。

(d) 発生する例外

  • UserOperationException(ユーザの操作不正)

  • InternalClientException(EADSクライアントの内部エラー)

(22) removeNodeEventListener()

(a) 機能

ノードイベントリスナを削除します。

未通知のイベントの情報を破棄します。

このメソッドは,addNodeEventListener()と対になるように,呼び出してください。

(b) 形式

public void removeNodeEventListener(
                        NodeEventListener nodeEventListener)
            throws CacheException

(c) パラメータ

nodeEventListener

ユーザが作成したNodeEventListenerインタフェース実装クラスを指定します。

(d) 発生する例外

  • UserOperationException(ユーザの操作不正)

  • InternalClientException(EADSクライアントの内部エラー)