この funclet は、RemoteTarget オブジェクトからリモート実行の結果を取得します。 リモート実行の戻り値は、リクエストを発行したシステムにネットワーク経由で転送する必要があります。 結果は、リモート システム上で XML 表現でシリアル化されます。RemoteTarget.result() メソッドを使用すると、シリアル化された表現で結果の値が返されます。
シリアル化された表現は、RemoteTarget オブジェクト自体をパラメータとする get-remoteResult() funclet を使用して、標準の JavaScript 値に変換します。 通常は、スクリプトで result() を直接呼び出す必要はありません。 シリアル化ではタイプ情報が保持されます。そのため、リモート ノードが数値を返すと、get-remoteResult() は数値を返します。 リモート システムが Date オブジェクトを返すと、元のシステム上でも Date オブジェクトになります。
リモート スクリプトからの戻り値は、単純なデータ型に制限されません。 リモート実行でサーバ間での大量のデータ転送を可能にし、複雑な配列やデータのみのオブジェクトを返すこともできます。 唯一の制限は、データ構造に循環参照を含むことができないということです。
コマンドの構文は、以下のとおりです。
get-remoteResult remoteTarget
この funclet は、リモート実行プロセスのポリモーフィック値を返します。 実行が完了していない場合、戻り値は未定義のタイプとなります。 別のエラーが発生した場合は、例外が作成されます。
リモート ターゲット システムの名前を指定します。
例
リモート実行のシリアル化された表現と実際の値を取得します。
rt = new RemoteTarget("ascli1", "bob", "ca123456");
run-remote "new Date()" on rt -wait
? rt.result() // XML 文字列
v = get-remoteResult(rt) // result() を内部で呼び出し
? v
? typeName(v) // Date
|
Copyright © 2013 CA.
All rights reserved.
|
|