前のトピック: SDK Web サービス次のトピック: CA Configuration Automation サーバ 接続の確立


SDK クライアント API

SDK は、CA Configuration Automation データにアクセスして論理的なオブジェクト指向方式でそのデータを表すために、SDKService Web サービスを利用する Java ラッパーです。 SDK は cca-api.jar JAR ファイルに含まれます。 SDK は、オープン ソース ユーティリティが含まれる補助ファイル(cca-aux.jar)を使用します。 SDK によって定義されたクラスは、SDKService にアクセスするため、および CA Configuration Automation 管理対象のデータを表すオブジェクトに対するプログラムを作成するために、CA Configuration Automation の外部のアプリケーションによって使用できます。

以下の場所の cca-api.jar ファイル内のクラス用の Javadoc ページにアクセスできます。

注: バルク SDK クライアント API メソッドが失敗する場合、以下のメッセージが表示されます。

java.lang.StackOverflowError.

この問題を回避するには、以下の JVM オプションを使用して、ネイティブ スタック サイズを 2 MB に増加させます。

>java -Xss2m

問題が継続する場合は、エラー メッセージが表示されなくなるまで、ネイティブ スタック サイズを徐々に増加させます。

com.ca.acm.sdk.net

com.ca.acm.sdk.net パッケージには、CA Configuration Automation サーバ との接続を確立するためのクラス、および CA Configuration Automation サーバ に対するセッション認証情報を提供するためのクラスが含まれます。 以下の例に示すように、com.ca.acm.sdk.net.ACMSDKService は、CA Configuration Automation がこのセットアップに使用するプライマリ クラスです。

import com.ca.acm.sdk.net.ACMSDKService;
if (ACMSDKService.locateService(http://<yourserver>:port/services/SDKService) )
{
    if (ACMSDKService.beginSession(username, password) )
    {
        //  do some work
        Server[] server = Server.getAllServers();
        ...   
     }
        ACMSDKService.endsession();
 }

この製品では、ACMSDKService の静的メソッドを使用して、スレッド ローカル接続とセッション認証情報をセットアップおよび破棄します。 locateServer() メソッドおよび beginSession() メソッドを使用してセッションをセットアップした後、ACMSDKService クラス内の接続とセッションのパラメータを管理します。 SDK メソッドに対する後続のコールでは、スレッド ローカル接続およびセッションのパラメータが使用され、セッション認証情報を確認または直接処理する必要はありません。

注: 接続およびセッション セットアップはスレッド ローカルです。 したがって、マルチスレッドのアプリケーションでは、接続が最初に確立されたスレッドから SDK コールが行われることを確認します。

ACMSDKService.endsession() メソッドは確立されたセッションを閉じて、locateServer() コールがセットアップした接続をクリアします。