1 marek 1.1 // Copyright (c) 2005 DMTF. All rights reserved.
2 // <change cr="ArchCR00066.004" type="add">Add UmlPackagePath
3 // qualifier values to CIM Schema.</change>
4 // ==================================================================
5 // CIM_ApplicationSystem
6 // ==================================================================
7 [Version ( "2.8.0" ),
8 UMLPackagePath ( "CIM::Application::DeploymentModel" ),
9 Description (
10 "The ApplicationSystem class represents an application or a "
11 "software system that supports a particular business function "
12 "and that can be managed as an independent unit. Such a system "
13 "can be decomposed into its functional components using the "
14 "CIM_SoftwareFeature class. The Features for a particular "
15 "application or software system are located using the "
16 "CIM_ApplicationSystemSoftwareFeature association. The features "
17 "are part of the deployment-oriented aspects of the application "
18 "system. \n"
19 "With regard to the application runtime aspects, the "
20 "ApplicationSystem class also represents the core class of the "
21 "Application Systems\' sub-model which of the application "
22 marek 1.1 "runtime model. Its role in the systems sub-model is a) the "
23 "root node of the containment hierarchy of the application "
24 "elements (at runtime) as services, components, sub-systems, "
25 "etc., b) the place for runtime overview information such as "
26 "response time or system status, c) runtime control of the "
27 "entire application (e.g., start/stop), and d) the main entry "
28 "point to the navigation through and drill-down into the "
29 "runtime model. \n"
30 "The lifetime of an instance of this class is not limited to "
31 "the application instance it represents. Even if the "
32 "application is not running, the ApplicationSystem object can "
33 "report properties that have values (e.g., the name of the "
34 "application or the current status). Note that it is also "
35 "possible to define the lifetime of the objects through the "
36 "lifetime of the application instances. \n"
37 "Through ApplicationSystemDependency, non-containment "
38 "relationships can be expressed." )]
39 class CIM_ApplicationSystem : CIM_System {
40
41 [Description (
42 "Distribution describes how the application system is "
43 marek 1.1 "distributed with respect to its underlying servers. In "
44 "general, the application system is distributed or local. "
45 "This property indicates whether the application system "
46 "is running on one or multiple servers. This can be "
47 "determined without having to query for associated "
48 "servers represented by ComputerSystems. Distributed "
49 "systems also introduce a virtual notion to themselves. "
50 "Note that a distributed application system is not "
51 "tangible but virtual. Only its contained local systems "
52 "can be found as processes or threads, and can therefore "
53 "be regarded as tangible. The distributed system remains "
54 "a named, virtual entity, that scopes strongly bound "
55 "constituents and allows the application to be managed in "
56 "its entirety. \n"
57 "The property is needed to help root cause analysis and "
58 "operations, especially when these are automated, in "
59 "order to clearly know that more than one executed "
60 "application - most likely the local application systems "
61 "- is affected by the management task. This is "
62 "particularly true if the contained application systems "
63 "provide uniform functionality like webserver or "
64 marek 1.1 "application server farms. \n"
65 "To express constraints between distributed and local "
66 "system, this class must be derived and appropriate "
67 "associations must be defined. \n"
68 "This property should not be confused with the Roles[] "
69 "property defined in System. The latter is reserved for "
70 "administrator assigned roles." ),
71 ValueMap { "0", "1", "2", "3..32767", "32768..65535" },
72 Values { "Unknown", "Distributed", "Local", "DMTF Reserved",
73 "Vendor Specific" }]
74 uint16 Distribution;
75
76 [Override ( "EnabledState" ),
77 Description (
78 "EnabledState is an integer enumeration that indicates "
79 "the enabled/disabled states of an element. It can also "
80 "indicate the transitions between these requested states. "
81 "For example, shutting down and starting are transient "
82 "states between enabled and disabled. \n"
83 "In contrast to the original version defined higher in "
84 "the inheritance hierarchy (EnabledLogicalElement), "
85 marek 1.1 "EnabledState is simplified. It reflects the notion of an "
86 "execution status tailored to applications and represents "
87 "a summary of the original property. It allows simplified "
88 "and efficient determination of whether the application "
89 "is started, stopped or in transition between either of "
90 "these states. The property does not show any errors. "
91 "Errors MUST be described in MSE.OperationalStatus, and "
92 "MAY also be described in logs or other data sources. \n"
93 "The mapping to MSE.OperationalStatus is as follows: \n"
94 "ExecutionStatus <- MSE.OperationalStatus \n"
95 "Unknown <- Unknown, No Contact, Lost Communication, \n"
96 "Either of the values <- Other \n"
97 "Enabled (started) <- OK, Degraded, Stressed, Predictive "
98 "Failure, In Service, Dormant, Supporting Entity in "
99 "Error, Completed \n"
100 "Enabled or Disabled (Started or Stopped) <- Error, "
101 "Non-Recoverable Error \n"
102 "Starting <- Starting \n"
103 "Shutting Down (Stopping) <- Stopping \n"
104 "Disabled (Stopped) <- Stopped, Aborted. \n"
105 "The mapping to the original EnabledState property is as "
106 marek 1.1 "follows: \n"
107 "Unknown <- Unknown, Not Applicable \n"
108 "Either of the values <-Other \n"
109 "Enabled <- Enabled, Enabled but Offline, In Test, "
110 "Deferred, Quiesce \n"
111 "Disabled <- Disabled \n"
112 "ShuttingDown <- ShuttingDown \n"
113 "Starting <- Starting." ),
114 ValueMap { "0", "2", "3", "4", "10", "11..32767",
115 "32768..65535" },
116 Values { "Unknown", "Enabled", "Disabled", "Shutting Down",
117 "Starting", "DMTF Reserved", "Vendor Reserved" }]
118 uint16 EnabledState = 0;
119
120 [Description (
121 "The point in time (date and time) when the application "
122 "system was last started. If the application system is in "
123 "a state other the state Enabled (i.e., started and "
124 "running) this value is not meaningful and the property "
125 "value MUST be set to all zeros. \n"
126 "StartupTime is preferably the point in time when the "
127 marek 1.1 "application is available to the user. Instead, if the "
128 "provider and/or the instrumentation cannot determine the "
129 "point in time the application becomes available, the "
130 "point in time can be used at which the underlying "
131 "operating system reports successful launch of the "
132 "application. If no value can be provided the property "
133 "value MUST be set to all zeros." )]
134 datetime StartupTime;
135
136 [Description (
137 "ServingStatus is a summary of MSE.OperationalStatus. It "
138 "allows simplified and efficient determination of whether "
139 "the application is providing service or has stopped "
140 "doing so for various reasons like errors, shutdown, "
141 "abort, etc. Therefore, no transitional values are "
142 "provided. The property does not show any errors. Errors "
143 "MUST be described in MSE.OperationalStatus, and MAY also "
144 "be described in logs or other data sources. Therefore, "
145 "ServingStatus is suited to provide summary information "
146 "for monitoring purposes and service level management. \n"
147 "The mapping to MSE.OperationalStatus is as follows: \n"
148 marek 1.1 "ServingStatus <- MSE.OperationalStatus \n"
149 "Unknown <- Unknown, No Contact, Lost Communication \n"
150 "Either of the values <- Other \n"
151 "Serving <- OK, Degraded, Stressed, Predictive Failure, "
152 "Completed \n"
153 "Not Serving <- Error, Non-Recoverable Error, Starting, "
154 "Stopping, Stopped, In Service, Aborted, Dormant, "
155 "Supporting Entity in Error." ),
156 ValueMap { "0", "1", "2", "5..4096", "4097..65535" },
157 Values { "Unknown", "Serving", "Not Serving",
158 "DMTF Reserved", "Vendor Specific" },
159 ModelCorrespondence {
160 "CIM_ManagedSystemElement.OperationalStatus" }]
161 uint16 ServingStatus;
162
163 [Description (
164 "The point in time at which the ServingStatus property "
165 "was last updated." ),
166 ModelCorrespondence { "CIM_ApplicationSystem.ServingStatus" }]
167 datetime LastServingStatusUpdate;
168
169 marek 1.1
170 [Description (
171 "StartApplication() starts an application system. The "
172 "ApplicationSystem object must have been created prior to "
173 "the invocation of this method. It is up to the "
174 "implementation of the method to define which of the "
175 "contained or dependent sub-elements are to be started "
176 "and in which order their startup may occur. \n"
177 "Since a system startup can extend over long periods of "
178 "time (several minutes is not unusual for complex "
179 "distributed applications), the method can be implemented "
180 "synchronously or asynchronously. In both cases "
181 "EnabledState and RequestedState reflect the current "
182 "state of the application and the desired state (Enabled) "
183 "respectively. The exact nature of the errors during the "
184 "startup cannot be determined in the asynchronous case. "
185 "The method must return one of the following values: \n"
186 "Unspecified Error: If no return code can be identified \n"
187 "Completed with No Error: successful invocation \n"
188 "Start Already in Progress: application still being "
189 "started \n"
190 marek 1.1 "Failed:Indicates errors upon execution." ),
191 ValueMap { "0", "1", "2", "3", "4..4096", "4097..32767",
192 "32768..65535" },
193 Values { "Unspecified Error", "Completed with No Error",
194 "Start Already in Progress", "Failed", "DMTF Reserved",
195 "Method Reserved", "Vendor Specific" },
196 ModelCorrespondence { "CIM_ApplicationSystem.EnabledState",
197 "CIM_ApplicationSystem.RequestedState" }]
198 uint16 StartApplication(
199 );
200
201 [Description (
202 "StopApplication() allows for stopping/shutting down an "
203 "application system. It is up to the implementation of "
204 "the method to define which of the contained or dependent "
205 "sub-elements are to be stopped and in which order their "
206 "stop has to occur. \n"
207 "Since a system shutdown can last considerable time "
208 "(several minutes is not necessarily unusual for complex "
209 "distributed applications), the method can be implemented "
210 "synchronously or asynchronously. In both cases "
211 marek 1.1 "EnabledState and RequestedState reflect the current "
212 "state of the application and the desired state "
213 "(Disabled) respectively. The exact nature of the errors "
214 "during the stop cannot be determined in the asynchronous "
215 "case. The method must return one of the following: \n"
216 "Unspecified Error: If no return code can be identified \n"
217 "Completed with No Error: successful invocation \n"
218 "Stop Already in Process: application is shutting down \n"
219 "Failed: Indicates errors upon execution." ),
220 ValueMap { "0", "1", "2", "3", "4..4096", "4097..32767",
221 "32768..65535" },
222 Values { "Unspecified Error", "Completed with No Error",
223 "Stop Already in Process", "Failed", "DMTF Reserved",
224 "Method Reserved", "Vendor Specific" },
225 ModelCorrespondence { "CIM_ApplicationSystem.EnabledState",
226 "CIM_ApplicationSystem.RequestedState" }]
227 uint16 StopApplication(
228 );
229
230 };
|