version 1.21, 2003/10/22 14:26:11
|
version 1.22, 2003/11/12 15:29:36
|
|
|
PEGASUS_NAMESPACE_BEGIN | PEGASUS_NAMESPACE_BEGIN |
| |
/** | /** |
This class defines the set of methods implemented by an indication provider. A providers that derives |
This class defines the set of methods implemented by an indication |
from this class must implement all methods. The minimal method implementation simply throw the |
provider. A provider that derives from this class must implement all |
NotSupported exception. |
methods. The minimal method implementation simply throws the NotSupported |
|
exception. |
*/ | */ |
class PEGASUS_PROVIDER_LINKAGE CIMIndicationProvider : public virtual CIMProvider | class PEGASUS_PROVIDER_LINKAGE CIMIndicationProvider : public virtual CIMProvider |
{ | { |
public: | public: |
|
/** Constructs a CIMIndicationProvider instance with |
|
null values (default constructor). |
|
*/ |
CIMIndicationProvider(void); | CIMIndicationProvider(void); |
|
/** Destroys the CIMIndicationProvider. |
|
*/ |
virtual ~CIMIndicationProvider(void); | virtual ~CIMIndicationProvider(void); |
| |
/** ATTN: |
/** Called when the provider is expected to begin generating |
|
indications. The handler argument is what the provider uses to deliver |
|
the indications it generates. |
|
|
|
One or more createSubscription calls may precede the call to this method. |
|
(On start-up, all active subscriptions are given to the provider with |
|
createSubscription calls before the enableIndications method is called, so |
|
that the provider knows about all outstanding subscriptions before it |
|
starts generating indications.) |
|
@param IndicationResponseHandler |
|
@param handler |
|
|
*/ | */ |
|
|
virtual void enableIndications(IndicationResponseHandler & handler) = 0; | virtual void enableIndications(IndicationResponseHandler & handler) = 0; |
| |
/** ATTN: |
/** Tells the provider not to generate any more indications. After this call, |
|
the handler given to the provider in the enableIndications method is no |
|
longer valid, and calling it has undefined results. |
*/ | */ |
virtual void disableIndications(void) = 0; | virtual void disableIndications(void) = 0; |
| |
/** ATTN: |
/** Tells the provider to monitor for indications matching the specified |
|
subscription. Note that it is not necessary for a simple indication |
|
provider to take any action on createSubscription, modifySubscription, or |
|
deleteSubscription. It may simply generate indications (or not) based on |
|
the enableIndications and disableIndications calls. |
|
|
|
@param context Similar to that in the other provider interfaces. |
|
Of particular interest to indication providers are the |
|
SubscriptionInstanceContainer and SubscriptionFilterConditionContainer |
|
containers. The SubscriptionInstanceContainer contains the full |
|
CIM_IndicationSubscription instance (including, for example, more |
|
information about repeat notification policies). The |
|
SubscriptionFilterConditionContainer contains the query string and query |
|
language from the CIM_IndicationFilter instance. |
|
|
|
@param subscriptionName Specifies the object path of the CIM_IndicationSubscription |
|
instance that implicates this provider. |
|
|
|
@param classNames Contains a list of indication class names for |
|
which this provider has registered as an indication provider that are |
|
included in the CIM_IndicationFilter for this subscription instance. |
|
A provider can use this as a medium-level data for controlling which |
|
indications it generates. |
|
|
|
@param propertyList Specifies which properties of the specified class names |
|
must be included in the indications generated for this subscription. |
|
|
|
@param repeatNotificationPolicy Contains the value of the property with the |
|
same name in the CIM_IndicationSubscription instance. Most providers |
|
will probably not support repeat notification policies, and should throw |
|
a NotSupported exception if the value is anything other than "none". |
*/ | */ |
|
|
virtual void createSubscription( | virtual void createSubscription( |
const OperationContext & context, | const OperationContext & context, |
const CIMObjectPath & subscriptionName, | const CIMObjectPath & subscriptionName, |
|
|
const CIMPropertyList & propertyList, | const CIMPropertyList & propertyList, |
const Uint16 repeatNotificationPolicy) = 0; | const Uint16 repeatNotificationPolicy) = 0; |
| |
/** ATTN: |
/** Informs the provider that the specified subscription instance has changed. |
|
The arguments are similar to those for createSubscription. |
|
|
|
@param context Similar to that in the other provider interfaces. |
|
Of particular interest to indication providers are the |
|
SubscriptionInstanceContainer and SubscriptionFilterConditionContainer |
|
containers. The SubscriptionInstanceContainer contains the full |
|
CIM_IndicationSubscription instance (including, for example, more |
|
information about repeat notification policies). The |
|
SubscriptionFilterConditionContainer contains the query string and query |
|
language from the CIM_IndicationFilter instance. |
|
|
|
@param subscriptionName Specifies the object path of the CIM_IndicationSubscription |
|
instance that implicates this provider. |
|
|
|
@param classNames Contains a list of indication class names for |
|
which this provider has registered as an indication provider that are |
|
included in the CIM_IndicationFilter for this subscription instance. |
|
A provider can use this as a medium-level data for controlling which |
|
indications it generates. |
|
|
|
@param propertyList Specifies which properties of the specified class names |
|
must be included in the indications generated for this subscription. |
|
|
|
@param repeatNotificationPolicy Contains the value of the property with the |
|
same name in the CIM_IndicationSubscription instance. Most providers |
|
will probably not support repeat notification policies, and should throw |
|
a NotSupported exception if the value is anything other than "none". |
*/ | */ |
virtual void modifySubscription( | virtual void modifySubscription( |
const OperationContext & context, | const OperationContext & context, |
|
|
const CIMPropertyList & propertyList, | const CIMPropertyList & propertyList, |
const Uint16 repeatNotificationPolicy) = 0; | const Uint16 repeatNotificationPolicy) = 0; |
| |
/** ATTN: |
/** Informs the provider to stop monitoring for indications matching the |
|
specified subscription. |
|
|
|
@param context Similar to that in the other provider interfaces. |
|
Of particular interest to indication providers are the |
|
SubscriptionInstanceContainer and SubscriptionFilterConditionContainer |
|
containers. The SubscriptionInstanceContainer contains the full |
|
CIM_IndicationSubscription instance (including, for example, more |
|
information about repeat notification policies). The |
|
SubscriptionFilterConditionContainer contains the query string and query |
|
language from the CIM_IndicationFilter instance. |
|
|
|
@param subscriptionName Specifies the object path of the CIM_IndicationSubscription |
|
instance that implicates this provider. |
|
|
|
@param classNames Contains a list of indication class names for |
|
which this provider has registered as an indication provider that are |
|
included in the CIM_IndicationFilter for this subscription instance. |
|
A provider can use this as a medium-level data for controlling which |
|
indications it generates. This parameter contains extra data provided to assist |
|
those providers doing class-level control of indication generation. |
*/ | */ |
virtual void deleteSubscription( | virtual void deleteSubscription( |
const OperationContext & context, | const OperationContext & context, |