ソフトウェア パッケージおよびそのボリュームに関連付けられたソフトウェア パッケージ プロシージャ(インストール、設定、アクティブ化、アンインストールなど)を作成します。 プロシージャが正しく実行されるには、多くのプロパティを設定する必要があります。
例 7: 単純なソフトウェア パッケージ プロシージャの作成
//このメソッドによって、ボリュームのファイルを 1 つ使用した
//単純なソフトウェア インストール プロシージャが作成されます
//インストール以外のソフトウェア ジョブを定義している場合は、 //インストール プロシージャだけでなく、インストール以外のプロシージャも定義する必要があります。
private int createSimpleSoftwareProcedure() throws Exception
{
CreateSoftwarePackageProcedureProperties props =
new CreateSoftwarePackageProcedureProperties();
props.setComment(cfg.getProcedureToRun());
props.setCommentSupplied(true);
props.setSoftwarePackageProcedureName(cfg.getProcedureToRun());
props.setSoftwarePackageProcedureNameSupplied(true);
SoftwarePackageProcedureBootMask mask =
new SoftwarePackageProcedureBootMask();
mask.setNoReboot(true);
props.setBootAfterMask(mask);
props.setBootAfterMaskSupplied(true);
props.setBootBeforeMask(mask);
props.setBootBeforeMaskSupplied(true);
//管理マスクを設定します
SoftwarePackageProcedureManagementTypeMask mgmtMsk =
new SoftwarePackageProcedureManagementTypeMask();
mgmtMsk.setSd(true);
mgmtMsk.setSm(true);
props.setManagementTypeMask(mgmtMsk);
//オペレーション マスクを設定します
SoftwarePackageProcedureOperationMask opMsk =
new SoftwarePackageProcedureOperationMask();
opMsk.setAutoDeliverItem(true);
opMsk.setBackground(false);
opMsk.setOffline(false);
props.setOperationMask(opMsk);
props.setOperationMaskSupplied(true);
//インストール タスクを実行するために設定します
props.setSoftwarePackageProcedureTask (SoftwarePackageProcedureTask.INSTALL);
props.setSoftwarePackageProcedureTaskSupplied(true);
//タスクが実行ファイルであることを示すために設定します
props.setSoftwarePackageProcedureType (SoftwarePackageProcedureType.EXEFILE);
props.setSoftwarePackageProcedureTypeSupplied(true);
//ボリュームおよびパッケージへのリンク
props.setSoftwarePackageVolumeId(volumeID);
props.setSoftwarePackageVolumeIdSupplied(true);
props.setSoftwarePackageId(packageID);
props.setSoftwarePackageIdSupplied(true);
//プロシージャ自体を示す値
props.setProcToRun(cfg.getProcedureToRun());
props.setProcToRunSupplied(true);
props.setSoftwarePackageProcedureName(cfg.getProcedureName());
props.setSoftwarePackageProcedureNameSupplied(true);
props.setComment(cfg.getProcedureComment());
props.setCommentSupplied(true);
//追加パラメータ
//このプロシージャは、どの OS でも実行できます
//指定可能な値のセットについては、operatingSystemType を参照してください
props.setOperatingSystemType(196608);
props.setOperatingSystemTypeSupplied(true);
//プロシージャを作成します
procID = wsAPIconnector.createSoftwarePackageProcedure (
getSessionId(), props);
if(procID.equals(""))
return UDSMWebService.PROCEDURE_CREATION_ERROR;
else
return UDSMWebService.RESULT_OK;
}
|
Copyright © 2014 CA Technologies.
All rights reserved.
|
|