ImcSdk 0.9.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (395) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +12 -0
  3. data/.rspec +2 -0
  4. data/.travis.yml +5 -0
  5. data/.yardopts +7 -0
  6. data/CODE_OF_CONDUCT.md +74 -0
  7. data/Gemfile +4 -0
  8. data/ImcSdk.gemspec +43 -0
  9. data/LICENSE +201 -0
  10. data/Makefile +9 -0
  11. data/README.md +79 -0
  12. data/Rakefile +15 -0
  13. data/bin/console +14 -0
  14. data/bin/setup +8 -0
  15. data/docs/ImcHandle.html +2900 -0
  16. data/docs/_index.html +109 -0
  17. data/docs/class_list.html +51 -0
  18. data/docs/css/common.css +1 -0
  19. data/docs/css/full_list.css +58 -0
  20. data/docs/css/style.css +492 -0
  21. data/docs/file_list.html +56 -0
  22. data/docs/frames.html +17 -0
  23. data/docs/index.html +147 -0
  24. data/docs/js/app.js +248 -0
  25. data/docs/js/full_list.js +216 -0
  26. data/docs/js/jquery.js +4 -0
  27. data/docs/method_list.html +619 -0
  28. data/docs/top-level-namespace.html +10218 -0
  29. data/lib/ImcSdk.rb +395 -0
  30. data/lib/ImcSdk/apis/admin/ipmi.rb +99 -0
  31. data/lib/ImcSdk/apis/admin/ldap.rb +304 -0
  32. data/lib/ImcSdk/apis/admin/ntp.rb +202 -0
  33. data/lib/ImcSdk/apis/admin/user.rb +221 -0
  34. data/lib/ImcSdk/apis/server/bios.rb +311 -0
  35. data/lib/ImcSdk/apis/server/power.rb +219 -0
  36. data/lib/ImcSdk/apis/server/remotepresence.rb +170 -0
  37. data/lib/ImcSdk/apis/server/serveractions.rb +382 -0
  38. data/lib/ImcSdk/apis/server/storage.rb +438 -0
  39. data/lib/ImcSdk/apis/utils.rb +55 -0
  40. data/lib/ImcSdk/imcbasetype.rb +121 -0
  41. data/lib/ImcSdk/imcconstants.rb +1351 -0
  42. data/lib/ImcSdk/imccore.rb +220 -0
  43. data/lib/ImcSdk/imccoremeta.rb +271 -0
  44. data/lib/ImcSdk/imccoreutils.rb +441 -0
  45. data/lib/ImcSdk/imcdriver.rb +187 -0
  46. data/lib/ImcSdk/imcexception.rb +86 -0
  47. data/lib/ImcSdk/imcfiltertype.rb +228 -0
  48. data/lib/ImcSdk/imcgenutils.rb +29 -0
  49. data/lib/ImcSdk/imcmeta.rb +975 -0
  50. data/lib/ImcSdk/imcmethod.rb +182 -0
  51. data/lib/ImcSdk/imcmethodfactory.rb +190 -0
  52. data/lib/ImcSdk/imcmo.rb +669 -0
  53. data/lib/ImcSdk/imcsession.rb +549 -0
  54. data/lib/ImcSdk/imcxmlcodec.rb +94 -0
  55. data/lib/ImcSdk/methodmeta/AaaGetComputeAuthTokensMeta.rb +16 -0
  56. data/lib/ImcSdk/methodmeta/AaaKeepAliveMeta.rb +14 -0
  57. data/lib/ImcSdk/methodmeta/AaaLoginMeta.rb +36 -0
  58. data/lib/ImcSdk/methodmeta/AaaLogoutMeta.rb +18 -0
  59. data/lib/ImcSdk/methodmeta/AaaRefreshMeta.rb +36 -0
  60. data/lib/ImcSdk/methodmeta/ConfigConfMoMeta.rb +22 -0
  61. data/lib/ImcSdk/methodmeta/ConfigConfMosMeta.rb +20 -0
  62. data/lib/ImcSdk/methodmeta/ConfigResolveChildrenMeta.rb +24 -0
  63. data/lib/ImcSdk/methodmeta/ConfigResolveClassMeta.rb +20 -0
  64. data/lib/ImcSdk/methodmeta/ConfigResolveDnMeta.rb +20 -0
  65. data/lib/ImcSdk/methodmeta/ConfigResolveParentMeta.rb +20 -0
  66. data/lib/ImcSdk/methodmeta/EventSubscribeMeta.rb +14 -0
  67. data/lib/ImcSdk/methodmeta/EventUnsubscribeMeta.rb +14 -0
  68. data/lib/ImcSdk/mometa/aaa/AaaLdap.rb +269 -0
  69. data/lib/ImcSdk/mometa/aaa/AaaLdapRoleGroup.rb +122 -0
  70. data/lib/ImcSdk/mometa/aaa/AaaSession.rb +123 -0
  71. data/lib/ImcSdk/mometa/aaa/AaaUser.rb +130 -0
  72. data/lib/ImcSdk/mometa/aaa/AaaUserEp.rb +88 -0
  73. data/lib/ImcSdk/mometa/aaa/AaaUserPasswordExpiration.rb +118 -0
  74. data/lib/ImcSdk/mometa/aaa/AaaUserPolicy.rb +100 -0
  75. data/lib/ImcSdk/mometa/activate/ActivatePIDCatalog.rb +101 -0
  76. data/lib/ImcSdk/mometa/adaptor/AdaptorCfgBackup.rb +143 -0
  77. data/lib/ImcSdk/mometa/adaptor/AdaptorCfgImporter.rb +143 -0
  78. data/lib/ImcSdk/mometa/adaptor/AdaptorConnectorInfo.rb +97 -0
  79. data/lib/ImcSdk/mometa/adaptor/AdaptorEthCompQueueProfile.rb +100 -0
  80. data/lib/ImcSdk/mometa/adaptor/AdaptorEthGenProfile.rb +158 -0
  81. data/lib/ImcSdk/mometa/adaptor/AdaptorEthISCSIProfile.rb +261 -0
  82. data/lib/ImcSdk/mometa/adaptor/AdaptorEthInterruptProfile.rb +116 -0
  83. data/lib/ImcSdk/mometa/adaptor/AdaptorEthOffloadProfile.rb +112 -0
  84. data/lib/ImcSdk/mometa/adaptor/AdaptorEthRdmaProfile.rb +106 -0
  85. data/lib/ImcSdk/mometa/adaptor/AdaptorEthRecvQueueProfile.rb +100 -0
  86. data/lib/ImcSdk/mometa/adaptor/AdaptorEthUSNICProfile.rb +167 -0
  87. data/lib/ImcSdk/mometa/adaptor/AdaptorEthWorkQueueProfile.rb +100 -0
  88. data/lib/ImcSdk/mometa/adaptor/AdaptorExtEthIf.rb +154 -0
  89. data/lib/ImcSdk/mometa/adaptor/AdaptorExtIpV6RssHashProfile.rb +100 -0
  90. data/lib/ImcSdk/mometa/adaptor/AdaptorFcBootTable.rb +106 -0
  91. data/lib/ImcSdk/mometa/adaptor/AdaptorFcCdbWorkQueueProfile.rb +100 -0
  92. data/lib/ImcSdk/mometa/adaptor/AdaptorFcErrorRecoveryProfile.rb +130 -0
  93. data/lib/ImcSdk/mometa/adaptor/AdaptorFcGenProfile.rb +133 -0
  94. data/lib/ImcSdk/mometa/adaptor/AdaptorFcInterruptProfile.rb +96 -0
  95. data/lib/ImcSdk/mometa/adaptor/AdaptorFcPersistentBindings.rb +118 -0
  96. data/lib/ImcSdk/mometa/adaptor/AdaptorFcPortFLogiProfile.rb +100 -0
  97. data/lib/ImcSdk/mometa/adaptor/AdaptorFcPortPLogiProfile.rb +100 -0
  98. data/lib/ImcSdk/mometa/adaptor/AdaptorFcPortProfile.rb +106 -0
  99. data/lib/ImcSdk/mometa/adaptor/AdaptorFcRecvQueueProfile.rb +94 -0
  100. data/lib/ImcSdk/mometa/adaptor/AdaptorFcWorkQueueProfile.rb +94 -0
  101. data/lib/ImcSdk/mometa/adaptor/AdaptorGenProfile.rb +166 -0
  102. data/lib/ImcSdk/mometa/adaptor/AdaptorHostEthIf.rb +163 -0
  103. data/lib/ImcSdk/mometa/adaptor/AdaptorHostFcIf.rb +148 -0
  104. data/lib/ImcSdk/mometa/adaptor/AdaptorIpV4RssHashProfile.rb +100 -0
  105. data/lib/ImcSdk/mometa/adaptor/AdaptorIpV6RssHashProfile.rb +100 -0
  106. data/lib/ImcSdk/mometa/adaptor/AdaptorLinkTraining.rb +79 -0
  107. data/lib/ImcSdk/mometa/adaptor/AdaptorPortProfiles.rb +100 -0
  108. data/lib/ImcSdk/mometa/adaptor/AdaptorRssProfile.rb +94 -0
  109. data/lib/ImcSdk/mometa/adaptor/AdaptorUnit.rb +155 -0
  110. data/lib/ImcSdk/mometa/advanced/AdvancedPowerProfile.rb +140 -0
  111. data/lib/ImcSdk/mometa/auto/AutoPowerProfile.rb +117 -0
  112. data/lib/ImcSdk/mometa/bios/BiosBOT.rb +88 -0
  113. data/lib/ImcSdk/mometa/bios/BiosBootDev.rb +114 -0
  114. data/lib/ImcSdk/mometa/bios/BiosBootDevGrp.rb +112 -0
  115. data/lib/ImcSdk/mometa/bios/BiosBootDevPrecision.rb +152 -0
  116. data/lib/ImcSdk/mometa/bios/BiosBootMode.rb +96 -0
  117. data/lib/ImcSdk/mometa/bios/BiosPassword.rb +73 -0
  118. data/lib/ImcSdk/mometa/bios/BiosPlatformDefaults.rb +88 -0
  119. data/lib/ImcSdk/mometa/bios/BiosProfile.rb +139 -0
  120. data/lib/ImcSdk/mometa/bios/BiosProfileManagement.rb +106 -0
  121. data/lib/ImcSdk/mometa/bios/BiosProfileToken.rb +106 -0
  122. data/lib/ImcSdk/mometa/bios/BiosSettings.rb +88 -0
  123. data/lib/ImcSdk/mometa/bios/BiosUnit.rb +106 -0
  124. data/lib/ImcSdk/mometa/bios/BiosVfASPMSupport.rb +97 -0
  125. data/lib/ImcSdk/mometa/bios/BiosVfAdjacentCacheLinePrefetch.rb +98 -0
  126. data/lib/ImcSdk/mometa/bios/BiosVfAltitude.rb +99 -0
  127. data/lib/ImcSdk/mometa/bios/BiosVfAssertNMIOnPERR.rb +98 -0
  128. data/lib/ImcSdk/mometa/bios/BiosVfAssertNMIOnSERR.rb +98 -0
  129. data/lib/ImcSdk/mometa/bios/BiosVfAutonumousCstateEnable.rb +81 -0
  130. data/lib/ImcSdk/mometa/bios/BiosVfBootOptionRetry.rb +98 -0
  131. data/lib/ImcSdk/mometa/bios/BiosVfCDNEnable.rb +92 -0
  132. data/lib/ImcSdk/mometa/bios/BiosVfCDNSupport.rb +96 -0
  133. data/lib/ImcSdk/mometa/bios/BiosVfCPUEnergyPerformance.rb +98 -0
  134. data/lib/ImcSdk/mometa/bios/BiosVfCPUFrequencyFloor.rb +98 -0
  135. data/lib/ImcSdk/mometa/bios/BiosVfCPUPerformance.rb +98 -0
  136. data/lib/ImcSdk/mometa/bios/BiosVfCPUPowerManagement.rb +98 -0
  137. data/lib/ImcSdk/mometa/bios/BiosVfCkeLowPolicy.rb +98 -0
  138. data/lib/ImcSdk/mometa/bios/BiosVfCmciEnable.rb +98 -0
  139. data/lib/ImcSdk/mometa/bios/BiosVfConsoleRedirection.rb +162 -0
  140. data/lib/ImcSdk/mometa/bios/BiosVfCoreMultiProcessing.rb +118 -0
  141. data/lib/ImcSdk/mometa/bios/BiosVfDCUPrefetch.rb +109 -0
  142. data/lib/ImcSdk/mometa/bios/BiosVfDRAMClockThrottling.rb +98 -0
  143. data/lib/ImcSdk/mometa/bios/BiosVfDemandScrub.rb +98 -0
  144. data/lib/ImcSdk/mometa/bios/BiosVfDirectCacheAccess.rb +100 -0
  145. data/lib/ImcSdk/mometa/bios/BiosVfDramRefreshRate.rb +99 -0
  146. data/lib/ImcSdk/mometa/bios/BiosVfEnhancedIntelSpeedStepTech.rb +98 -0
  147. data/lib/ImcSdk/mometa/bios/BiosVfExecuteDisableBit.rb +98 -0
  148. data/lib/ImcSdk/mometa/bios/BiosVfExtendedAPIC.rb +92 -0
  149. data/lib/ImcSdk/mometa/bios/BiosVfFRB2Enable.rb +98 -0
  150. data/lib/ImcSdk/mometa/bios/BiosVfHWPMEnable.rb +80 -0
  151. data/lib/ImcSdk/mometa/bios/BiosVfHardwarePrefetch.rb +98 -0
  152. data/lib/ImcSdk/mometa/bios/BiosVfIOHResource.rb +99 -0
  153. data/lib/ImcSdk/mometa/bios/BiosVfIntelHyperThreadingTech.rb +98 -0
  154. data/lib/ImcSdk/mometa/bios/BiosVfIntelTurboBoostTech.rb +98 -0
  155. data/lib/ImcSdk/mometa/bios/BiosVfIntelVTForDirectedIO.rb +142 -0
  156. data/lib/ImcSdk/mometa/bios/BiosVfIntelVirtualizationTechnology.rb +98 -0
  157. data/lib/ImcSdk/mometa/bios/BiosVfLOMPortOptionROM.rb +150 -0
  158. data/lib/ImcSdk/mometa/bios/BiosVfLegacyUSBSupport.rb +100 -0
  159. data/lib/ImcSdk/mometa/bios/BiosVfLvDIMMSupport.rb +97 -0
  160. data/lib/ImcSdk/mometa/bios/BiosVfMMCFGBase.rb +99 -0
  161. data/lib/ImcSdk/mometa/bios/BiosVfMemoryInterleave.rb +126 -0
  162. data/lib/ImcSdk/mometa/bios/BiosVfMemoryMappedIOAbove4GB.rb +98 -0
  163. data/lib/ImcSdk/mometa/bios/BiosVfMirroringMode.rb +96 -0
  164. data/lib/ImcSdk/mometa/bios/BiosVfNUMAOptimized.rb +98 -0
  165. data/lib/ImcSdk/mometa/bios/BiosVfOSBootWatchdogTimer.rb +98 -0
  166. data/lib/ImcSdk/mometa/bios/BiosVfOSBootWatchdogTimerPolicy.rb +97 -0
  167. data/lib/ImcSdk/mometa/bios/BiosVfOSBootWatchdogTimerTimeout.rb +98 -0
  168. data/lib/ImcSdk/mometa/bios/BiosVfOnboardNIC.rb +109 -0
  169. data/lib/ImcSdk/mometa/bios/BiosVfOnboardStorage.rb +98 -0
  170. data/lib/ImcSdk/mometa/bios/BiosVfOnboardStorageSWStack.rb +90 -0
  171. data/lib/ImcSdk/mometa/bios/BiosVfOutOfBandMgmtPort.rb +92 -0
  172. data/lib/ImcSdk/mometa/bios/BiosVfPCIOptionROMs.rb +100 -0
  173. data/lib/ImcSdk/mometa/bios/BiosVfPCISlotOptionROMEnable.rb +726 -0
  174. data/lib/ImcSdk/mometa/bios/BiosVfPCIeSSDHotPlugSupport.rb +81 -0
  175. data/lib/ImcSdk/mometa/bios/BiosVfPOSTErrorPause.rb +98 -0
  176. data/lib/ImcSdk/mometa/bios/BiosVfPStateCoordType.rb +97 -0
  177. data/lib/ImcSdk/mometa/bios/BiosVfPackageCStateLimit.rb +105 -0
  178. data/lib/ImcSdk/mometa/bios/BiosVfPatrolScrub.rb +98 -0
  179. data/lib/ImcSdk/mometa/bios/BiosVfPatrolScrubDuration.rb +94 -0
  180. data/lib/ImcSdk/mometa/bios/BiosVfPchUsb30Mode.rb +98 -0
  181. data/lib/ImcSdk/mometa/bios/BiosVfPciRomClp.rb +92 -0
  182. data/lib/ImcSdk/mometa/bios/BiosVfPowerOnPasswordSupport.rb +98 -0
  183. data/lib/ImcSdk/mometa/bios/BiosVfProcessorC1E.rb +98 -0
  184. data/lib/ImcSdk/mometa/bios/BiosVfProcessorC3Report.rb +98 -0
  185. data/lib/ImcSdk/mometa/bios/BiosVfProcessorC6Report.rb +98 -0
  186. data/lib/ImcSdk/mometa/bios/BiosVfProcessorCState.rb +98 -0
  187. data/lib/ImcSdk/mometa/bios/BiosVfPwrPerfTuning.rb +90 -0
  188. data/lib/ImcSdk/mometa/bios/BiosVfQPIConfig.rb +99 -0
  189. data/lib/ImcSdk/mometa/bios/BiosVfQpiSnoopMode.rb +94 -0
  190. data/lib/ImcSdk/mometa/bios/BiosVfResumeOnACPowerLoss.rb +111 -0
  191. data/lib/ImcSdk/mometa/bios/BiosVfSataModeSelect.rb +97 -0
  192. data/lib/ImcSdk/mometa/bios/BiosVfSelectMemoryRASConfiguration.rb +98 -0
  193. data/lib/ImcSdk/mometa/bios/BiosVfSerialPortAEnable.rb +98 -0
  194. data/lib/ImcSdk/mometa/bios/BiosVfSparingMode.rb +96 -0
  195. data/lib/ImcSdk/mometa/bios/BiosVfSrIov.rb +98 -0
  196. data/lib/ImcSdk/mometa/bios/BiosVfTPMSupport.rb +98 -0
  197. data/lib/ImcSdk/mometa/bios/BiosVfUCSMBootOrderRuleControl.rb +96 -0
  198. data/lib/ImcSdk/mometa/bios/BiosVfUSBBootConfig.rb +98 -0
  199. data/lib/ImcSdk/mometa/bios/BiosVfUSBEmulation.rb +98 -0
  200. data/lib/ImcSdk/mometa/bios/BiosVfUSBPortsConfig.rb +164 -0
  201. data/lib/ImcSdk/mometa/bios/BiosVfVgaPriority.rb +97 -0
  202. data/lib/ImcSdk/mometa/bios/BiosVfWorkLoadConfig.rb +90 -0
  203. data/lib/ImcSdk/mometa/bmc/BmcResetReason.rb +77 -0
  204. data/lib/ImcSdk/mometa/certificate/CertificateManagement.rb +94 -0
  205. data/lib/ImcSdk/mometa/chassis/ChassisPIDCatalog.rb +77 -0
  206. data/lib/ImcSdk/mometa/chassis/ChassisPowerBudget.rb +110 -0
  207. data/lib/ImcSdk/mometa/chassis/ChassisPowerMonitor.rb +93 -0
  208. data/lib/ImcSdk/mometa/chassis/ChassisPowerUtilization.rb +77 -0
  209. data/lib/ImcSdk/mometa/comm/CommEpIpmiLan.rb +87 -0
  210. data/lib/ImcSdk/mometa/comm/CommHttp.rb +149 -0
  211. data/lib/ImcSdk/mometa/comm/CommHttps.rb +141 -0
  212. data/lib/ImcSdk/mometa/comm/CommIpmiLan.rb +108 -0
  213. data/lib/ImcSdk/mometa/comm/CommKvm.rb +124 -0
  214. data/lib/ImcSdk/mometa/comm/CommNtpProvider.rb +130 -0
  215. data/lib/ImcSdk/mometa/comm/CommRedfish.rb +86 -0
  216. data/lib/ImcSdk/mometa/comm/CommSavedVMediaMap.rb +148 -0
  217. data/lib/ImcSdk/mometa/comm/CommSnmp.rb +169 -0
  218. data/lib/ImcSdk/mometa/comm/CommSnmpTrap.rb +149 -0
  219. data/lib/ImcSdk/mometa/comm/CommSnmpUser.rb +147 -0
  220. data/lib/ImcSdk/mometa/comm/CommSsh.rb +141 -0
  221. data/lib/ImcSdk/mometa/comm/CommSvcEp.rb +88 -0
  222. data/lib/ImcSdk/mometa/comm/CommSvcRack.rb +73 -0
  223. data/lib/ImcSdk/mometa/comm/CommSyslog.rb +151 -0
  224. data/lib/ImcSdk/mometa/comm/CommSyslogClient.rb +123 -0
  225. data/lib/ImcSdk/mometa/comm/CommVMedia.rb +122 -0
  226. data/lib/ImcSdk/mometa/comm/CommVMediaMap.rb +153 -0
  227. data/lib/ImcSdk/mometa/compute/ComputeBoard.rb +178 -0
  228. data/lib/ImcSdk/mometa/compute/ComputeMbPowerStats.rb +112 -0
  229. data/lib/ImcSdk/mometa/compute/ComputeRackUnit.rb +206 -0
  230. data/lib/ImcSdk/mometa/compute/ComputeRackUnitMbTempStats.rb +101 -0
  231. data/lib/ImcSdk/mometa/compute/ComputeServerNode.rb +192 -0
  232. data/lib/ImcSdk/mometa/compute/ComputeServerNodeMbTempStats.rb +101 -0
  233. data/lib/ImcSdk/mometa/compute/ComputeServerRef.rb +81 -0
  234. data/lib/ImcSdk/mometa/compute/ComputeSharedIOMbPowerStats.rb +89 -0
  235. data/lib/ImcSdk/mometa/compute/ComputeSharedIOMbTempStats.rb +99 -0
  236. data/lib/ImcSdk/mometa/current/CurrentCertificate.rb +178 -0
  237. data/lib/ImcSdk/mometa/custom/CustomPowerProfile.rb +103 -0
  238. data/lib/ImcSdk/mometa/download/DownloadClientCertificate.rb +106 -0
  239. data/lib/ImcSdk/mometa/download/DownloadClientPrivateKey.rb +106 -0
  240. data/lib/ImcSdk/mometa/download/DownloadLdapCACertificate.rb +135 -0
  241. data/lib/ImcSdk/mometa/download/DownloadRootCACertificate.rb +106 -0
  242. data/lib/ImcSdk/mometa/equipment/EquipmentChassis.rb +93 -0
  243. data/lib/ImcSdk/mometa/equipment/EquipmentChassisLocatorLed.rb +106 -0
  244. data/lib/ImcSdk/mometa/equipment/EquipmentFan.rb +223 -0
  245. data/lib/ImcSdk/mometa/equipment/EquipmentFanModule.rb +217 -0
  246. data/lib/ImcSdk/mometa/equipment/EquipmentIndicatorLed.rb +122 -0
  247. data/lib/ImcSdk/mometa/equipment/EquipmentLocatorLed.rb +131 -0
  248. data/lib/ImcSdk/mometa/equipment/EquipmentPsu.rb +235 -0
  249. data/lib/ImcSdk/mometa/equipment/EquipmentPsuColdRedundancy.rb +77 -0
  250. data/lib/ImcSdk/mometa/equipment/EquipmentPsuFan.rb +186 -0
  251. data/lib/ImcSdk/mometa/equipment/EquipmentSharedIOModule.rb +125 -0
  252. data/lib/ImcSdk/mometa/equipment/EquipmentSystemIOController.rb +87 -0
  253. data/lib/ImcSdk/mometa/equipment/EquipmentTpm.rb +164 -0
  254. data/lib/ImcSdk/mometa/error/Error.rb +98 -0
  255. data/lib/ImcSdk/mometa/event/EventManagement.rb +100 -0
  256. data/lib/ImcSdk/mometa/export/ExportClientCertificate.rb +106 -0
  257. data/lib/ImcSdk/mometa/export/ExportClientPrivateKey.rb +106 -0
  258. data/lib/ImcSdk/mometa/export/ExportLdapCACertificate.rb +135 -0
  259. data/lib/ImcSdk/mometa/export/ExportRootCACertificate.rb +106 -0
  260. data/lib/ImcSdk/mometa/fan/FanPolicy.rb +89 -0
  261. data/lib/ImcSdk/mometa/fault/FaultInst.rb +238 -0
  262. data/lib/ImcSdk/mometa/firmware/FirmwareBootDefinition.rb +101 -0
  263. data/lib/ImcSdk/mometa/firmware/FirmwareBootUnit.rb +159 -0
  264. data/lib/ImcSdk/mometa/firmware/FirmwareRunning.rb +124 -0
  265. data/lib/ImcSdk/mometa/firmware/FirmwareUpdatable.rb +197 -0
  266. data/lib/ImcSdk/mometa/generate/GenerateCertificateSigningRequest.rb +435 -0
  267. data/lib/ImcSdk/mometa/generate/GenerateRandomPassword.rb +94 -0
  268. data/lib/ImcSdk/mometa/generated/GeneratedStorageControllerKeyId.rb +77 -0
  269. data/lib/ImcSdk/mometa/huu/HuuController.rb +94 -0
  270. data/lib/ImcSdk/mometa/huu/HuuFirmwareCatalog.rb +100 -0
  271. data/lib/ImcSdk/mometa/huu/HuuFirmwareCatalogComponent.rb +106 -0
  272. data/lib/ImcSdk/mometa/huu/HuuFirmwareComponent.rb +154 -0
  273. data/lib/ImcSdk/mometa/huu/HuuFirmwareRunning.rb +106 -0
  274. data/lib/ImcSdk/mometa/huu/HuuFirmwareUpdateCancel.rb +95 -0
  275. data/lib/ImcSdk/mometa/huu/HuuFirmwareUpdateStatus.rb +118 -0
  276. data/lib/ImcSdk/mometa/huu/HuuFirmwareUpdater.rb +179 -0
  277. data/lib/ImcSdk/mometa/huu/HuuUpdateComponentStatus.rb +178 -0
  278. data/lib/ImcSdk/mometa/io/IoExpander.rb +104 -0
  279. data/lib/ImcSdk/mometa/iod/IodController.rb +94 -0
  280. data/lib/ImcSdk/mometa/iod/IodSnapshotCancel.rb +101 -0
  281. data/lib/ImcSdk/mometa/iod/IodSnapshotStart.rb +192 -0
  282. data/lib/ImcSdk/mometa/iod/IodSnapshotStatus.rb +148 -0
  283. data/lib/ImcSdk/mometa/ip/IpBlocking.rb +118 -0
  284. data/lib/ImcSdk/mometa/ip/IpFiltering.rb +128 -0
  285. data/lib/ImcSdk/mometa/kmip/KmipManagement.rb +95 -0
  286. data/lib/ImcSdk/mometa/kmip/KmipServer.rb +98 -0
  287. data/lib/ImcSdk/mometa/kmip/KmipServerLogin.rb +89 -0
  288. data/lib/ImcSdk/mometa/ldap/LdapCACertificate.rb +107 -0
  289. data/lib/ImcSdk/mometa/ldap/LdapCACertificateManagement.rb +100 -0
  290. data/lib/ImcSdk/mometa/lsboot/LsbootBootSecurity.rb +99 -0
  291. data/lib/ImcSdk/mometa/lsboot/LsbootDef.rb +111 -0
  292. data/lib/ImcSdk/mometa/lsboot/LsbootDevPrecision.rb +139 -0
  293. data/lib/ImcSdk/mometa/lsboot/LsbootEfi.rb +107 -0
  294. data/lib/ImcSdk/mometa/lsboot/LsbootHdd.rb +127 -0
  295. data/lib/ImcSdk/mometa/lsboot/LsbootIscsi.rb +133 -0
  296. data/lib/ImcSdk/mometa/lsboot/LsbootLan.rb +116 -0
  297. data/lib/ImcSdk/mometa/lsboot/LsbootLocalStorage.rb +88 -0
  298. data/lib/ImcSdk/mometa/lsboot/LsbootNVMe.rb +114 -0
  299. data/lib/ImcSdk/mometa/lsboot/LsbootPchStorage.rb +120 -0
  300. data/lib/ImcSdk/mometa/lsboot/LsbootPxe.rb +133 -0
  301. data/lib/ImcSdk/mometa/lsboot/LsbootSan.rb +133 -0
  302. data/lib/ImcSdk/mometa/lsboot/LsbootSd.rb +127 -0
  303. data/lib/ImcSdk/mometa/lsboot/LsbootStorage.rb +107 -0
  304. data/lib/ImcSdk/mometa/lsboot/LsbootUefiShell.rb +114 -0
  305. data/lib/ImcSdk/mometa/lsboot/LsbootUsb.rb +124 -0
  306. data/lib/ImcSdk/mometa/lsboot/LsbootVMedia.rb +138 -0
  307. data/lib/ImcSdk/mometa/lsboot/LsbootVirtualMedia.rb +108 -0
  308. data/lib/ImcSdk/mometa/memory/MemoryArray.rb +200 -0
  309. data/lib/ImcSdk/mometa/memory/MemoryUnit.rb +299 -0
  310. data/lib/ImcSdk/mometa/memory/MemoryUnitEnvStats.rb +112 -0
  311. data/lib/ImcSdk/mometa/mgmt/MgmtBackup.rb +172 -0
  312. data/lib/ImcSdk/mometa/mgmt/MgmtBackupServer.rb +132 -0
  313. data/lib/ImcSdk/mometa/mgmt/MgmtController.rb +118 -0
  314. data/lib/ImcSdk/mometa/mgmt/MgmtIf.rb +388 -0
  315. data/lib/ImcSdk/mometa/mgmt/MgmtImporter.rb +172 -0
  316. data/lib/ImcSdk/mometa/mgmt/MgmtImporterServer.rb +132 -0
  317. data/lib/ImcSdk/mometa/mgmt/MgmtInventory.rb +143 -0
  318. data/lib/ImcSdk/mometa/network/NetworkAdapterEthIf.rb +100 -0
  319. data/lib/ImcSdk/mometa/network/NetworkAdapterUnit.rb +116 -0
  320. data/lib/ImcSdk/mometa/one/OneTimeBootDevice.rb +103 -0
  321. data/lib/ImcSdk/mometa/one/OneTimePrecisionBootDevice.rb +116 -0
  322. data/lib/ImcSdk/mometa/osi/OsiCancel.rb +101 -0
  323. data/lib/ImcSdk/mometa/osi/OsiController.rb +94 -0
  324. data/lib/ImcSdk/mometa/osi/OsiStart.rb +266 -0
  325. data/lib/ImcSdk/mometa/osi/OsiStatus.rb +148 -0
  326. data/lib/ImcSdk/mometa/pci/PciEquipSlot.rb +124 -0
  327. data/lib/ImcSdk/mometa/pid/PidCatalog.rb +100 -0
  328. data/lib/ImcSdk/mometa/pid/PidCatalogCpu.rb +136 -0
  329. data/lib/ImcSdk/mometa/pid/PidCatalogDimm.rb +154 -0
  330. data/lib/ImcSdk/mometa/pid/PidCatalogHdd.rb +130 -0
  331. data/lib/ImcSdk/mometa/pid/PidCatalogPCIAdapter.rb +130 -0
  332. data/lib/ImcSdk/mometa/platform/PlatformEventFilters.rb +109 -0
  333. data/lib/ImcSdk/mometa/power/PowerBudget.rb +146 -0
  334. data/lib/ImcSdk/mometa/power/PowerMonitor.rb +123 -0
  335. data/lib/ImcSdk/mometa/processor/ProcessorEnvStats.rb +112 -0
  336. data/lib/ImcSdk/mometa/processor/ProcessorUnit.rb +213 -0
  337. data/lib/ImcSdk/mometa/self/SelfEncryptStorageController.rb +98 -0
  338. data/lib/ImcSdk/mometa/server/ServerUtilization.rb +112 -0
  339. data/lib/ImcSdk/mometa/sioc/SiocResetReason.rb +77 -0
  340. data/lib/ImcSdk/mometa/sol/SolIf.rb +128 -0
  341. data/lib/ImcSdk/mometa/standard/StandardPowerProfile.rb +108 -0
  342. data/lib/ImcSdk/mometa/storage/StorageController.rb +165 -0
  343. data/lib/ImcSdk/mometa/storage/StorageControllerHealth.rb +100 -0
  344. data/lib/ImcSdk/mometa/storage/StorageControllerNVMe.rb +154 -0
  345. data/lib/ImcSdk/mometa/storage/StorageControllerProps.rb +406 -0
  346. data/lib/ImcSdk/mometa/storage/StorageControllerSettings.rb +220 -0
  347. data/lib/ImcSdk/mometa/storage/StorageEnclosure.rb +82 -0
  348. data/lib/ImcSdk/mometa/storage/StorageEnclosureDisk.rb +149 -0
  349. data/lib/ImcSdk/mometa/storage/StorageEnclosureDiskFwHelper.rb +108 -0
  350. data/lib/ImcSdk/mometa/storage/StorageEnclosureDiskSlotEp.rb +85 -0
  351. data/lib/ImcSdk/mometa/storage/StorageEnclosureDiskSlotZoneHelper.rb +97 -0
  352. data/lib/ImcSdk/mometa/storage/StorageFlexFlashController.rb +193 -0
  353. data/lib/ImcSdk/mometa/storage/StorageFlexFlashControllerProps.rb +202 -0
  354. data/lib/ImcSdk/mometa/storage/StorageFlexFlashOperationalProfile.rb +164 -0
  355. data/lib/ImcSdk/mometa/storage/StorageFlexFlashPhysicalDrive.rb +256 -0
  356. data/lib/ImcSdk/mometa/storage/StorageFlexFlashVirtualDrive.rb +152 -0
  357. data/lib/ImcSdk/mometa/storage/StorageFlexFlashVirtualDriveImageMap.rb +145 -0
  358. data/lib/ImcSdk/mometa/storage/StorageLocalDisk.rb +247 -0
  359. data/lib/ImcSdk/mometa/storage/StorageLocalDiskEp.rb +77 -0
  360. data/lib/ImcSdk/mometa/storage/StorageLocalDiskProps.rb +250 -0
  361. data/lib/ImcSdk/mometa/storage/StorageLocalDiskSlotEp.rb +146 -0
  362. data/lib/ImcSdk/mometa/storage/StorageLocalDiskUsage.rb +124 -0
  363. data/lib/ImcSdk/mometa/storage/StorageOperation.rb +112 -0
  364. data/lib/ImcSdk/mometa/storage/StorageRaidBattery.rb +252 -0
  365. data/lib/ImcSdk/mometa/storage/StorageSasExpander.rb +113 -0
  366. data/lib/ImcSdk/mometa/storage/StorageSasUplink.rb +121 -0
  367. data/lib/ImcSdk/mometa/storage/StorageUnusedLocalDisk.rb +124 -0
  368. data/lib/ImcSdk/mometa/storage/StorageVirtualDrive.rb +307 -0
  369. data/lib/ImcSdk/mometa/storage/StorageVirtualDriveCreatorUsingUnusedPhysicalDrive.rb +223 -0
  370. data/lib/ImcSdk/mometa/storage/StorageVirtualDriveCreatorUsingVirtualDriveGroup.rb +199 -0
  371. data/lib/ImcSdk/mometa/storage/StorageVirtualDriveWithDriveGroupSpace.rb +130 -0
  372. data/lib/ImcSdk/mometa/suggested/SuggestedStorageControllerSecurityKey.rb +77 -0
  373. data/lib/ImcSdk/mometa/sysdebug/SysdebugMEpLog.rb +122 -0
  374. data/lib/ImcSdk/mometa/sysdebug/SysdebugTechSupportExport.rb +149 -0
  375. data/lib/ImcSdk/mometa/system/SystemIOController.rb +81 -0
  376. data/lib/ImcSdk/mometa/thermal/ThermalPowerProfile.rb +89 -0
  377. data/lib/ImcSdk/mometa/top/TopRoot.rb +88 -0
  378. data/lib/ImcSdk/mometa/top/TopSystem.rb +561 -0
  379. data/lib/ImcSdk/mometa/upload/UploadBiosProfile.rb +129 -0
  380. data/lib/ImcSdk/mometa/upload/UploadCertificate.rb +136 -0
  381. data/lib/ImcSdk/mometa/upload/UploadPIDCatalog.rb +129 -0
  382. data/lib/ImcSdk/version.rb +3 -0
  383. data/spec/ImcSdk_spec.rb +11 -0
  384. data/spec/spec_helper.rb +11 -0
  385. data/test/ImcSdk_bios_test.rb +57 -0
  386. data/test/ImcSdk_ipmi_test.rb +65 -0
  387. data/test/ImcSdk_ldap_test.rb +79 -0
  388. data/test/ImcSdk_ntp_test.rb +88 -0
  389. data/test/ImcSdk_powerbudget_test.rb +64 -0
  390. data/test/ImcSdk_remotepresence_test.rb +60 -0
  391. data/test/ImcSdk_serveractions_test.rb +69 -0
  392. data/test/ImcSdk_storage_test.rb +60 -0
  393. data/test/ImcSdk_user_test.rb +98 -0
  394. data/test/test_helper.rb +21 -0
  395. metadata +492 -0
