1 martin 1.23 //%LICENSE////////////////////////////////////////////////////////////////
|
2 martin 1.24 //
|
3 martin 1.23 // Licensed to The Open Group (TOG) under one or more contributor license
4 // agreements. Refer to the OpenPegasusNOTICE.txt file distributed with
5 // this work for additional information regarding copyright ownership.
6 // Each contributor licenses this file to you under the OpenPegasus Open
7 // Source License; you may not use this file except in compliance with the
8 // License.
|
9 martin 1.24 //
|
10 martin 1.23 // Permission is hereby granted, free of charge, to any person obtaining a
11 // copy of this software and associated documentation files (the "Software"),
12 // to deal in the Software without restriction, including without limitation
13 // the rights to use, copy, modify, merge, publish, distribute, sublicense,
14 // and/or sell copies of the Software, and to permit persons to whom the
15 // Software is furnished to do so, subject to the following conditions:
|
16 martin 1.24 //
|
17 martin 1.23 // The above copyright notice and this permission notice shall be included
18 // in all copies or substantial portions of the Software.
|
19 martin 1.24 //
|
20 martin 1.23 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
21 martin 1.24 // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
22 martin 1.23 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
23 // IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
24 // CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
25 // TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
26 // SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
27 martin 1.24 //
|
28 martin 1.23 //////////////////////////////////////////////////////////////////////////
|
29 kumpf 1.1 //
30 //%/////////////////////////////////////////////////////////////////////////////
31
32 #ifndef Pegasus_OperationContextInternal_h
33 #define Pegasus_OperationContextInternal_h
34
35 #include <Pegasus/Common/Config.h>
36 #include <Pegasus/Common/Linkage.h>
37 #include <Pegasus/Common/OperationContext.h>
|
38 chip 1.11 #include <Pegasus/Common/CIMClass.h>
|
39 kumpf 1.1 #include <Pegasus/Common/CIMInstance.h>
|
40 kumpf 1.20 #include <Pegasus/Common/AutoPtr.h>
|
41 a.dunfey 1.16 #include <Pegasus/Common/ObjectNormalizer.h>
42
|
43 kumpf 1.1 PEGASUS_NAMESPACE_BEGIN
44
45 // This class should be moved to the OperationContext module when localization
46 // support is added to Pegasus and this class definition is firm.
47 class PEGASUS_COMMON_LINKAGE LocaleContainer
|
48 kumpf 1.5 : virtual public OperationContext::Container
|
49 kumpf 1.1 {
50 public:
51 static const String NAME;
52
|
53 kumpf 1.19 LocaleContainer(const OperationContext::Container& container);
54 LocaleContainer(const String& languageId);
55 virtual ~LocaleContainer();
|
56 chip 1.11
|
57 kumpf 1.18 // NOTE: The compiler default implementation of the copy constructor
58 // is used for this class.
59
|
60 kumpf 1.19 LocaleContainer& operator=(const LocaleContainer& container);
|
61 kumpf 1.1
|
62 kumpf 1.19 virtual String getName() const;
63 virtual OperationContext::Container* clone() const;
64 virtual void destroy();
|
65 kumpf 1.1
|
66 kumpf 1.19 String getLanguageId() const;
|
67 kumpf 1.1
68 protected:
69 String _languageId;
70
71 };
72
73 class PEGASUS_COMMON_LINKAGE ProviderIdContainer
|
74 kumpf 1.5 : virtual public OperationContext::Container
|
75 kumpf 1.1 {
76 public:
77 static const String NAME;
78
|
79 kumpf 1.19 ProviderIdContainer(const OperationContext::Container& container);
80 ProviderIdContainer(
81 const CIMInstance& module,
82 const CIMInstance& provider,
83 Boolean isRemoteNameSpace = false,
84 const String& remoteInfo = String::EMPTY);
85 virtual ~ProviderIdContainer();
|
86 chip 1.11
|
87 kumpf 1.18 // NOTE: The compiler default implementation of the copy constructor
88 // is used for this class.
89
|
90 kumpf 1.19 ProviderIdContainer& operator=(const ProviderIdContainer& container);
|
91 kumpf 1.1
|
92 kumpf 1.19 virtual String getName() const;
93 virtual OperationContext::Container* clone() const;
94 virtual void destroy();
95
96 CIMInstance getModule() const;
97 CIMInstance getProvider() const;
98 Boolean isRemoteNameSpace() const;
99 String getRemoteInfo() const;
|
100 b.whiteley 1.21 String getProvMgrPath() const;
101 void setProvMgrPath(String &path);
|
102 kumpf 1.1
103 protected:
104 CIMInstance _module;
105 CIMInstance _provider;
|
106 chip 1.13 Boolean _isRemoteNameSpace;
|
107 schuur 1.6 String _remoteInfo;
|
108 b.whiteley 1.21 String _provMgrPath;
|
109 kumpf 1.1
110 };
111
|
112 chip 1.11 class PEGASUS_COMMON_LINKAGE CachedClassDefinitionContainer
113 : virtual public OperationContext::Container
114 {
115 public:
116 static const String NAME;
117
|
118 kumpf 1.19 CachedClassDefinitionContainer(
119 const OperationContext::Container& container);
|
120 mike 1.22 CachedClassDefinitionContainer(const CIMConstClass& cimClass);
|
121 kumpf 1.19 virtual ~CachedClassDefinitionContainer();
|
122 chip 1.11
|
123 kumpf 1.18 // NOTE: The compiler default implementation of the copy constructor
124 // is used for this class.
125
|
126 kumpf 1.19 CachedClassDefinitionContainer& operator=(
127 const CachedClassDefinitionContainer& container);
|
128 chip 1.11
|
129 kumpf 1.19 virtual String getName() const;
130 virtual OperationContext::Container* clone() const;
131 virtual void destroy();
|
132 chip 1.11
|
133 mike 1.22 CIMConstClass getClass() const;
|
134 chip 1.11
135 protected:
|
136 mike 1.22 CIMConstClass _cimClass;
|
137 chip 1.11
138 };
139
|
140 a.dunfey 1.16 class PEGASUS_COMMON_LINKAGE NormalizerContextContainer
141 : virtual public OperationContext::Container
142 {
143 public:
144 static const String NAME;
145
|
146 kumpf 1.19 NormalizerContextContainer(const OperationContext::Container& container);
147 NormalizerContextContainer(AutoPtr<NormalizerContext>& context);
148 NormalizerContextContainer(const NormalizerContextContainer& container);
149 virtual ~NormalizerContextContainer();
150
151 NormalizerContextContainer& operator=(
152 const NormalizerContextContainer& container);
153
154 virtual String getName() const;
155 virtual OperationContext::Container* clone() const;
156 virtual void destroy();
|
157 a.dunfey 1.16
|
158 kumpf 1.19 NormalizerContext* getContext() const;
|
159 a.dunfey 1.16
160 protected:
161 AutoPtr<NormalizerContext> normalizerContext;
|
162 kumpf 1.19
|
163 a.dunfey 1.16 private:
164 NormalizerContextContainer();
165 };
166
|
167 kumpf 1.1 PEGASUS_NAMESPACE_END
168
169 #endif
|