// Copyright © 2005, 2006 THALES, SELEX Sistemi Integrati (SI), Themis Computer // and Progeny Systems Corporation. // 06-08-31 - MS - Draft (2) updated to the AMSM Revised Submission // Version 1.8 - 21 August 2006 // 07-03-02 - MS - Draft (3) updated to the AMSM Revised Submission // Version 1.10 - 18 December 2006 & includes // the errata from the 07-01-02 document #pragma locale ("en_US") // =================================================================== // DeploymentSpec // =================================================================== [Description ("The AMS_DeploymentSpec class models the information" "needed to define deployment configurations. It gathers " "AMS_DeploymentLinkSpecs. Its attribute is its name." )] class AMS_DeploymentSpec : CIM_LogicalElement { [Key, Override, Description ("Name of the spec.")] string Name; [Description ("This operation deploys the Executable Software Element" "defined in the links associated with the current deployment " "specification on the host defined on the same link. In case of" "static deployment, all associations with (ASM_Host, etc) shall be" "defined beforehand. In case of dynamic deployment these associations" "shall be determined at run time. This second case will be the" "subject of a future extension of the standard. It shall return:" "- AMS_RESOURCEERROR if the deployment could not be performed on " " account of an OS resource starvation error (lack of memory," " disk...) when performing one of the action of the associated" " executable software element specifications," "- AMS_RIGHTERROR if the deployment could not be performed on " " account of an OS right error when performing one of the action" " of the associated executable software element specifications," "- AMS_BADACTION if the deployment could not be performed on " " account of a badly formed action in the executable software" " element specification definitions," "- AMS_BADCHECK if the deployment could not be performed on " " account of a badly formed check in the executable software" " element specification definitions," "- AMS_NOTCHECKED if at last one of the check of the associated" " executable software element specifications was not true while" " deploying," "- AMS_BADMODELTYPE if the targeted hosts does not support the" " matching specification model types," "- AMS_DEPLOYFAILED if the element could not start for any other" " reason." "In all case of error, a full explanation of the cause of the error" "shall be logged. After an error, the executable software elements" "already deployed are in an unknown state.")] uint16 Deploy(); [ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8"}, Values { "Unknown", "AMS_OK", "AMS_RESOURCEERROR", "AMS_RIGHTERROR", "AMS_BADACTION", "AMS_BADCHECK", "AMS_NOTCHECKED", "AMS_BADMODELTYPE", "AMS_DEPLOYFAILED"}] uint16 Deploy_ReturnCode; }; // =================================================================== // DeploymentLinkSpec // =================================================================== [Description ("The AMS_DeploymentLinkSpec class models the fact that" "a software item (application, software system or software element)" "will have to run on some hosts. These hosts are defined either" "as an actual host or with a kind of host (requested hardware)." "It belongs to an AMS_DeploymentSpec and is linked to:" "- either some AMS_Hosts and AMS_OperatingSystem. Each host must" " correspond with one operating system." "- either an AMS_ESESpec or an other AMS_DeploymentLinkSpec of " " which the software will be taken into account." "It also may have an action linked with the association class" "AMS_ActionOnLink, which specifies in which case (start, stop...)" "this action will have to be used.")] class AMS_DeploymentLinkSpec { [Key, Description ("The ttribute 'LinkID' which, with its" "AMS_DeploymentSpec's global name, takes part of the make-up of" "its global name.")] string LinkID; }; // =================================================================== // Associations // =================================================================== // =================================================================== // ActionOnLink // =================================================================== [Association, Aggregation, Description ("The AMS_ActionOnLink class is an association class" "between AMS_DeploymentLinkSpec and CIM_Action. It is specifying" "in which case the action will be used: start, stop...")] class AMS_ActionOnLink : CIM_Dependency { [Key, Aggregate, Override("Antecedent"), Max (1)] AMS_DeploymentLinkSpec REF Antecedent; [Override("Dependent"), Max (1)] CIM_Action REF Dependent; }; // =================================================================== // SEDeployed // =================================================================== [Association] class AMS_SEDeployed : CIM_Component { [Override("GroupComponent")] AMS_DeploymentLinkSpec REF GroupComponent; [Override("PartComponent"), Max(1)] AMS_ESESpec REF PartComponnent; }; // =================================================================== // HostUsed // =================================================================== [Association] class AMS_HostUsed : CIM_Dependency { [Override("Antecedent")] AMS_DeploymentLinkSpec REF Antecedent; [Overrride("Dependent")] AMS_Host REF Dependent; }; // =================================================================== // DeploymentLinkDependency // =================================================================== [Association] class AMS_DeploymentLinkDependency : CIM_Dependency { [Override("Antecedent")] AMS_DeploymentLinkSpec REF Antecedent; [Overrride("Dependent"), Max(1)] AMS_DeploymentLinkSpec REF Dependent; }; // =================================================================== // DeploymentLinks // =================================================================== [Association] class AMS_DeploymentSpecLinks : CIM_Component { [Key, Aggregate, Override("GroupComponent"), Max(1), Min(1)] AMS_DeploymentSpec REF GroupComponent; [Override("PartComponent")] AMS_DeploymentLinkSpec REF PartComponent; }; // =================================================================== // OSUsed // =================================================================== [Association] class AMS_OSUsed : CIM_Dependency { [Override("Antecedent")] AMS_DeploymentLinkSpec REF Antecedent; [Overrride("Dependent")] AMS_OperatingSystem REF Dependent; };