14.3.18 execfunc(ユーザファンクションの実行)
- 〈この項の構成〉
(1) 機能
指定したユーザファンクションを実行します。
ユーザファンクションを実行するEADsクライアントを構築しなくても,このコマンドでユーザファンクションを実行できます。
(2) 規則
-
このサブコマンドはEADsサーバが稼働状態(running)のときに実行できます。
-
EADsサーバの位置(Position)の降順にユーザファンクションを実行します。実行途中で,一部のEADsサーバでユーザファンクションの実行に失敗しても,処理を継続します。
(3) 形式
eztool execfunc [-g <グループ名>|-s] <キャッシュ名> <ユーザファンクション名> [<ユーザファンクション引数>]
(4) オプションおよび引数
(a) -gまたは--group <グループ名>
グループ名を指定してユーザファンクションを実行したい場合に指定します。
グループ名には,半角1,024文字までの,ASCIIコード「0x20」〜「0x7E」の文字が指定できます。
ただし,次の場合はエラーとなります。
-
区切り文字(:)がkeyの先頭または後尾にある場合
(例) 「:element」「group:」
-
区切り文字(:)が連続している場合
(例) 「group::element」
(b) -sまたは--single
コマンドを実行するEADsサーバだけでユーザファンクションを実行したい場合に指定します。
(c) <キャッシュ名>
ユーザファンクションを実行するキャッシュの名称を指定します。
キャッシュ名に指定できる文字を次に示します。
-
キャッシュ作成時にキャッシュ定義ファイルを使用しなかった場合
半角32文字までの,ASCIIコード「0x20」〜「0x7E」の文字が指定できます。
-
キャッシュ作成時にキャッシュ定義ファイルを使用した場合
半角32文字までの,半角英数字(0〜9,A〜Z,およびa〜z)が指定できます。
(d) <ユーザファンクション名>
実行したいユーザファンクション名を指定します。
ユーザファンクション名には,半角英数字(0〜9,A〜Z,a〜z),アンダースコア(_),ピリオド(.)またはドルマーク($)が指定できます。
文字数に制限はありません。
(e) <ユーザファンクション引数>
ユーザファンクションに特定の引数を渡したい場合に指定します。
省略した場合はnullが引数として渡されます。
ユーザファンクション引数には,半角1,024文字までの,ASCIIコード「0x20」〜「0x7E」の文字が指定できます。
(5) 出力例
eztool execfuncコマンドの実行結果の出力例を次に示します。
表示内容を次の表に示します。
項番 |
表示内容 |
説明 |
---|---|---|
1 |
Server |
ユーザファンクションを実行したEADsサーバのIPアドレス,およびEADsクライアントとの通信に使用するEADsサーバのポート番号 次の形式で表示されます。 IPアドレス:ポート番号 |
2 |
Result |
|
(6) リターンコード
0:成功
101:失敗
失敗時のリターンコードは,コマンドの実行に失敗した場合に返します。ユーザファンクション実行時に例外が発生した場合,コマンドは成功として扱います。例外の内容については,Resultの表示結果を参照してください。
(7) 注意事項
通常のユーザファンクションとは異なり,ユーザファンクション引数と取得データの型は,文字列(java.lang.String)だけとなります。このコマンドを使用する場合は,この点を考慮してユーザファンクションを作成してください。
ただし,サイズの大きい文字列を使用すると,EADsサーバでGCが発生して性能に影響が出るおそれがあるので注意してください。