Create a software package procedure (install, configure, activate or uninstall) associated with the software package and its volume. Many properties are required be set for a procedure to execute correctly.
Example 7: Creating a Simple Software Package Procedure
//This method creates a simple software installation procedure
//using the one file from the volume
//If you were defining a non-install software job, you would also need to // define an install procedure as well as your non-install procedure
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);
//set the management mask
SoftwarePackageProcedureManagementTypeMask mgmtMsk =
new SoftwarePackageProcedureManagementTypeMask();
mgmtMsk.setSd(true);
mgmtMsk.setSm(true);
props.setManagementTypeMask(mgmtMsk);
//set the operation mask
SoftwarePackageProcedureOperationMask opMsk =
new SoftwarePackageProcedureOperationMask();
opMsk.setAutoDeliverItem(true);
opMsk.setBackground(false);
opMsk.setOffline(false);
props.setOperationMask(opMsk);
props.setOperationMaskSupplied(true);
//set this to be an install task
props.setSoftwarePackageProcedureTask (SoftwarePackageProcedureTask.INSTALL);
props.setSoftwarePackageProcedureTaskSupplied(true);
//set this to show that the task is an executable file
props.setSoftwarePackageProcedureType (SoftwarePackageProcedureType.EXEFILE);
props.setSoftwarePackageProcedureTypeSupplied(true);
//link to the volume and the package
props.setSoftwarePackageVolumeId(volumeID);
props.setSoftwarePackageVolumeIdSupplied(true);
props.setSoftwarePackageId(packageID);
props.setSoftwarePackageIdSupplied(true);
//values that represent the procedure itself
props.setProcToRun(cfg.getProcedureToRun());
props.setProcToRunSupplied(true);
props.setSoftwarePackageProcedureName(cfg.getProcedureName());
props.setSoftwarePackageProcedureNameSupplied(true);
props.setComment(cfg.getProcedureComment());
props.setCommentSupplied(true);
//additional parameters
//the procedure can run on any OS
// for the set of possible values see operatingSystemType
props.setOperatingSystemType(196608);
props.setOperatingSystemTypeSupplied(true);
//create the procedure
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.
|
|