(file) Return to CIM_PolicyTimePeriodCondition.mof CVS log (file) (dir) Up to [Pegasus] / pegasus / Schemas / CIM231 / DMTF / Policy

  1 marek 1.1 // Copyright (c) 2005 DMTF.  All rights reserved.
  2              [Version ( "2.7.0" ), 
  3               UMLPackagePath ( "CIM::Policy" ), 
  4               Description ( 
  5                  "This class provides a means of representing the time periods "
  6                  "during which a PolicySet is valid, i.e., active. At all times "
  7                  "that fall outside these time periods, the PolicySet has no "
  8                  "effect. A PolicySet is treated as valid at ALL times, if it "
  9                  "does not specify a PolicyTimePeriodCondition. \n"
 10                  "\n"
 11                  "In some cases a Policy Consumer may need to perform certain "
 12                  "setup / cleanup actions when a PolicySet becomes active / "
 13                  "inactive. For example, sessions that were established while a "
 14                  "PolicySet was active might need to be taken down when the "
 15                  "PolicySet becomes inactive. In other cases, however, such "
 16                  "sessions might be left up. In this case, the effect of "
 17                  "deactivating the PolicySet would just be to prevent the "
 18                  "establishment of new sessions. \n"
 19                  "\n"
 20                  "Setup / cleanup behaviors on validity period transitions are "
 21                  "not currently addressed by the Policy Model, and must be "
 22 marek 1.1        "specified in \'guideline\' documents or via subclasses of "
 23                  "CIM_PolicySet, CIM_PolicyTimePeriod Condition or other "
 24                  "concrete subclasses of CIM_Policy. If such behaviors need to "
 25                  "be under the control of the policy administrator, then a "
 26                  "mechanism to allow this control must also be specified in the "
 27                  "subclasses. \n"
 28                  "\n"
 29                  "PolicyTimePeriodCondition is defined as a subclass of "
 30                  "PolicyCondition. This is to allow the inclusion of time-based "
 31                  "criteria in the AND/OR condition definitions for a PolicyRule. \n"
 32                  "\n"
 33                  "Instances of this class may have up to five properties "
 34                  "identifying time periods at different levels. The values of "
 35                  "all the properties present in an instance are ANDed together "
 36                  "to determine the validity period(s) for the instance. For "
 37                  "example, an instance with an overall validity range of January "
 38                  "1, 2000 through December 31, 2000; a month mask that selects "
 39                  "March and April; a day-of-the-week mask that selects Fridays; "
 40                  "and a time of day range of 0800 through 1600 would be "
 41                  "represented using the following time periods: \n"
 42                  "Friday, March 5, 2000, from 0800 through 1600; \n"
 43 marek 1.1        "Friday, March 12, 2000, from 0800 through 1600; \n"
 44                  "Friday, March 19, 2000, from 0800 through 1600; \n"
 45                  "Friday, March 26, 2000, from 0800 through 1600; \n"
 46                  "Friday, April 2, 2000, from 0800 through 1600; \n"
 47                  "Friday, April 9, 2000, from 0800 through 1600; \n"
 48                  "Friday, April 16, 2000, from 0800 through 1600; \n"
 49                  "Friday, April 23, 2000, from 0800 through 1600; \n"
 50                  "Friday, April 30, 2000, from 0800 through 1600. \n"
 51                  "\n"
 52                  "Properties not present in an instance of "
 53                  "PolicyTimePeriodCondition are implicitly treated as having "
 54                  "their value \'always enabled\'. Thus, in the example above, "
 55                  "the day-of-the-month mask is not present, and so the validity "
 56                  "period for the instance implicitly includes a day-of-the-month "
 57                  "mask that selects all days of the month. If this \'missing "
 58                  "property\' rule is applied to its fullest, we see that there "
 59                  "is a second way to indicate that a PolicySet is always "
 60                  "enabled: associate with it an instance of "
 61                  "PolicyTimePeriodCondition whose only properties with specific "
 62                  "values are its key properties." )]
 63           class CIM_PolicyTimePeriodCondition : CIM_PolicyCondition {
 64 marek 1.1 
 65                 [Description ( 
 66                     "This property identifies an overall range of calendar "
 67                     "dates and times over which a PolicySet is valid. It is "
 68                     "formatted as a string representing a start date and "
 69                     "time, in which the character \'T\' indicates the "
 70                     "beginning of the time portion, followed by the solidus "
 71                     "character \'/\', followed by a similar string "
 72                     "representing an end date and time. The first date "
 73                     "indicates the beginning of the range, while the second "
 74                     "date indicates the end. Thus, the second date and time "
 75                     "must be later than the first. Date/times are expressed "
 76                     "as substrings of the form yyyymmddThhmmss. For example: \n"
 77                     "20000101T080000/20000131T120000 defines \n"
 78                     "January 1, 2000, 0800 through January 31, 2000, noon \n"
 79                     "\n"
 80                     "There are also two special cases in which one of the "
 81                     "date/time strings is replaced with a special string "
 82                     "defined in RFC 2445. \n"
 83                     "o If the first date/time is replaced with the string "
 84                     "\'THISANDPRIOR\', then the property indicates that a "
 85 marek 1.1           "PolicySet is valid [from now] until the date/time that "
 86                     "appears after the \'/\'. \n"
 87                     "o If the second date/time is replaced with the string "
 88                     "\'THISANDFUTURE\', then the property indicates that a "
 89                     "PolicySet becomes valid on the date/time that appears "
 90                     "before the \'/\', and remains valid from that point on." ), 
 91                  ModelCorrespondence { 
 92                     "CIM_PolicyTimePeriodCondition.MonthOfYearMask", 
 93                     "CIM_PolicyTimePeriodCondition.DayOfMonthMask", 
 94                     "CIM_PolicyTimePeriodCondition.DayOfWeekMask", 
 95                     "CIM_PolicyTimePeriodCondition.TimeOfDayMask", 
 96                     "CIM_PolicyTimePeriodCondition.LocalOrUtcTime" }]
 97              string TimePeriod;
 98           
 99                 [Description ( 
100                     "The purpose of this property is to refine the valid time "
101                     "period that is defined by the TimePeriod property, by "
102                     "explicitly specifying in which months the PolicySet is "
103                     "valid. These properties work together, with the "
104                     "TimePeriod used to specify the overall time period in "
105                     "which the PolicySet is valid, and the MonthOfYearMask "
106 marek 1.1           "used to pick out the months during which the PolicySet "
107                     "is valid. \n"
108                     "\n"
109                     "This property is formatted as an octet string, "
110                     "structured as follows: \n"
111                     "o a 4-octet length field, indicating the length of the "
112                     "entire octet string; this field is always set to "
113                     "0x00000006 for this property; \n"
114                     "o a 2-octet field consisting of 12 bits identifying the "
115                     "12 months of the year, beginning with January and ending "
116                     "with December, followed by 4 bits that are always set to "
117                     "\'0\'. For each month, the value \'1\' indicates that "
118                     "the policy is valid for that month, and the value \'0\' "
119                     "indicates that it is not valid. \n"
120                     "\n"
121                     "The value 0x000000060830, for example, indicates that a "
122                     "PolicySet is valid only in the months May, November, and "
123                     "December. \n"
124                     "\n"
125                     "If a value for this property is not provided, then the "
126                     "PolicySet is treated as valid for all twelve months, and "
127 marek 1.1           "only restricted by its TimePeriod property value and the "
128                     "other Mask properties." ), 
129                  OctetString, ModelCorrespondence { 
130                     "CIM_PolicyTimePeriodCondition.TimePeriod", 
131                     "CIM_PolicyTimePeriodCondition.LocalOrUtcTime" }]
132              uint8 MonthOfYearMask[];
133           
134                 [Description ( 
135                     "The purpose of this property is to refine the valid time "
136                     "period that is defined by the TimePeriod property, by "
137                     "explicitly specifying in which days of the month the "
138                     "PolicySet is valid. These properties work together, with "
139                     "the TimePeriod used to specify the overall time period "
140                     "in which the PolicySet is valid, and the DayOfMonthMask "
141                     "used to pick out the days of the month during which the "
142                     "PolicySet is valid. \n"
143                     "\n"
144                     "This property is formatted as an octet string, "
145                     "structured as follows: \n"
146                     "o a 4-octet length field, indicating the length of the "
147                     "entire octet string; this field is always set to "
148 marek 1.1           "0x0000000C for this property; \n"
149                     "o an 8-octet field consisting of 31 bits identifying the "
150                     "days of the month counting from the beginning, followed "
151                     "by 31 more bits identifying the days of the month "
152                     "counting from the end, followed by 2 bits that are "
153                     "always set to \'0\'. For each day, the value \'1\' "
154                     "indicates that the PolicySet is valid for that day, and "
155                     "the value \'0\' indicates that it is not valid. \n"
156                     "\n"
157                     "The value 0x0000000C8000000100000000, for example, "
158                     "indicates that a PolicySet is valid on the first and "
159                     "last days of the month. \n"
160                     "\n"
161                     "For months with fewer than 31 days, the digits "
162                     "corresponding to days that the months do not have "
163                     "(counting in both directions) are ignored. \n"
164                     "\n"
165                     "If a value for this property is not provided, then the "
166                     "PolicySet is treated as valid for all days of the month, "
167                     "and only restricted by its TimePeriod property value and "
168                     "the other Mask properties." ), 
169 marek 1.1        OctetString, ModelCorrespondence { 
170                     "CIM_PolicyTimePeriodCondition.TimePeriod", 
171                     "CIM_PolicyTimePeriodCondition.LocalOrUtcTime" }]
172              uint8 DayOfMonthMask[];
173           
174                 [Description ( 
175                     "The purpose of this property is to refine the valid time "
176                     "period that is defined by the TimePeriod property, by "
177                     "explicitly specifying in which days of the week the "
178                     "PolicySet is valid. These properties work together, with "
179                     "the TimePeriod used to specify the overall time period "
180                     "in which the PolicySet is valid, and the DayOfWeekMask "
181                     "used to pick out the days of the week during which the "
182                     "PolicySet is valid. \n"
183                     "\n"
184                     "This property is formatted as an octet string, "
185                     "structured as follows: \n"
186                     "o a 4-octet length field, indicating the length of the "
187                     "entire octet string; this field is always set to "
188                     "0x00000005 for this property; \n"
189                     "o a 1-octet field consisting of 7 bits identifying the 7 "
190 marek 1.1           "days of the week, beginning with Sunday and ending with "
191                     "Saturday, followed by 1 bit that is always set to \'0\'. "
192                     "For each day of the week, the value \'1\' indicates that "
193                     "the PolicySet is valid for that day, and the value \'0\' "
194                     "indicates that it is not valid. \n"
195                     "\n"
196                     "The value 0x000000057C, for example, indicates that a "
197                     "PolicySet is valid Monday through Friday. \n"
198                     "\n"
199                     "If a value for this property is not provided, then the "
200                     "PolicySet is treated as valid for all days of the week, "
201                     "and only restricted by its TimePeriod property value and "
202                     "the other Mask properties." ), 
203                  OctetString, ModelCorrespondence { 
204                     "CIM_PolicyTimePeriodCondition.TimePeriod", 
205                     "CIM_PolicyTimePeriodCondition.LocalOrUtcTime" }]
206              uint8 DayOfWeekMask[];
207           
208                 [Description ( 
209                     "The purpose of this property is to refine the valid time "
210                     "period that is defined by the TimePeriod property, by "
211 marek 1.1           "explicitly specifying a range of times in a day during "
212                     "which the PolicySet is valid. These properties work "
213                     "together, with the TimePeriod used to specify the "
214                     "overall time period in which the PolicySet is valid, and "
215                     "the TimeOfDayMask used to pick out the range of time "
216                     "periods in a given day of during which the PolicySet is "
217                     "valid. \n"
218                     "\n"
219                     "This property is formatted in the style of RFC 2445: a "
220                     "time string beginning with the character \'T\', followed "
221                     "by the solidus character \'/\', followed by a second "
222                     "time string. The first time indicates the beginning of "
223                     "the range, while the second time indicates the end. "
224                     "Times are expressed as substrings of the form \'Thhmmss\'. \n"
225                     "\n"
226                     "The second substring always identifies a later time than "
227                     "the first substring. To allow for ranges that span "
228                     "midnight, however, the value of the second string may be "
229                     "smaller than the value of the first substring. Thus, "
230                     "\'T080000/T210000\' identifies the range from 0800 until "
231                     "2100, while \'T210000/T080000\' identifies the range "
232 marek 1.1           "from 2100 until 0800 of the following day. \n"
233                     "\n"
234                     "When a range spans midnight, it by definition includes "
235                     "parts of two successive days. When one of these days is "
236                     "also selected by either the MonthOfYearMask, "
237                     "DayOfMonthMask, and/or DayOfWeekMask, but the other day "
238                     "is not, then the PolicySet is active only during the "
239                     "portion of the range that falls on the selected day. For "
240                     "example, if the range extends from 2100 until 0800, and "
241                     "the day of week mask selects Monday and Tuesday, then "
242                     "the PolicySet is active during the following three "
243                     "intervals: \n"
244                     "From midnight Sunday until 0800 Monday; \n"
245                     "From 2100 Monday until 0800 Tuesday; \n"
246                     "From 2100 Tuesday until 23:59:59 Tuesday. \n"
247                     "\n"
248                     "If a value for this property is not provided, then the "
249                     "PolicySet is treated as valid for all hours of the day, "
250                     "and only restricted by its TimePeriod property value and "
251                     "the other Mask properties." ), 
252                  ModelCorrespondence { 
253 marek 1.1           "CIM_PolicyTimePeriodCondition.TimePeriod", 
254                     "CIM_PolicyTimePeriodCondition.LocalOrUtcTime" }]
255              string TimeOfDayMask;
256           
257                 [Description ( 
258                     "This property indicates whether the times represented in "
259                     "the TimePeriod property and in the various Mask "
260                     "properties represent local times or UTC times. There is "
261                     "no provision for mixing of local times and UTC times: "
262                     "the value of this property applies to all of the other "
263                     "time-related properties. TimePeriods are synchronized "
264                     "worldwide by using the enumeration value \'UTCTime\'. If "
265                     "the goal is to synchronize worldwide on a particular "
266                     "local time (such as 0300 - 0500 in New York), then if "
267                     "the TimePeriod property spans a Daylight Savings Time "
268                     "transition in New York, it will be necessary to create "
269                     "multiple instances of PolicyTimePeriodCondition, one "
270                     "based on the offset UTC-0500 for the part of each year "
271                     "when standard time is used in New York, and one based on "
272                     "the offset UTC-0400 for the part of each year when "
273                     "Daylight Savings Time is used there." ), 
274 marek 1.1        ValueMap { "1", "2" }, 
275                  Values { "Local Time", "UTC Time" }, 
276                  ModelCorrespondence { 
277                     "CIM_PolicyTimePeriodCondition.TimePeriod", 
278                     "CIM_PolicyTimePeriodCondition.MonthOfYearMask", 
279                     "CIM_PolicyTimePeriodCondition.DayOfMonthMask", 
280                     "CIM_PolicyTimePeriodCondition.DayOfWeekMask", 
281                     "CIM_PolicyTimePeriodCondition.TimeOfDayMask" }]
282              uint16 LocalOrUtcTime;
283           
284           
285           };

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2