@@ -0,0 +1,220 @@
1
+ # Copyright 2017 Cisco Systems, Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ # http://www.apache.org/licenses/LICENSE-2.0
7
+ #
8
+ # Unless required by applicable law or agreed to in writing, software
9
+ # distributed under the License is distributed on an "AS IS" BASIS,
10
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ # See the License for the specific language governing permissions and
12
+ # limitations under the License.
13
+
14
+ #This module contains the ImcSdk Core Classes
15
+ #require 'imccoreutils'
16
+ require 'imcgenutils'
17
+ require 'rexml/document'
18
+ include REXML
19
+
20
+ class ImcBase < Object
21
+
22
+ #This class acts as the base class for Managed object
23
+
24
+ attr_reader :child
25
+ attr_reader :dirty_mask
26
+
27
+ def initialize(class_id)
28
+ @class_id = class_id
29
+ @child = Array.new
30
+ @handle = nil
31
+ end
32
+
33
+ def get_class_id()
34
+ return @class_id
35
+ end
36
+
37
+ def get_handle()
38
+ return @handle
39
+ end
40
+
41
+ def child_add(obj)
42
+ #Method adds the child managed object
43
+ @child.push(Marshal.load(Marshal.dump(obj)))
44
+ end
45
+
46
+ def child_remove(obj)
47
+ #Method removes the child managed object
48
+ @child.delete(obj)
49
+ end
50
+
51
+ def child_count()
52
+ #Method returns the child managed object count
53
+ return @child.size()
54
+ end
55
+
56
+ def mark_clean()
57
+ #Method cleans the dirty mask of the managed object
58
+ @dirty_mask = 0
59
+ end
60
+
61
+ def is_dirty()
62
+ #Method checks whether the object is dirty or not.
63
+ return child_is_dirty()
64
+ end
65
+
66
+ def child_to_xml(xml_doc, option=nil, cookie=nil)
67
+ #Method writes the xml representation for the object
68
+ for child in @child do
69
+ child.to_xml(xml_doc, option, elem_name=nil, cookie=cookie)
70
+ end
71
+ end
72
+
73
+ def child_is_dirty()
74
+ #Method checks whether the child object is dirty or not
75
+ for child in @child do
76
+ if child.is_dirty()
77
+ return true
78
+ end
79
+ end
80
+ return false
81
+ end
82
+
83
+ def child_mark_clean()
84
+ #Method cleajs the disrty mask of child managed object.
85
+ for child in @child do
86
+ child.mark_clean()
87
+ end
88
+ end
89
+
90
+
91
+ def write_object()
92
+ #Method writes the string representation of the object.
93
+ for child in @child do
94
+ unless child.nil?
95
+ child.write_object()
96
+ end
97
+ end
98
+ end
99
+
100
+
101
+ def clone()
102
+ #Method returns the clone of the Managed object
103
+ return Marshal.load(Marshal.dump(self))
104
+ end
105
+
106
+ private
107
+ def deepcopy()
108
+ #Overriden method to support deepcopy of Managed Object.
109
+
110
+ clone = self.clone
111
+ clone_child = Array.new
112
+ for child in clone.childs do
113
+ clone_child.push(Marshal.load(Marshal.dump(child)))
114
+ end
115
+ clone.childs = clone_child
116
+ return clone
117
+ end
118
+
119
+ def attr_set(key,value)
120
+ #This Method sets attribute value of the Managed Object.
121
+ if instance_variable_defined?(key)
122
+ instance_variable_set(key,value)
123
+ end
124
+ end
125
+ public
126
+ def attr_get(key)
127
+ #This method gets attribute value of the Managed Object.
128
+ if instance_variable_defined?(key)
129
+ return instance_variable_get(key)
130
+ end
131
+ return nil
132
+ end
133
+ public
134
+ def elem_create(class_tag, xml_doc=nil, override_tag=nil)
135
+ if xml_doc.nil?
136
+ xml_obj = Document.new
137
+ xml_obj = Element.new class_tag
138
+ else
139
+ if override_tag
140
+ xml_obj = xml_doc.add_element(override_tag)
141
+ else
142
+ xml_obj = xml_doc.add_element(class_tag)
143
+ end
144
+ end
145
+ return xml_obj
146
+ end
147
+ end
148
+
149
+
150
+ class AbstractFilter < ImcBase
151
+ def initialize(class_id, tag_name=nil)
152
+ @tag_name = tag_name
153
+ ImcBase.Initialize(class_id)
154
+ end
155
+
156
+ def to_xml(xml_doc=nil, option=nil, elem_name=nil)
157
+ #This method writes the xml representation of the Method Object.
158
+ xml_obj = self.elem_create(@tag_name,
159
+ xml_doc=xml_doc,
160
+ elem_name)
161
+
162
+ instance_variables.each_key do |key|
163
+ if key.start_with?("@")
164
+ next
165
+ elsif key.equal?("class_")
166
+ xml_obj.set("class", self.attr_get(key))
167
+ else
168
+ xml_obj.add_attribute(key, self.attr_get(key))
169
+ end
170
+ end
171
+ end
172
+ end
173
+
174
+ class BaseObject < ImcBase
175
+ #class BaseObject
176
+ def initialize(class_id, tag_name=nil)
177
+ @tag_name = tag_name
178
+ super(class_id)
179
+ end
180
+
181
+ def to_xml(xml_doc=nil, option=nil, elem_name=nil, cookie=nil)
182
+ #This method writes the xml representation of the method object.
183
+ xml_obj = self.elem_create(@tag_name,
184
+ xml_doc=xml_doc,
185
+ elem_name)
186
+ instance_variables.each do |key, value|
187
+ if key.to_s.start_with?("@")
188
+ next
189
+ else
190
+ xml_obj.add_attribute(key, self.attr_get(key))
191
+ end
192
+ end
193
+ self.child_to_xml(xml_obj, option,cookie=cookie)
194
+ return xml_obj
195
+ end
196
+
197
+ def from_xml(elem, handle=nil)
198
+ #This method created the object from the xml representation of the method object
199
+ @handle = handle
200
+
201
+ if elem.attributes
202
+ elem.attributes.each do |attr_name, attr_value|
203
+ instance_variable_set("@"+attr_name, attr_value)
204
+ end
205
+ end
206
+ if elem.children
207
+ #for child_elem in elem.children
208
+ elem.children.each do |child_elem|
209
+ if !child_elem.instance_variable_defined?(:@name)
210
+ next
211
+ end
212
+ child_name = child_elem.name
213
+ child_name = ImcGenUtils.word_u(child_name)
214
+ child = ImcCoreUtils.get_imc_obj(child_name, child_elem)
215
+ @child.push(child)
216
+ child.from_xml(child_elem, handle)
217
+ end
218
+ end
219
+ end
220
+ end
@@ -0,0 +1,271 @@
1
+ # Copyright 2017 Cisco Systems, Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ # http://www.apache.org/licenses/LICENSE-2.0
7
+ #
8
+ # Unless required by applicable law or agreed to in writing, software
9
+ # distributed under the License is distributed on an "AS IS" BASIS,
10
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ # See the License for the specific language governing permissions and
12
+ # limitations under the License.
13
+
14
+ #This module contains all the base classes for the meta
15
+
16
+
17
+
18
+ #class WriteXmlOption < Object
19
+ module WriteXmlOption
20
+ #Class used as enum
21
+
22
+ ALL = 0
23
+ ALL_CONFIG = 1
24
+ DIRTY = 2
25
+ end
26
+
27
+
28
+ class ImcVersion < Object
29
+
30
+ =begin
31
+ This class handles the operations related to the ImcVersions.
32
+ It provides the functionality to compare Imc version objects.
33
+
34
+ Attributes:
35
+ * version (str): version string
36
+ =end
37
+
38
+ attr_reader :version
39
+ attr_accessor :major
40
+ attr_accessor :minor
41
+ attr_accessor :mr
42
+ attr_accessor :patch
43
+
44
+ def initialize(version)
45
+
46
+ if version.nil?
47
+ return nil
48
+ end
49
+
50
+ @version = version
51
+
52
+ match_pattern = /^(?<major>[1-9][0-9]{0,2})\.(?<minor>(([0-9])|([1-9][0-9]{0,1})))\((?<mr>(([0-9])|([1-9][0-9]{0,2})))\.(?<patch>([0-9])|([1-9][0-9]{0,4}))\)$/
53
+
54
+ match_obj = @version.match(match_pattern)
55
+ if match_obj
56
+ @major, @minor, @mr, @patch = match_obj.captures
57
+ return
58
+ end
59
+ match_pattern = /^(?<major>[1-9][0-9]{0,2})\.(?<minor>(([0-9])|([1-9][0-9]{0,1})))\((?<mr>(([0-9])|([1-9][0-9]{0,2})))(?<patch>[a-z])\)$/
60
+ match_obj = @version.match(match_pattern)
61
+ if match_obj
62
+ @major, @minor, @mr, @patch = match_obj.captures
63
+ return
64
+ end
65
+ match_pattern = /^(?<major>[1-9][0-9]{0,2})\.(?<minor>(([0-9])|([1-9][0-9]{0,1})))\((?<mr>([0-9])|([1-9][0-9]{0,2}))\)$/
66
+ match_obj = @version.match(match_pattern)
67
+ if match_obj
68
+ @major, @minor, @mr = match_obj.captures
69
+ return
70
+ end
71
+ end
72
+
73
+ def compare_to(version)
74
+ #This Method compare Imc version
75
+
76
+ if version.nil? || !(version.is_a? ImcVersion)
77
+ return 1
78
+ end
79
+
80
+ if @major != version.major
81
+ return @major.ord - version.major.ord
82
+ end
83
+
84
+ if @minor != version.minor
85
+ return @minor.ord - version.miniw.ord
86
+ end
87
+
88
+ if @mr != version.mr
89
+ return @mr.ord - version.mr.ord
90
+ end
91
+ return @patch.ord - version.patch.ord
92
+ end
93
+
94
+
95
+ def gt(version)
96
+ return compare_to(version) > 0
97
+ end
98
+
99
+
100
+ def lt(version)
101
+ return compare_to(version) < 0
102
+ end
103
+
104
+
105
+ def ge(version)
106
+ return compare_to(version) >= 0
107
+ end
108
+
109
+
110
+ def le(version)
111
+ return compare_to(version) <= 0
112
+ end
113
+
114
+ def to_s()
115
+ return version
116
+ end
117
+ end
118
+
119
+ class MoPropertyRestriction < Object
120
+ =begin
121
+ This class handles the restriction information of the properties
122
+ of managed object.
123
+ =end
124
+
125
+ attr_reader :min_length
126
+ attr_reader :max_length
127
+ attr_reader :pattern
128
+ attr_reader :range_val
129
+ attr_reader :value_set
130
+ attr_reader :range_roc
131
+ attr_reader :value_set_roc
132
+
133
+ def initialize(min_length=nil, max_length=nil, pattern=nil,
134
+ value_set=nil, range_val=nil)
135
+ @min_length = min_length
136
+ @max_length = max_length
137
+ @pattern = pattern
138
+ @range_val = range_val
139
+ @value_set = value_set
140
+ @range_roc = nil
141
+ @value_set_roc = nil
142
+ end
143
+ end
144
+
145
+ class MoPropertyMeta < Object
146
+ =begin
147
+ This class handles the meta information of the properties of managed
148
+ Object.
149
+ =end
150
+
151
+
152
+ attr_reader :name
153
+ attr_reader :xml_attribute
154
+ attr_reader :field_type
155
+ attr_reader :version
156
+ attr_reader :access
157
+ attr_reader :mask
158
+ attr_reader :restriction
159
+
160
+ NAMING = 0
161
+ CREATE_ONLY = 1
162
+ READ_ONLY = 2
163
+ READ_WRITE = 3
164
+ INTERNAL = 4
165
+
166
+ def initialize(name, xml_attribute, field_type, version, access, mask, min_length, max_length, pattern, value_set, range_val)
167
+ @name = name
168
+ @xml_attribute = xml_attribute
169
+ @field_type = field_type
170
+ @version = version
171
+ @access = access
172
+ @mask = mask
173
+ @restriction = MoPropertyRestriction.new(min_length, max_length,
174
+ pattern, value_set,
175
+ range_val)
176
+ end
177
+
178
+ def validate_property_value(input_value)
179
+ #validate property value of mo.
180
+
181
+ return true
182
+ end
183
+
184
+ def to_s()
185
+
186
+ #Method to return string representation.
187
+
188
+ #TBD implementation
189
+ end
190
+
191
+ end
192
+
193
+ class MoMeta < Object
194
+ =begin
195
+ This class handles the meta information of the managed Object.
196
+ =end
197
+
198
+ attr_reader :name
199
+ attr_reader :xml_attribute
200
+ attr_reader :rn
201
+ attr_reader :version
202
+ attr_reader :inp_out
203
+ attr_reader :mask
204
+ attr_reader :field_names
205
+ attr_reader :access
206
+ #attr_reader :children
207
+ #attr_reader :parents
208
+ attr_reader :verbs
209
+
210
+ ACCESS_TYPE_IO = "InputOutput"
211
+ ACCESS_TYPE_OUTPUTONLY = "OutputOnly"
212
+
213
+ #def initialize(name, xml_attribute, rn, version, inp_out, mask,
214
+ # field_names, access, parents, children, verbs)
215
+ def initialize(name, xml_attribute, rn, version, inp_out, mask,
216
+ field_names, access, verbs)
217
+
218
+ @name = name
219
+ @xml_attribute = xml_attribute
220
+ @rn = rn
221
+ @version = version
222
+ @inp_out = inp_out
223
+ @mask = mask
224
+ @field_names = field_names
225
+ @access = access
226
+ #@children = children
227
+ #@parents = parents
228
+ @verbs = verbs
229
+ end
230
+ end
231
+
232
+ class MethodPropertyMeta < Object
233
+ =begin
234
+ This class handles the meta information of the properties of
235
+ external method Object.
236
+ =end
237
+
238
+ attr_reader :name
239
+ attr_reader :xml_attribute
240
+ attr_reader :field_type
241
+ attr_reader :version
242
+ attr_reader :inp_out
243
+ attr_reader :is_complex_type
244
+
245
+ def initialize(name, xml_attribute, field_type, version, inp_out,
246
+ is_complex_type)
247
+ @name = name
248
+ @xml_attribute = xml_attribute
249
+ @field_type = field_type
250
+ @version = version
251
+ @inp_out = inp_out
252
+ @is_complex_type = is_complex_type
253
+ end
254
+ end
255
+
256
+ class MethodMeta < Object
257
+ =begin
258
+ This class handles the meta information of the meta property of
259
+ external method Object.
260
+ =end
261
+ attr_reader :name
262
+ attr_reader :xml_attribute
263
+ attr_reader :version
264
+
265
+ def initialize(name, xml_attribute, version)
266
+ @name = name
267
+ @xml_attribute = xml_attribute
268
+ @version = version
269
+ end
270
+ end
271
+