(file) Return to IndicationService.h CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / IndicationService

  1 kumpf 1.1 //%//////-*-c++-*-//////////////////////////////////////////////////////////////
  2           //
  3           // Copyright (c) 2000, 2001 BMC Software, Hewlett-Packard Company, IBM,
  4           // The Open Group, Tivoli Systems
  5           //
  6           // Permission is hereby granted, free of charge, to any person obtaining a copy
  7           // of this software and associated documentation files (the "Software"), to
  8           // deal in the Software without restriction, including without limitation the
  9           // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
 10           // sell copies of the Software, and to permit persons to whom the Software is
 11           // furnished to do so, subject to the following conditions:
 12           //
 13           // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
 14           // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
 15           // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
 16           // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
 17           // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 18           // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
 19           // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 20           // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 21           //
 22 kumpf 1.1 //==============================================================================
 23           //
 24           // Author: Nitin Upasani, Hewlett-Packard Company (Nitin_Upasani@hp.com)
 25           //
 26           // Modified By:  Carol Ann Krug Graves, Hewlett-Packard Company
 27           //               (carolann_graves@hp.com)
 28           //
 29           // Modified By:  Ben Heilbronn, Hewlett-Packard Company
 30           //               (ben_heilbronn@hp.com)
 31           //
 32           //%/////////////////////////////////////////////////////////////////////////////
 33           
 34           #ifndef Pegasus_IndicationService_h
 35           #define Pegasus_IndicationService_h
 36           
 37           #include <Pegasus/Common/Config.h>
 38           #include <Pegasus/Common/MessageQueueService.h>
 39           #include <Pegasus/Common/CIMMessage.h>
 40           #include <Pegasus/Repository/CIMRepository.h>
 41           #include <Pegasus/WQL/WQLParser.h>
 42           #include <Pegasus/WQL/WQLSelectStatement.h>
 43 kumpf 1.1 #include <Pegasus/WQL/WQLSimplePropertySource.h>
 44           
 45           PEGASUS_NAMESPACE_BEGIN
 46           
 47           struct ProviderClassList
 48           {
 49               String providerName;
 50               Array <String> classList;
 51           };
 52           
 53           struct SubscriptionRef
 54           {
 55               CIMInstance subscription;
 56               String nameSpaceName;
 57           };
 58           
 59           struct HandlerRef
 60           {
 61               CIMInstance handler;
 62               String nameSpaceName;
 63           };
 64 kumpf 1.1 
 65           /**
 66           
 67               IndicationService class is the provider that serves the
 68               CIM_IndicationSubscription, CIM_IndicationFilter, and CIM_IndicationHandler
 69               classes.
 70           
 71               @author  Hewlett-Packard Company
 72           
 73            */
 74           
 75           class PEGASUS_SERVER_LINKAGE IndicationService : public MessageQueueService
 76           {
 77           public:
 78           
 79               typedef MessageQueueService Base;
 80           
 81               /**
 82                   Operation types for the NotifyProviderRegistration API
 83                */
 84               enum Operation {OP_CREATE = 1, OP_DELETE = 2, OP_MODIFY = 3};
 85 kumpf 1.1 
 86               /**
 87                   Constructs an IndicationSubscription instance and initializes instance
 88                   variables.
 89                */
 90               IndicationService(CIMRepository * repository);
 91           
 92               virtual ~IndicationService(void);
 93           
 94 mday  1.2     void handleEnqueue(Message* message);
 95 kumpf 1.1 
 96               virtual void handleEnqueue(void); 
 97           
 98               virtual void _handle_async_request(AsyncRequest *req);
 99           
100               AtomicInt dienow;
101           
102           private:
103           
104               CIMRepository* _repository;
105           
106               /**
107                   Integer representing queue ID for accessing Provider Manager Service
108                */
109               Uint32 _providerManager;
110           
111               /**
112                   Integer representing queue ID for accessing Repository Service
113                */
114               //Uint32 _repository;
115           
116 kumpf 1.1     /**
117                   Integer representing queue ID for accessing Handler Manager Service
118                */
119               Uint32 _handlerService;
120           
121           
122               /**
123                   Values for the Subscription State property of the Subscription class,
124                   as defined in the CIM Events MOF
125                */
126               enum SubscriptionState {_STATE_UNKNOWN = 0, _STATE_OTHER = 1, 
127                    _STATE_ENABLED = 2, _STATE_ENABLEDDEGRADED = 3, _STATE_DISABLED = 4};
128           
129               /**
130                   Values for the Repeat Notification Policy property of the Subscription 
131                   class, as defined in the CIM Events MOF
132                */
133               enum RepeatNotificationPolicy {_POLICY_UNKNOWN = 0, _POLICY_OTHER = 1,
134                    _POLICY_NONE = 2, _POLICY_SUPPRESS = 3, _POLICY_DELAY = 4};
135           
136               /**
137 kumpf 1.1         Values for the On Fatal Error Policy property of the Subscription 
138                   class, as defined in the CIM Events MOF
139                */
140               enum OnFatalErrorPolicy {_ERRORPOLICY_OTHER = 1, _ERRORPOLICY_IGNORE = 2, 
141                   _ERRORPOLICY_DISABLE = 3, _ERRORPOLICY_REMOVE = 4};
142           
143               /**
144                   Values for the Persistence Type property of the Handler class, 
145                   as defined in the CIM Events MOF
146                */
147               enum PersistenceType {_PERSISTENCE_OTHER = 1, _PERSISTENCE_PERMANENT = 2, 
148                   _PERSISTENCE_TRANSIENT = 3};
149           
150               /**
151                   Values for the Perceived Severity property of the Alert Indication 
152                   class, as defined in the CIM Events MOF
153                */
154               enum PerceivedSeverity {_SEVERITY_UNKNOWN = 0, _SEVERITY_OTHER = 1, 
155                    _SEVERITY_INFORMATION = 2, _SEVERITY_WARNING = 3, _SEVERITY_MINOR = 4,
156                    _SEVERITY_MAJOR = 5, _SEVERITY_CRITICAL = 6, _SEVERITY_FATAL = 7};
157           
158 kumpf 1.1     /**
159                   Values for the Probable Cause property of the Alert Indication 
160                   class, as defined in the CIM Events MOF
161                   Note: not all possible values have been included
162                */
163               enum ProbableCause {_CAUSE_UNKNOWN = 0, _CAUSE_OTHER = 1};
164           
165               /**
166                   Values for the Alert Type property of the Alert Indication class, 
167                   as defined in the CIM Events MOF
168                */
169               enum AlertType {_TYPE_OTHER = 1, _TYPE_COMMUNICATIONS = 2, _TYPE_QOS = 3,
170                    _TYPE_PROCESSING = 4, _TYPE_DEVICE = 5, _TYPE_ENVIRONMENTAL = 6,
171                    _TYPE_MODELCHANGE = 7, _TYPE_SECURITY = 8};
172           
173               void _initialize (void);
174           
175               void _terminate (void);
176           
177               void _handleGetInstanceRequest(const Message * message);
178           
179 kumpf 1.1     void _handleEnumerateInstancesRequest(const Message * message);
180           
181               void _handleEnumerateInstanceNamesRequest(const Message * message);
182           
183               void _handleCreateInstanceRequest(const Message * message);
184           
185               void _handleModifyInstanceRequest(const Message * message);
186           
187               void _handleDeleteInstanceRequest(const Message * message);
188           
189               void _handleProcessIndicationRequest(const Message * message);
190           
191               /**
192           	Notifies the Indication Service that a change in provider registration
193           	has occurred.  The Indication Service retrieves the subscriptions
194           	affected by the registration change, sends the appropriate enable
195           	and/or disable requests to the provider, and sends an alert to handler
196           	instances of subscriptions that are no longer served by the provider.
197               */
198               void _handleNotifyProviderRegistrationRequest(const Message * message);
199           
200 kumpf 1.1     /**
201                   Notifies the Indication Subscription Service that a provider has
202                   terminated (either intentionally or abnormally).  The Indication
203                   Subscription Service retrieves the subscriptions affected by the
204                   termination, and sends an alert to handler instances of
205                   subscriptions that are no longer served by the provider.
206                */
207               void _handleNotifyProviderTerminationRequest(const Message * message);
208           
209               /**
210                   Determines if it is legal to delete an instance. Subscription
211                   instances may always be deleted. Filter and Handler instances
212                   may only be deleted if they are not being referenced by any
213                   Subscription instances.  Authorization checks are NOT performed
214                   by _canDelete.
215                */
216               Boolean _canDelete (
217                   const CIMReference & instanceReference,
218                   const String & nameSpace);
219           
220               /**
221 kumpf 1.1         Retrieves list of enabled subscription instances in all namespaces.
222           
223                   @return   list of SubscriptionRef structs
224                */
225               Array <struct SubscriptionRef> _getActiveSubscriptions () const;
226           
227               /**
228                   Retrieves list of enabled subscription instances in all namespaces,
229                   where the subscription indication class matches or is a superclass
230                   of the target class, and the properties required to process the
231                   subscription are all contained in the list of target properties.
232           
233                   @param   targetClass       the target class
234                   @param   targetProperties  the list of target properties
235           
236                   @return   list of SubscriptionRef structs
237                */
238               Array <struct SubscriptionRef> _getMatchingSubscriptions (
239                   const String & targetClass,
240                   const CIMPropertyList & targetProperties) const;
241           
242 kumpf 1.1     /**
243                   Retrieves lists of enabled subscription instances in all namespaces
244                   that are either newly supported or previously supported, based on the
245                   target class and the old and new property lists.  For subscriptions
246                   based on the target class, the newSubscriptions list returned contains
247                   the subscriptions for which the properties required to process the
248                   subscription are all contained in the list of new properties, but are
249                   not all contained in the list of old properties.  The
250                   formerSubscriptions list returned contains the subscriptions for which
251                   the properties required to process the subscription are not all
252                   contained in the list of new properties, but are all contained in the
253                   list of old properties.
254           
255                   @param   targetClass          the target class
256                   @param   newProperties        the list of new properties
257                   @param   oldProperties        the list of old properties
258                   @param   newSubscriptions     the list of newly supported subscriptions
259                   @param   formerSubscriptions  the list of previously supported
260                                                     subscriptions
261                */
262               void _getModifiedSubscriptions (
263 kumpf 1.1         const String & targetClass,
264                   const CIMPropertyList & newProperties,
265                   const CIMPropertyList & oldProperties,
266                   Array <struct SubscriptionRef> & newSubscriptions,
267                   Array <struct SubscriptionRef> & formerSubscriptions);
268           
269               /**
270                   Retrieves list of enabled subscription instances in all namespaces,
271                   that are served by the specified provider.
272           
273                   @param   providerName      the provider name
274           
275                   @return   list of SubscriptionRef structs
276                */
277               Array <struct SubscriptionRef> _getProviderSubscriptions (
278                   const String & providerName);
279           
280               /**
281                   Retrieves the string value of the filter query property
282                   for the specified subscription instance.
283           
284 kumpf 1.1         @param   subscription      the subscription instance
285                   @param   nameSpaceName     the namespace name
286           
287                   @return  String containing the filter query
288                */
289               String _getFilterQuery (
290                   const CIMInstance & subscription,
291                   const String & nameSpaceName) const;
292           
293               /**
294                   Retrieves the string value of the filter query language property
295                   for the specified subscription instance.
296           
297                   @param   subscription      the subscription instance
298                   @param   nameSpaceName     the namespace name
299           
300                   @return  String containing the filter query language
301                */
302               String _getFilterQueryLanguage (
303                   const CIMInstance & subscription,
304                   const String & nameSpaceName) const;
305 kumpf 1.1 
306               /**
307                   Parses the filter query string, and returns the corresponding
308                   WQLSelectStatement object.
309           
310                   @param   filterQuery           the filter query string
311           
312                   @return  WQLSelectStatement representing the filter query
313                */
314               WQLSelectStatement _getSelectStatement (
315                   const String & filterQuery) const;
316           
317               /**
318                   Extracts the indication class name from the specified WQL select
319                   statement, and validates that the name represents a subclass of the
320                   Indication class.
321           
322                   @param   selectStatement       the WQL select statement
323                   @param   nameSpaceName         the namespace
324           
325                   @return  String containing the indication class name
326 kumpf 1.1      */
327               String _getIndicationClassName (
328                   const WQLSelectStatement & selectStatement,
329                   const String & nameSpaceName) const;
330           
331               /**
332                   Retrieves the list of indication providers that serve the specified
333                   indication subclasses.
334           
335                   @param   nameSpaceName         the namespace name
336                   @param   indicationClassName   the indication class name
337                   @param   indicationSubclasses  the list of indication subclass names
338                   @param   requiredPropertyList  the properties required
339           
340                   @return  list of ProviderClassList structs
341                */
342               Array <struct ProviderClassList> _getIndicationProviders (
343                   const String & nameSpace,
344                   const String & indicationClassName,
345                   const Array <String> & indicationSubclasses,
346                   const CIMPropertyList & requiredPropertyList) const;
347 kumpf 1.1 
348               /**
349                   Retrieves the list of properties referenced by the specified
350                   filter query select statement.
351           
352                   @param   selectStatement       the WQL select statement
353           
354                   @return  list of properties referenced by the filter query select
355                            statement
356                */
357               CIMPropertyList _getPropertyList (
358                   const WQLSelectStatement & selectStatement) const;
359           
360               /**
361                   Extracts the condition (WHERE Clause) from the specified filter query
362                   string.
363           
364                   @param   filterQuery       the filter query
365           
366                   @return  String containing the filter query condition
367                */
368 kumpf 1.1     String _getCondition (
369                   const String & filterQuery) const;
370           
371               /**
372                   Retrieves the HandlerRef struct representing the handler of the
373                   specified subscription.
374           
375                   @param   subscriptionRef       the subscription
376           
377                   @return  a HandlerRef struct for the subscription's handler
378                */
379               struct HandlerRef _getHandlerRef (
380                   const struct SubscriptionRef& subscriptionRef) const;
381           
382               /**
383 kumpf 1.4         Determines if specified handler is Transient.
384           
385                   @param   nameSpace             the name space
386                   @param   handler               the handler reference
387           
388                   @return  True if the Handler is Transient, 
389                            False otherwise
390                */
391               Boolean _isTransient (
392                   const String & nameSpace,
393                   const CIMReference & handler) const;
394           
395               /**
396                   Deletes subscriptions referencing the specified handler.
397           
398                   @param   nameSpace             the name space
399                   @param   referenceProperty     the name of the reference property in the
400                                                      subscription instance
401                   @param   handler               the handler reference
402                */
403               void _deleteReferencingSubscriptions (
404 kumpf 1.4         const String & nameSpace,
405                   const String & referenceProperty,
406                   const CIMReference & handler);
407           
408               /**
409                   Determines if specified Subscription has expired
410           
411                   NOTE: It is assumed that the instance passed to this function is a
412                   Subscription instance, and that the Subscription Duration and
413                   Start Time properties exist
414           
415                   @param   instance              the subscription instance
416           
417                   @return  True if the Subscription has expired, 
418                            False otherwise
419                */
420               Boolean _isExpired (
421                   const CIMInstance & instance) const;
422           
423               /**
424                   Sets the Subscription Time Remaining property
425 kumpf 1.4 
426                   Calculates time remaining from Subscription Start Time, Subscription 
427                   Duration, and current date time
428                 
429                   NOTE: It is assumed that the instance passed to this function is a
430                   Subscription instance, and that the Subscription Duration and
431                   Start Time properties exist
432           
433                   @param   instance              the subscription instance
434                */
435               void _setTimeRemaining (
436                   CIMInstance & instance);
437           
438               /**
439 kumpf 1.3         Gets the parameter values required to enable the subscription request.
440                   If no indciation providers are found, condition and queryLanguage are 
441                   set to empty string.
442           
443                   @param   nameSpace             Input namespace name
444                   @param   subscription          Input subscription instance
445                   @param   indicationProviders   Output list of providers with associated
446                                                      classes
447                   @param   propertyList          Output list of properties required by the
448                                                      subscription
449                   @param   condition             Output condition part of the filter query
450                   @param   queryLanguage         Output query language in which the filter
451                                                      query is expressed
452                */
453               void _getEnableParams (
454                   const String & nameSpaceName,
455                   const CIMInstance & subscriptionInstance,
456                   Array <struct ProviderClassList> & indicationProviders,
457                   CIMPropertyList & propertyList,
458                   String & condition,
459                   String & queryLanguage);
460 kumpf 1.3 
461               /**
462 kumpf 1.1         Sends enable subscription request for the specified subscription
463                   to each provider in the list.
464           
465                   @param   indicationProviders   list of providers with associated classes
466                   @param   nameSpace             the namespace name
467                   @param   propertyList          the properties referenced by the
468                                                      subscription
469                   @param   condition             the condition part of the filter query
470                   @param   queryLanguage         the query language in which the filter
471                                                      query is expressed
472                   @param   subscription          the subscription to be enabled
473                */
474               void _sendEnableRequests (
475                   const Array <struct ProviderClassList> & indicationProviders,
476                   const String & nameSpace,
477                   const CIMPropertyList & propertyList,
478                   const String & condition,
479                   const String & queryLanguage,
480                   const CIMInstance & subscription);
481           
482               /**
483 kumpf 1.1         Sends modify subscription request for the specified subscription
484                   to each provider in the list.
485           
486                   @param   indicationProviders   list of providers with associated classes
487                   @param   nameSpace             the namespace name
488                   @param   propertyList          the properties referenced by the
489                                                      subscription
490                   @param   condition             the condition part of the filter query
491                   @param   queryLanguage         the query language in which the filter
492                                                      query is expressed
493                   @param   subscription          the subscription to be modified
494                */
495               void _sendModifyRequests (
496                   const Array <struct ProviderClassList> & indicationProviders,
497                   const String & nameSpace,
498                   const CIMPropertyList & propertyList,
499                   const String & condition,
500                   const String & queryLanguage,
501                   const CIMInstance & subscription);
502           
503               /**
504 kumpf 1.1         Sends disable subscription request for the specified subscription
505                   to each provider in the list.
506           
507                   @param   indicationProviders   list of providers with associated classes
508                   @param   nameSpace             the namespace name
509                   @param   subscription          the subscription to be modified
510                */
511               void _sendDisableRequests (
512                   const Array <struct ProviderClassList> & indicationProviders,
513                   const String & nameSpace,
514                   const CIMInstance & subscription);
515           
516               /**
517                   Creates an alert instance of the specified class.
518           
519                   @param   alertClassName        the alert class name
520                   @param   subscriptionRefs      subscriptions for which alert is to be
521                                                      created
522           
523                   @return  the created alert instance
524                */
525 kumpf 1.1     CIMInstance _createAlertInstance (
526                   const String & alertClassName,
527                   const Array <struct SubscriptionRef> & subscriptionRefs);
528           
529               /**
530                   Sends specified alert to each unique handler instance for the
531                   specified subscriptions in the list.
532           
533                   @param   subscriptionRefs      subscriptions for which alert is to be
534                                                      sent
535                   @param   alertInstance         the alert to be sent
536                */
537               void _sendAlerts (
538                   const Array <struct SubscriptionRef> & subscriptionRefs,
539                   /* const */ CIMInstance & alertInstance);
540           
541               WQLSimplePropertySource _getPropertySourceFromInstance(
542                   CIMInstance & indicationInstance);
543           
544 kumpf 1.3     //
545               //  Class names
546               //
547           
548 kumpf 1.1     /**
549                   The name of the indication subscription class
550                */
551               static const char   _CLASS_SUBSCRIPTION [];
552           
553               /**
554                   The name of the indication filter class
555                */
556               static const char   _CLASS_FILTER [];
557           
558               /**
559                   The name of the indication handler class
560                */
561               static const char   _CLASS_HANDLER [];
562           
563               /**
564                   The name of the CIMXML Indication Handler class
565                */
566               static const char   _CLASS_HANDLERCIMXML [];
567           
568               /**
569 kumpf 1.1         The name of the SNMP Indication Handler class
570                */
571               static const char   _CLASS_HANDLERSNMP [];
572           
573               /**
574                   The name of the Indication class
575                */
576               static const char   _CLASS_INDICATION [];
577           
578               /**
579                   The name of the CIMOM Shutdown alert indication class
580                */
581               static const char   _CLASS_CIMOM_SHUTDOWN_ALERT [];
582           
583               /**
584                   The name of the No Provider alert indication class
585                */
586               static const char   _CLASS_NO_PROVIDER_ALERT [];
587           
588               /**
589                   The name of the CIMOM shutdown alert indication class
590 kumpf 1.1      */
591               static const char   _CLASS_PROVIDER_TERMINATED_ALERT [];
592           
593               /**
594                   The name of the Provider Capabilities class
595                */
596               static const char   _CLASS_PROVIDER_CAPABILITIES [];
597           
598 kumpf 1.3     //
599               //  Property names
600               //
601           
602 kumpf 1.1     /**
603                   The name of the Subscription State property for Indication Subscription
604                   class
605                */
606               static const char   _PROPERTY_STATE [];
607           
608               /**
609                   The name of the Other Subscription State property for Indication
610                   Subscription class
611                */
612               static const char   _PROPERTY_OTHERSTATE [];
613           
614               /**
615                   The name of the repeat notification policy property for indication
616                   subscription class
617                */
618               static const char   _PROPERTY_REPEATNOTIFICATIONPOLICY [];
619           
620               /**
621                   The name of the other repeat notification policy property for
622                   indication subscription class
623 kumpf 1.1      */
624               static const char   _PROPERTY_OTHERREPEATNOTIFICATIONPOLICY [];
625           
626               /**
627                   The name of the repeat notification interval property for indication
628                   subscription class
629                */
630               static const char   _PROPERTY_REPEATNOTIFICATIONINTERVAL [];
631           
632               /**
633                   The name of the repeat notification gap property for indication
634                   subscription class
635                */
636               static const char   _PROPERTY_REPEATNOTIFICATIONGAP [];
637           
638               /**
639                   The name of the repeat notification count property for indication
640                   subscription class
641                */
642               static const char   _PROPERTY_REPEATNOTIFICATIONCOUNT [];
643           
644 kumpf 1.1     /**
645                   The name of the On Fatal Error Policy property for Indication 
646                   Subscription class
647                */
648               static const char   _PROPERTY_ONFATALERRORPOLICY [];
649           
650               /**
651                   The name of the Other On Fatal Error Policy property for Indication
652                   Subscription class
653                */
654               static const char   _PROPERTY_OTHERONFATALERRORPOLICY [];
655           
656               /**
657 kumpf 1.4         The name of the Time Of Last State Change property for Indication 
658                   Subscription class
659                */
660               static const char   _PROPERTY_LASTCHANGE [];
661           
662               /**
663                   The name of the Subscription Start Time property for Indication 
664                   Subscription class
665                */
666               static const char   _PROPERTY_STARTTIME [];
667           
668               /**
669                   The name of the Subscription Duration property for Indication 
670                   Subscription class
671                */
672               static const char   _PROPERTY_DURATION [];
673           
674               /**
675                   The name of the Subscription Time Remaining property for Indication 
676                   Subscription class
677                */
678 kumpf 1.4     static const char   _PROPERTY_TIMEREMAINING [];
679           
680               /**
681 kumpf 1.1         The name of the filter reference property for indication subscription
682                   class
683                */
684               static const char   _PROPERTY_FILTER [];
685           
686               /**
687                   The name of the handler reference property for indication subscription
688                   class
689                */
690               static const char   _PROPERTY_HANDLER [];
691           
692               /**
693                   The name of the query property for indication filter class
694                */
695               static const char   _PROPERTY_QUERY [];
696           
697               /**
698                   The name of the query language property for indication filter class
699                */
700               static const char   _PROPERTY_QUERYLANGUAGE [];
701           
702 kumpf 1.1     /**
703                   The name of the Source Namespace property for indication filter class
704                */
705               static const char   _PROPERTY_SOURCENAMESPACE [];
706           
707               /**
708                   The name of the name property for indication filter and indication
709                   handler classes
710                */
711               static const char   _PROPERTY_NAME [];
712           
713               /**
714                   The name of the creation class name property for indication filter and
715                   indication handler classes
716                */
717               static const char   _PROPERTY_CREATIONCLASSNAME [];
718           
719               /**
720                   The name of the system name property for indication filter and
721                   indication handler classes
722                */
723 kumpf 1.1     static const char   _PROPERTY_SYSTEMNAME [];
724           
725               /**
726                   The name of the system creation class name property for indication
727                   filter and indication handler classes
728                */
729               static const char   _PROPERTY_SYSTEMCREATIONCLASSNAME [];
730           
731               /**
732                   The name of the Persistence Type property for Indication Handler class
733                */
734               static const char   _PROPERTY_PERSISTENCETYPE [];
735           
736               /**
737                   The name of the Other Persistence Type property for Indication Handler
738                   class
739                */
740               static const char   _PROPERTY_OTHERPERSISTENCETYPE [];
741           
742               /**
743                   The name of the Destination property for Indication Handler subclasses
744 kumpf 1.1      */
745               static const char   _PROPERTY_DESTINATION [];
746           
747               /**
748                   The name of the SNMP Type property for SNMP Indication Handler class
749                */
750               static const char   _PROPERTY_SNMPTYPE [];
751           
752               /**
753                   The name of the Alert Type property for Alert Indication class
754                */
755               static const char   _PROPERTY_ALERTTYPE [];
756           
757               /**
758                   The name of the Other Alert Type property for Alert Indication class
759                */
760               static const char   _PROPERTY_OTHERALERTTYPE [];
761           
762               /**
763                   The name of the Perceived Severity property for Alert Indication class
764                */
765 kumpf 1.1     static const char   _PROPERTY_PERCEIVEDSEVERITY [];
766           
767               /**
768                   The name of the Probable Cause property for Alert Indication class
769                */
770               static const char   _PROPERTY_PROBABLECAUSE [];
771           
772               /**
773                   The name of the Creator property for a class
774                */
775               static const char   _PROPERTY_CREATOR [];
776           
777               /**
778                   The name of the Provider Name property for Provider Capabilities class
779                */
780               static const char   _PROPERTY_PROVIDER_NAME [];
781           
782               /**
783                   The name of the Class Name property for Provider Capabilities class
784                */
785               static const char   _PROPERTY_CLASS_NAME [];
786 kumpf 1.1 
787               /**
788                   The name of the Supported Properties property for Provider Capabilities
789                   class
790                */
791               static const char   _PROPERTY_SUPPORTED_PROPERTIES [];
792           
793               /**
794                   The name of the Provider Type property for Provider Capabilities class
795                */
796               static const char   _PROPERTY_PROVIDER_TYPE [];
797           
798 kumpf 1.3     //
799 kumpf 1.4     //  Service names
800 kumpf 1.3     //
801           
802 kumpf 1.1     /**
803 kumpf 1.4         The string identifying the service name of the Provider Manager Service
804 kumpf 1.1      */
805 kumpf 1.4     static const char _SERVICE_PROVIDERMANAGER [];
806 kumpf 1.1 
807               /**
808 kumpf 1.4         The string identifying the service name of the Handler Manager Service
809 kumpf 1.1      */
810 kumpf 1.4     static const char _SERVICE_HANDLERMANAGER [];
811 kumpf 1.1 
812               /**
813 kumpf 1.4         The string identifying the service name of the Repository Service
814 kumpf 1.1      */
815 kumpf 1.4     static const char _SERVICE_REPOSITORY [];
816           
817               //
818               //  Other literal values
819               //
820 kumpf 1.1 
821               /**
822 kumpf 1.4         The integer representing the Indication value for the Provider Type
823                   property of the Provider Capabilities class
824 kumpf 1.1      */
825 kumpf 1.4     static const Uint16 _VALUE_INDICATION;
826 kumpf 1.1 
827               /**
828 kumpf 1.4         The WHERE keyword in WQL
829 kumpf 1.1      */
830 kumpf 1.4     static const char   _QUERY_WHERE [];
831 kumpf 1.1 
832               /**
833 kumpf 1.4         The string representing the asterisk all properties symbol in WQL
834 kumpf 1.1      */
835 kumpf 1.4     static const char   _QUERY_ALLPROPERTIES [];
836 kumpf 1.3 
837               //
838               //  Message substrings used in exception messages
839               //
840           
841               static const char _MSG_MISSING_REQUIRED [];
842           
843               static const char _MSG_KEY_PROPERTY [];
844           
845               static const char _MSG_PROPERTY [];
846           
847               static const char _MSG_PROPERTY_PRESENT [];
848           
849               static const char _MSG_VALUE_NOT [];
850           
851               static const char _MSG_NO_PROVIDERS [];
852           
853               static const char _MSG_INVALID_CLASSNAME [];
854           
855               static const char _MSG_IN_FROM [];
856 kumpf 1.4 
857               static const char _MSG_EXPIRED [];
858 kumpf 1.1 };
859           
860           PEGASUS_NAMESPACE_END
861           
862           #endif

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2