1 krisbash 1.1 // Copyright (c) 2005 DMTF. All rights reserved.
2 [Association, Abstract, Aggregation, Version ( "2.6.0" ),
3 UMLPackagePath ( "CIM::Policy" ),
4 Description (
5 "PolicyActions may be aggregated into rules and into compound "
6 "actions. PolicyActionStructure is the abstract aggregation "
7 "class for the structuring of policy actions." )]
8 class CIM_PolicyActionStructure : CIM_PolicyComponent {
9
10 [Aggregate, Override ( "GroupComponent" ),
11 Description (
12 "PolicyAction instances may be aggregated into either "
13 "PolicyRule instances or CompoundPolicyAction instances." )]
14 CIM_Policy REF GroupComponent;
15
16 [Override ( "PartComponent" ),
17 Description (
18 "A PolicyAction aggregated by a PolicyRule or CompoundPolicyAction."
19 )]
20 CIM_PolicyAction REF PartComponent;
21
22 krisbash 1.1 [Description (
23 "ActionOrder is an unsigned integer \'n\' that indicates "
24 "the relative position of a PolicyAction in the sequence "
25 "of actions associated with a PolicyRule or "
26 "CompoundPolicyAction. When \'n\' is a positive integer, "
27 "it indicates a place in the sequence of actions to be "
28 "performed, with smaller integers indicating earlier "
29 "positions in the sequence. The special value \'0\' "
30 "indicates \'don\'t care\'. If two or more PolicyActions "
31 "have the same non-zero sequence number, they may be "
32 "performed in any order, but they must all be performed "
33 "at the appropriate place in the overall action sequence. \n"
34 "\n"
35 "A series of examples will make ordering of PolicyActions "
36 "clearer: \n"
37 "o If all actions have the same sequence number, "
38 "regardless of whether it is \'0\' or non-zero, any order "
39 "is acceptable. \n"
40 "o The values: \n"
41 "1:ACTION A \n"
42 "2:ACTION B \n"
43 krisbash 1.1 "1:ACTION C \n"
44 "3:ACTION D \n"
45 "indicate two acceptable orders: A,C,B,D or C,A,B,D, \n"
46 "since A and C can be performed in either order, but only "
47 "at the \'1\' position. \n"
48 "o The values: \n"
49 "0:ACTION A \n"
50 "2:ACTION B \n"
51 "3:ACTION C \n"
52 "3:ACTION D \n"
53 "require that B,C, and D occur either as B,C,D or as "
54 "B,D,C. Action A may appear at any point relative to B, "
55 "C, and D. Thus the complete set of acceptable orders is: "
56 "A,B,C,D; B,A,C,D; B,C,A,D; B,C,D,A; A,B,D,C; B,A,D,C; "
57 "B,D,A,C; B,D,C,A. \n"
58 "\n"
59 "Note that the non-zero sequence numbers need not start "
60 "with \'1\', and they need not be consecutive. All that "
61 "matters is their relative magnitude." )]
62 uint16 ActionOrder;
63
64 krisbash 1.1
65 };
|