cmpi

cmpi/CmpiIndicationMI.h

Go to the documentation of this file.
00001 /*
00002  *
00003  * $Id: CmpiIndicationMI.h,v 1.6 2009/01/15 00:36:51 tyreld Exp $
00004  *
00005  * (C) Copyright IBM Corp. 2003, 2005, 2008
00006  *
00007  * THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE
00008  * ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE
00009  * CONSTITUTES RECIPIENTS ACCEPTANCE OF THE AGREEMENT.
00010  *
00011  * You can obtain a current copy of the Eclipse Public License from
00012  * http://www.opensource.org/licenses/eclipse-1.0.txt
00013  *
00014  * Author:        Adrian Schuur <schuur@de.ibm.com>
00015  * Contributors:  Heidi Neumann, heidineu@de.ibm.com
00016  *                Angel Nunez Mencias, anunez@de.ibm.com
00017  *                Viktor Mihajlovski, mihajlov@de.ibm.com
00018  *                Tyrel Datwyler <tyreld@us.ibm.com>
00019  *
00020  * Description: CMPI Indication MI Definitions
00021  *
00022  */
00023 
00024 #ifndef _CmpiIndicationMI_h_
00025 #define _CmpiIndicationMI_h_
00026 
00027 #include <iostream>
00028 
00029 #include "cmpidt.h"
00030 #include "cmpift.h"
00031 
00032 #include "Linkage.h"
00033 #include "CmpiBaseMI.h"
00034 #include "CmpiStatus.h"
00035 #include "CmpiObjectPath.h"
00036 #include "CmpiResult.h"
00037 #include "CmpiContext.h"
00038 #include "CmpiSelectExp.h"
00039 
00040 
00041 class CMPI_PROVIDER_LINKAGE CmpiIndicationMI : virtual public CmpiBaseMI {
00042 public:
00043    CmpiIndicationMI(const CmpiBroker &mbp, const CmpiContext& ctx);
00044 
00045    static CMPIStatus driveAuthorizeFilter
00046    (CMPIIndicationMI* mi, const CMPIContext* eCtx, 
00047     const CMPISelectExp* se, const char* ns, const CMPIObjectPath* op, 
00048     const char* user);
00049    static CMPIStatus driveMustPoll
00050    (CMPIIndicationMI* mi, const CMPIContext* eCtx, 
00051     const CMPISelectExp* se, const char* ns, const CMPIObjectPath* op);
00052    static CMPIStatus driveActivateFilter
00053    (CMPIIndicationMI* mi, const CMPIContext* eCtx,
00054     const CMPISelectExp* se, const char* ns, const CMPIObjectPath* op, 
00055     CMPIBoolean first);
00056    static CMPIStatus driveDeActivateFilter
00057    (CMPIIndicationMI* mi, const CMPIContext* eCtx,
00058     const CMPISelectExp* se, const char* ns, 
00059     const CMPIObjectPath* op, CMPIBoolean last);
00060    static CMPIStatus driveEnableIndications
00061    (CMPIIndicationMI* mi, const CMPIContext* eCtx);
00062    static CMPIStatus driveDisableIndications
00063    (CMPIIndicationMI* mi, const CMPIContext* eCtx);
00064 
00065    virtual CmpiStatus authorizeFilter
00066    (const CmpiContext& ctx, 
00067     const CmpiSelectExp& se, const char* ns, const CmpiObjectPath& op,
00068     const char* user);
00069    virtual CmpiStatus mustPoll
00070    (const CmpiContext& ctx, 
00071     const CmpiSelectExp& se, const char* ns, const CmpiObjectPath& op);
00072    virtual CmpiStatus activateFilter
00073    (const CmpiContext& ctx, 
00074     const CmpiSelectExp& se, const char* ns, const CmpiObjectPath& op,
00075     CmpiBoolean first);
00076    virtual CmpiStatus deActivateFilter
00077    (const CmpiContext& ctx, 
00078     const CmpiSelectExp& se, const char* ns, const CmpiObjectPath& op,
00079     CmpiBoolean last);
00080    virtual CmpiStatus enableIndications(const CmpiContext& ctx);
00081    virtual CmpiStatus disableIndications(const CmpiContext& ctx);
00082 };
00083 
00084 #endif
00085