Une fois l'opération ci-dessus terminée, vous devez créer une procédure (installation, configuration, activation ou désinstallation) à associer au package logiciel et à son volume. Plusieurs propriétés doivent être configurées pour que la procédure s'exécute correctement. Pour obtenir une description complète de chaque propriété, consultez l'aide Unicenter DSM.
Exemple 7 : Création d'une procédure de package logiciel simple
//Cette méthode permet de créer une procédure d'installation logicielle simple
//à l'aide d'un fichier unique provenant du volume.
//Si vous définissez un job autre qu'un job logiciel d'installation, vous devez tout de même // définir une procédure d'installation, en plus de votre procédure de désinstallation.
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);
//Définissez le masque de gestion.
SoftwarePackageProcedureManagementTypeMask mgmtMsk =
new SoftwarePackageProcedureManagementTypeMask();
mgmtMsk.setSd(true);
mgmtMsk.setSm(true);
props.setManagementTypeMask(mgmtMsk);
//Définissez le masque d'opération.
SoftwarePackageProcedureOperationMask opMsk =
new SoftwarePackageProcedureOperationMask();
opMsk.setAutoDeliverItem(true);
opMsk.setBackground(false);
opMsk.setOffline(false);
props.setOperationMask(opMsk);
props.setOperationMaskSupplied(true);
//Définissez ce paramètre en tant que tâche d'installation.
props.setSoftwarePackageProcedureTask (SoftwarePackageProcedureTask.INSTALL);
props.setSoftwarePackageProcedureTaskSupplied(true);
//Définissez ce paramètre pour indiquer que la tâche est un fichier exécutable.
props.setSoftwarePackageProcedureType (SoftwarePackageProcedureType.EXEFILE);
props.setSoftwarePackageProcedureTypeSupplied(true);
//Effectuez la liaison avec le volume et le package.
props.setSoftwarePackageVolumeId(volumeID);
props.setSoftwarePackageVolumeIdSupplied(true);
props.setSoftwarePackageId(packageID);
props.setSoftwarePackageIdSupplied(true);
//Valeurs représentant la procédure elle-même.
props.setProcToRun(cfg.getProcedureToRun());
props.setProcToRunSupplied(true);
props.setSoftwarePackageProcedureName(cfg.getProcedureName());
props.setSoftwarePackageProcedureNameSupplied(true);
props.setComment(cfg.getProcedureComment());
props.setCommentSupplied(true);
//Paramètres complémentaires.
//La procédure peut être exécutée sous n'importe quel système d'exploitation.
//Pour connaître les valeurs possibles, voir operatingSystemType.
props.setOperatingSystemType(196608);
props.setOperatingSystemTypeSupplied(true);
//Créez la procédure.
procID = wsAPIconnector.createSoftwarePackageProcedure (
getSessionId(), props);
if(procID.equals(""))
return UDSMWebService.PROCEDURE_CREATION_ERROR;
else
return UDSMWebService.RESULT_OK;
}
|
Copyright © 2013 CA.
Tous droits réservés.
|
|