|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
This interface is implemented by indication providers.
Filters may be broken down into sub filters. Using sub filters, providers can process indications without knowing about the class hierarchy. The sub filter information is passed in as three arrays:
test_a test_b : test_a test_c : test_a test_d : test_aIf Provider P is the provider for test_b and test_c and the filter is 'select * from CIM_InstIndication where sourceInstance ISA test_a and sourceInstance.prop1 = 20', then P gets the following subfilter information:
subFilters[0] = "select * from CIM_InstCreation where sourceInstance.prop1=20" subFilters[1] = "select * from CIM_Deletion where sourceInstance.prop1=20" subFilters[2] = "select * from CIM_Modification where sourceInstance.prop1=20" subFilters[3] = "select * from CIM_Read where sourceInstance.prop1=20" subFilters[4] = "select * from CIM_Method where sourceInstance.prop1=20" subFilters[5] = "select * from CIM_InstCreation where sourceInstance.prop1=20" subFilters[6] = "select * from CIM_Deletion where sourceInstance.prop1=20" subFilters[7] = "select * from CIM_Modification where sourceInstance.prop1=20" subFilters[8] = "select * from CIM_Read where sourceInstance.prop1=20" subFilters[9] = "select * from CIM_Method where sourceInstance.prop1=20" classPath[0] = root/cimv2:test_b classPath[1] = root/cimv2:test_b classPath[2] = root/cimv2:test_b classPath[3] = root/cimv2:test_b classPath[4] = root/cimv2:test_b classPath[5] = root/cimv2:test_c classPath[6] = root/cimv2:test_c classPath[7] = root/cimv2:test_c classPath[8] = root/cimv2:test_c classPath[9] = root/cimv2:test_c eventType[0] = "CIM_InstCreation" eventType[1] = "CIM_InstDeletion" eventType[2] = "CIM_InstModification" eventType[3] = "CIM_InstRead" eventType[4] = "CIM_InstMethod" eventType[5] = "CIM_InstCreation" eventType[6] = "CIM_InstDeletion" eventType[7] = "CIM_InstModification" eventType[8] = "CIM_InstRead" eventType[9] = "CIM_InstMethod"NOTE: eventType is not strictly needed as the Provider could extract it from the subFilters string. It is provided as a convenience.
Two event handling interfaces are defined. Simple event handlers should use the EventProvider interface. More sophisticated event handlers should use the CIMIndicationHandler interface.
If a simple event handler is only interested in managing event filter activation/deactivation and does not intend to perform operations on the filters, handlers or subscriptions, then it should use the Event Provider interface.
In contrast, if a more sophisticated event handler intends to perform operations on filter, handler and subscription instances, then it should use the CIMIndicationHandler interface. For example, an event handler may wish to examine all filters to determine which filter applies.
Method Summary | |
void |
activateFilter(CIMInstance filter,
CIMInstance handler,
CIMInstance subscription,
java.lang.String[] subFilters,
CIMObjectPath[] classPath,
java.lang.String[] eventType)
Invoked to ask the Provider to check for events. |
void |
authorizeFilter(CIMInstance filter,
CIMInstance handler,
CIMInstance subscription,
java.lang.String[] subFilters,
CIMObjectPath[] classPath,
java.lang.String[] eventType)
Invoked to test if the given subscription is allowed. |
void |
deActivateFilter(CIMInstance filter,
CIMInstance handler,
CIMInstance subscription,
java.lang.String[] subFilters,
CIMObjectPath[] classPath,
java.lang.String[] eventType)
Invoked to deactivate an event filter. |
Methods inherited from interface javax.wbem.provider.Provider |
close, initialize |
Method Detail |
public void activateFilter(CIMInstance filter, CIMInstance handler, CIMInstance subscription, java.lang.String[] subFilters, CIMObjectPath[] classPath, java.lang.String[] eventType) throws WBEMException
filter
- The CIM_IndicationFilter instance being subscribed to.handler
- The CIM_IndicationHandler instance that is the destination of
the indication.subscription
- The subscription instance associating the filter and handler.subFilters
- See description for CIMIndicationProvider aboveclassPath
- See description for CIMIndicationProvider aboveeventType
- See description for CIMIndicationProvider above
WBEMException
- If unsuccessful, one of the following status codes may be
returned. The ORDERED list is:
public void authorizeFilter(CIMInstance filter, CIMInstance handler, CIMInstance subscription, java.lang.String[] subFilters, CIMObjectPath[] classPath, java.lang.String[] eventType) throws WBEMException
filter
- The CIM_IndicationFilter instance being subscribed to.handler
- The CIM_IndicationHandler instance that is the destination of
the indication.subscription
- The subscription instance associating the filter and handler.subFilters
- See description for CIMIndicationProvider aboveclassPath
- See description for CIMIndicationProvider aboveeventType
- See description for CIMIndicationProvider above
WBEMException
- If unsuccessful, one of the following status codes may be
returned. The ORDERED list is:
Authorizable
public void deActivateFilter(CIMInstance filter, CIMInstance handler, CIMInstance subscription, java.lang.String[] subFilters, CIMObjectPath[] classPath, java.lang.String[] eventType) throws WBEMException
filter
- The CIM_IndicationFilter instance being subscribed to.handler
- The CIM_IndicationHandler instance that is the destination of
the indications.subscription
- The subscription instance associating the filter and handler.subFilters
- See description for CIMIndicationProvider aboveclassPath
- See description for CIMIndicationProvider aboveeventType
- See description for CIMIndicationProvider above
WBEMException
- If unsuccessful, one of the following status codes may be
returned. The ORDERED list is:
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |