PageRenderTime 25ms CodeModel.GetById 0ms RepoModel.GetById 0ms app.codeStats 0ms

/sblim-cmpi-samba-1.0/provider/Linux_SambaShareSecurityForGlobal/Linux_SambaShareSecurityForGlobalInstance.cpp

#
C++ | 414 lines | 228 code | 106 blank | 80 comment | 22 complexity | b4cb4b04786794b66ee2b0679148f526 MD5 | raw file
Possible License(s): EPL-1.0
  1. // =======================================================================
  2. // Linux_SambaShareSecurityForGlobalInstance.cpp
  3. // created on Fri, 23 Jun 2006 using ECUTE 2.2.1
  4. //
  5. // Copyright (c) 2006, 2009, International Business Machines
  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.php
  13. //
  14. // Author: generated
  15. //
  16. // Contributors:
  17. // Wolfgang Taphorn <taphorn@de.ibm.com>
  18. // Mukunda Chowdaiah <cmukunda@in.ibm.com>
  19. // Ashoka S Rao <ashoka.rao@in.ibm.com>
  20. // Rodrigo Ceron <rceron@br.ibm.com>
  21. //
  22. // =======================================================================
  23. #include "Linux_SambaShareSecurityForGlobalInstance.h"
  24. #include "CmpiData.h"
  25. #include "CmpiString.h"
  26. #include "CmpiArray.h"
  27. #include <string>
  28. namespace genProvider {
  29. //****************************************************************************
  30. //Linux_SambaShareSecurityForGlobalInstance
  31. //----------------------------------------------------------------------------
  32. //empty constructor
  33. Linux_SambaShareSecurityForGlobalInstance::Linux_SambaShareSecurityForGlobalInstance() {
  34. init();
  35. }
  36. //----------------------------------------------------------------------------
  37. //copy constructor
  38. //----------------------------------------------------------------------------
  39. Linux_SambaShareSecurityForGlobalInstance::Linux_SambaShareSecurityForGlobalInstance(
  40. const Linux_SambaShareSecurityForGlobalInstance& anInstance) {
  41. init(anInstance);
  42. }
  43. //----------------------------------------------------------------------------
  44. //constructor using CmpiInstance
  45. //----------------------------------------------------------------------------
  46. Linux_SambaShareSecurityForGlobalInstance::Linux_SambaShareSecurityForGlobalInstance(
  47. const CmpiInstance& aCmpiInstance,
  48. const char* anInstanceNamespaceP) {
  49. CmpiData cmpiData;
  50. init();
  51. CmpiObjectPath cop = aCmpiInstance.getObjectPath();
  52. cop.setNameSpace(anInstanceNamespaceP);
  53. setInstanceName(Linux_SambaShareSecurityForGlobalInstanceName(cop));
  54. cmpiData = aCmpiInstance.getProperty("IsCurrent");
  55. if ( ! cmpiData.isNullValue()){
  56. CMPIUint16 IsCurrent = cmpiData;
  57. setIsCurrent(IsCurrent);
  58. }
  59. cmpiData = aCmpiInstance.getProperty("IsDefault");
  60. if ( ! cmpiData.isNullValue()){
  61. CMPIUint16 IsDefault = cmpiData;
  62. setIsDefault(IsDefault);
  63. }
  64. }
  65. //----------------------------------------------------------------------------
  66. //Destructor
  67. //----------------------------------------------------------------------------
  68. Linux_SambaShareSecurityForGlobalInstance::
  69. ~Linux_SambaShareSecurityForGlobalInstance(){
  70. reset();
  71. }
  72. //----------------------------------------------------------------------------
  73. //copy operator
  74. //----------------------------------------------------------------------------
  75. Linux_SambaShareSecurityForGlobalInstance&
  76. Linux_SambaShareSecurityForGlobalInstance::operator=(
  77. const Linux_SambaShareSecurityForGlobalInstance& anInstance) {
  78. init(anInstance);
  79. return *this;
  80. }
  81. //----------------------------------------------------------------------------
  82. //converts to CmpiInstance
  83. //----------------------------------------------------------------------------
  84. CmpiInstance
  85. Linux_SambaShareSecurityForGlobalInstance::getCmpiInstance(
  86. const char** aPropertiesPP) const {
  87. CmpiObjectPath objectPath=getInstanceName().getObjectPath();
  88. CmpiInstance cmpiInstance(objectPath);
  89. getInstanceName().fillKeys(cmpiInstance);
  90. if (aPropertiesPP) {
  91. cmpiInstance.setPropertyFilter(aPropertiesPP,0);
  92. }
  93. if (isSet.IsCurrent) {
  94. cmpiInstance.setProperty(
  95. "IsCurrent",
  96. CmpiData(m_IsCurrent));
  97. }
  98. if (isSet.IsDefault) {
  99. cmpiInstance.setProperty(
  100. "IsDefault",
  101. CmpiData(m_IsDefault));
  102. }
  103. return cmpiInstance;
  104. }
  105. //----------------------------------------------------------------------------
  106. // InstanceName related methods
  107. //----------------------------------------------------------------------------
  108. unsigned int
  109. Linux_SambaShareSecurityForGlobalInstance::isInstanceNameSet() const {
  110. return isSet.instanceName;
  111. }
  112. //----------------------------------------------------------------------------
  113. const Linux_SambaShareSecurityForGlobalInstanceName&
  114. Linux_SambaShareSecurityForGlobalInstance::getInstanceName() const {
  115. if( ! isSet.instanceName) {
  116. throw CmpiErrorFormater::getErrorException(
  117. CmpiErrorFormater::NOT_SET,
  118. "InstanceName (CIM Key Attributes)",
  119. "Linux_SambaShareSecurityForGlobal");
  120. }
  121. return m_instanceName;
  122. }
  123. //----------------------------------------------------------------------------
  124. void
  125. Linux_SambaShareSecurityForGlobalInstance::setInstanceName(
  126. const Linux_SambaShareSecurityForGlobalInstanceName& val) {
  127. m_instanceName = val;
  128. isSet.instanceName = 1;
  129. }
  130. //----------------------------------------------------------------------------
  131. // IsCurrent related methods
  132. //----------------------------------------------------------------------------
  133. unsigned int
  134. Linux_SambaShareSecurityForGlobalInstance::isIsCurrentSet() const {
  135. return isSet.IsCurrent;
  136. }
  137. //----------------------------------------------------------------------------
  138. void Linux_SambaShareSecurityForGlobalInstance::setIsCurrent(
  139. const CMPIUint16 aValue) {
  140. m_IsCurrent = aValue;
  141. isSet.IsCurrent = 1;
  142. }
  143. //----------------------------------------------------------------------------
  144. const CMPIUint16
  145. Linux_SambaShareSecurityForGlobalInstance::getIsCurrent() const {
  146. if ( ! isSet.IsCurrent) {
  147. throw CmpiErrorFormater::getErrorException(
  148. CmpiErrorFormater::NOT_SET,
  149. "IsCurrent",
  150. "Linux_SambaShareSecurityForGlobal");
  151. }
  152. return m_IsCurrent;
  153. }
  154. //----------------------------------------------------------------------------
  155. // IsDefault related methods
  156. //----------------------------------------------------------------------------
  157. unsigned int
  158. Linux_SambaShareSecurityForGlobalInstance::isIsDefaultSet() const {
  159. return isSet.IsDefault;
  160. }
  161. //----------------------------------------------------------------------------
  162. void Linux_SambaShareSecurityForGlobalInstance::setIsDefault(
  163. const CMPIUint16 aValue) {
  164. m_IsDefault = aValue;
  165. isSet.IsDefault = 1;
  166. }
  167. //----------------------------------------------------------------------------
  168. const CMPIUint16
  169. Linux_SambaShareSecurityForGlobalInstance::getIsDefault() const {
  170. if ( ! isSet.IsDefault) {
  171. throw CmpiErrorFormater::getErrorException(
  172. CmpiErrorFormater::NOT_SET,
  173. "IsDefault",
  174. "Linux_SambaShareSecurityForGlobal");
  175. }
  176. return m_IsDefault;
  177. }
  178. //----------------------------------------------------------------------------
  179. //set isSet attributes to FALSE
  180. //----------------------------------------------------------------------------
  181. void
  182. Linux_SambaShareSecurityForGlobalInstance::init() {
  183. isSet.instanceName = 0;
  184. isSet.IsCurrent = 0;
  185. isSet.IsDefault = 0;
  186. }
  187. //----------------------------------------------------------------------------
  188. //copies another instance properties in this
  189. //----------------------------------------------------------------------------
  190. void
  191. Linux_SambaShareSecurityForGlobalInstance::init(
  192. const Linux_SambaShareSecurityForGlobalInstance& anOriginal) {
  193. init();
  194. if(anOriginal.isInstanceNameSet()) {
  195. setInstanceName(anOriginal.getInstanceName());
  196. }
  197. if (anOriginal.isIsCurrentSet()) {
  198. const CMPIUint16 IsCurrentOriginal = anOriginal.getIsCurrent();
  199. setIsCurrent(IsCurrentOriginal);
  200. }
  201. if (anOriginal.isIsDefaultSet()) {
  202. const CMPIUint16 IsDefaultOriginal = anOriginal.getIsDefault();
  203. setIsDefault(IsDefaultOriginal);
  204. }
  205. }
  206. //----------------------------------------------------------------------------
  207. //reset the instance data
  208. //----------------------------------------------------------------------------
  209. void
  210. Linux_SambaShareSecurityForGlobalInstance::reset() {
  211. }
  212. //----------------------------------------------------------------------------
  213. //Linux_SambaShareSecurityForGlobalInstanceEnumerationElement
  214. //----------------------------------------------------------------------------
  215. Linux_SambaShareSecurityForGlobalInstanceEnumerationElement::Linux_SambaShareSecurityForGlobalInstanceEnumerationElement() {
  216. m_elementP = 0;
  217. m_nextP = 0;
  218. }
  219. //----------------------------------------------------------------------------
  220. Linux_SambaShareSecurityForGlobalInstanceEnumerationElement::~Linux_SambaShareSecurityForGlobalInstanceEnumerationElement() {
  221. if (m_elementP) {
  222. delete(m_elementP);
  223. }
  224. if (m_nextP) {
  225. delete(m_nextP);
  226. }
  227. }
  228. //----------------------------------------------------------------------------
  229. //Linux_SambaShareSecurityForGlobalInstanceNameEnumeration
  230. //----------------------------------------------------------------------------
  231. Linux_SambaShareSecurityForGlobalInstanceEnumeration::Linux_SambaShareSecurityForGlobalInstanceEnumeration() {
  232. m_firstElementP = 0;
  233. m_currentElementP = 0;
  234. m_endElementP = 0;
  235. }
  236. //----------------------------------------------------------------------------
  237. Linux_SambaShareSecurityForGlobalInstanceEnumeration::Linux_SambaShareSecurityForGlobalInstanceEnumeration(
  238. const Linux_SambaShareSecurityForGlobalInstanceEnumeration& anInstanceEnumeration) {
  239. m_firstElementP = 0;
  240. m_currentElementP = 0;
  241. m_endElementP = 0;
  242. int size = anInstanceEnumeration.getSize();
  243. for (int x=0; x < size;++x) {
  244. addElement(anInstanceEnumeration.getElement(x));
  245. }
  246. }
  247. //----------------------------------------------------------------------------
  248. Linux_SambaShareSecurityForGlobalInstanceEnumeration::~Linux_SambaShareSecurityForGlobalInstanceEnumeration() {
  249. if (m_firstElementP) {
  250. delete(m_firstElementP);
  251. }
  252. }
  253. //----------------------------------------------------------------------------
  254. void
  255. Linux_SambaShareSecurityForGlobalInstanceEnumeration::reset() {
  256. m_currentElementP = m_firstElementP;
  257. }
  258. //----------------------------------------------------------------------------
  259. bool
  260. Linux_SambaShareSecurityForGlobalInstanceEnumeration::hasNext() const {
  261. return (m_currentElementP != 0);
  262. }
  263. //----------------------------------------------------------------------------
  264. int
  265. Linux_SambaShareSecurityForGlobalInstanceEnumeration::getSize() const {
  266. int size = 0;
  267. Linux_SambaShareSecurityForGlobalInstanceEnumerationElement* followingP = m_firstElementP;
  268. while (followingP) {
  269. followingP = followingP->m_nextP;
  270. ++size;
  271. }
  272. return size;
  273. }
  274. //----------------------------------------------------------------------------
  275. const Linux_SambaShareSecurityForGlobalInstance&
  276. Linux_SambaShareSecurityForGlobalInstanceEnumeration::getElement(int anIndex) const {
  277. Linux_SambaShareSecurityForGlobalInstanceEnumerationElement* followingP = m_firstElementP;
  278. int x = 0;
  279. while (followingP && (x < anIndex)) {
  280. followingP = followingP->m_nextP;
  281. ++x;
  282. }
  283. return *(followingP->m_elementP);
  284. }
  285. //----------------------------------------------------------------------------
  286. const Linux_SambaShareSecurityForGlobalInstance&
  287. Linux_SambaShareSecurityForGlobalInstanceEnumeration::getNext() {
  288. Linux_SambaShareSecurityForGlobalInstanceEnumerationElement* currentElementP =
  289. m_currentElementP;
  290. m_currentElementP = m_currentElementP->m_nextP;
  291. return *(currentElementP->m_elementP);
  292. }
  293. //----------------------------------------------------------------------------
  294. void
  295. Linux_SambaShareSecurityForGlobalInstanceEnumeration::addElement(
  296. const Linux_SambaShareSecurityForGlobalInstance& anInstance) {
  297. if (m_firstElementP == 0) {
  298. m_firstElementP = new Linux_SambaShareSecurityForGlobalInstanceEnumerationElement();
  299. m_firstElementP->m_elementP = new Linux_SambaShareSecurityForGlobalInstance(anInstance);
  300. m_endElementP = m_firstElementP;
  301. m_currentElementP = m_firstElementP;
  302. } else {
  303. m_endElementP->m_nextP = new Linux_SambaShareSecurityForGlobalInstanceEnumerationElement();
  304. m_endElementP = m_endElementP->m_nextP;
  305. m_endElementP->m_elementP = new Linux_SambaShareSecurityForGlobalInstance(anInstance);
  306. }
  307. }
  308. }