cmpi
CmpiObjectPath.h
Go to the documentation of this file.
1 /*
2  *
3  * $Id: CmpiObjectPath.h,v 1.3 2008/07/09 19:36:59 tyreld Exp $
4  *
5  * (C) Copyright IBM Corp. 2003, 2005, 2008
6  *
7  * THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE
8  * ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE
9  * CONSTITUTES RECIPIENTS ACCEPTANCE OF THE AGREEMENT.
10  *
11  * You can obtain a current copy of the Eclipse Public License from
12  * http://www.opensource.org/licenses/eclipse-1.0.txt
13  *
14  * Author: Adrian Schuur <schuur@de.ibm.com>
15  * Contributors: Heidi Neumann, heidineu@de.ibm.com
16  * Angel Nunez Mencias, anunez@de.ibm.com
17  * Viktor Mihajlovski, mihajlov@de.ibm.com
18  *
19  * Description: CMPI Object Path Definitions
20  *
21  */
22 
23 #ifndef _CmpiObjectPath_h_
24 #define _CmpiObjectPath_h_
25 
26 #include "cmpidt.h"
27 #include "cmpift.h"
28 
29 #include "Linkage.h"
30 #include "CmpiObject.h"
31 #include "CmpiBroker.h"
32 #include "CmpiStatus.h"
33 #include "CmpiData.h"
34 #include "CmpiBaseMI.h"
35 
36 
43  friend class CmpiBroker;
44  friend class CmpiResult;
45  friend class CmpiInstance;
46  friend class CmpiInstanceMI;
47  friend class CmpiMethodMI;
48  friend class CmpiAssociationMI;
49  friend class CmpiPropertyMI;
50  friend class CmpiIndicationMI;
51  friend class CmpiData;
52 protected:
53 
54 private:
55 
58  //CmpiObjectPath() {}
59  void *makeObjectPath(CMPIBroker *mb, const char *ns, const char *cls);
60  void *makeObjectPath(CMPIBroker *mb, const CmpiString& ns, const char *cls);
61  CmpiBoolean doClassPathIsA(CMPIBroker *mb, const char *className) const;
62 public:
63 
70  CmpiObjectPath(const char *ns, const char *cls);
71  CmpiObjectPath(const CmpiString &ns, const char *cls);
72 
76 
79  CMPIObjectPath *getEnc() const;
80 
86  CmpiBoolean classPathIsA(const char *className) const;
87 
92  CmpiString getHostname() const;
93 
97  void setHostname(const char* hn);
98  void setHostname(CmpiString hn);
99 
104  CmpiString getNameSpace() const;
105 
109  void setNameSpace(const char* ns);
110  void setNameSpace(CmpiString ns);
111 
116  CmpiString getClassName() const;
117 
121  void setClassName(const char* hn);
122  void setClassName(CmpiString hn);
123 
128  unsigned int getKeyCount() const;
129 
135  CmpiData getKey(const char* name) const;
136 
143  CmpiData getKey(const int index, CmpiString *name=NULL) const;
144 
150  void setKey(const char* name, const CmpiData data);
151 };
152 
153 #endif
154 
155 
Definition: CmpiIndicationMI.h:41
Definition: cmpift.h:1506
Definition: CmpiInstanceMI.h:41
Definition: CmpiBroker.h:46
Definition: cmpift.h:950
Definition: CmpiMethodMI.h:41
Definition: CmpiString.h:49
Definition: CmpiData.h:52
#define CmpiBoolean
Definition: CmpiObject.h:30
Definition: CmpiInstance.h:42
Definition: CmpiAssociationMI.h:39
Definition: CmpiObjectPath.h:42
Definition: CmpiObject.h:42
Definition: CmpiResult.h:40
Definition: CmpiPropertyMI.h:40
friend class CmpiObjectPath
Definition: CmpiObject.h:44
#define CMPI_PROVIDER_LINKAGE
Definition: Linkage.h:28