acirb 1.0.4h → 1.0.4.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (195) hide show
  1. checksums.yaml +4 -4
  2. data/lib/acirb/aaa.rb +1211 -92
  3. data/lib/acirb/ac.rb +167 -8
  4. data/lib/acirb/action.rb +309 -33
  5. data/lib/acirb/actrl.rb +1937 -79
  6. data/lib/acirb/actrlcap.rb +24 -2
  7. data/lib/acirb/adcom.rb +376 -26
  8. data/lib/acirb/aib.rb +47 -5
  9. data/lib/acirb/arp.rb +311 -19
  10. data/lib/acirb/bfd.rb +199 -15
  11. data/lib/acirb/bgp.rb +892 -69
  12. data/lib/acirb/callhome.rb +322 -23
  13. data/lib/acirb/cap.rb +45 -6
  14. data/lib/acirb/cdp.rb +235 -20
  15. data/lib/acirb/cnw.rb +122 -6
  16. data/lib/acirb/comm.rb +4565 -186
  17. data/lib/acirb/comp.rb +4882 -205
  18. data/lib/acirb/compat.rb +413 -38
  19. data/lib/acirb/condition.rb +176 -13
  20. data/lib/acirb/config.rb +235 -16
  21. data/lib/acirb/coop.rb +563 -44
  22. data/lib/acirb/copp.rb +1711 -40
  23. data/lib/acirb/ctrlr.rb +20 -2
  24. data/lib/acirb/ctx.rb +48 -6
  25. data/lib/acirb/datetime.rb +359 -24
  26. data/lib/acirb/dbg.rb +1902 -87
  27. data/lib/acirb/dbgac.rb +770 -47
  28. data/lib/acirb/dbgexp.rb +560 -41
  29. data/lib/acirb/dhcp.rb +898 -71
  30. data/lib/acirb/dhcptlv.rb +64 -8
  31. data/lib/acirb/dhcptlvpol.rb +72 -8
  32. data/lib/acirb/dlgt.rb +7 -1
  33. data/lib/acirb/dns.rb +203 -18
  34. data/lib/acirb/draw.rb +18 -2
  35. data/lib/acirb/edr.rb +52 -5
  36. data/lib/acirb/eigrp.rb +604 -49
  37. data/lib/acirb/ep.rb +43 -4
  38. data/lib/acirb/epm.rb +72 -8
  39. data/lib/acirb/eptrk.rb +147 -7
  40. data/lib/acirb/eqpt.rb +12467 -400
  41. data/lib/acirb/eqptcap.rb +131 -12
  42. data/lib/acirb/eqptcapacity.rb +6446 -254
  43. data/lib/acirb/eqptdiag.rb +171 -11
  44. data/lib/acirb/eqptdiagp.rb +956 -61
  45. data/lib/acirb/ethpm.rb +624 -19
  46. data/lib/acirb/event.rb +155 -12
  47. data/lib/acirb/extnw.rb +112 -11
  48. data/lib/acirb/fabric.rb +6199 -418
  49. data/lib/acirb/fault.rb +700 -51
  50. data/lib/acirb/file.rb +113 -9
  51. data/lib/acirb/firmware.rb +535 -40
  52. data/lib/acirb/fmcast.rb +63 -6
  53. data/lib/acirb/frmwrk.rb +201 -17
  54. data/lib/acirb/fsm.rb +26 -1
  55. data/lib/acirb/fv.rb +5653 -431
  56. data/lib/acirb/fvcap.rb +25 -2
  57. data/lib/acirb/fvns.rb +375 -33
  58. data/lib/acirb/fvtopo.rb +60 -5
  59. data/lib/acirb/geo.rb +86 -8
  60. data/lib/acirb/glean.rb +50 -5
  61. data/lib/acirb/ha.rb +6 -1
  62. data/lib/acirb/health.rb +258 -21
  63. data/lib/acirb/hvs.rb +312 -22
  64. data/lib/acirb/icmp.rb +34 -4
  65. data/lib/acirb/icmpv4.rb +42 -4
  66. data/lib/acirb/icmpv6.rb +78 -5
  67. data/lib/acirb/ident.rb +533 -43
  68. data/lib/acirb/igmp.rb +59 -4
  69. data/lib/acirb/igmpsnoop.rb +254 -18
  70. data/lib/acirb/im.rb +94 -7
  71. data/lib/acirb/imginstall.rb +18 -1
  72. data/lib/acirb/infra.rb +3909 -243
  73. data/lib/acirb/ip.rb +276 -24
  74. data/lib/acirb/ipmcsnoop.rb +217 -18
  75. data/lib/acirb/ipv4.rb +120 -8
  76. data/lib/acirb/ipv6.rb +121 -9
  77. data/lib/acirb/isis.rb +2885 -103
  78. data/lib/acirb/isistlv.rb +64 -8
  79. data/lib/acirb/l1.rb +616 -46
  80. data/lib/acirb/l1cap.rb +24 -2
  81. data/lib/acirb/l2.rb +5676 -152
  82. data/lib/acirb/l2cap.rb +25 -2
  83. data/lib/acirb/l2ext.rb +249 -19
  84. data/lib/acirb/l3.rb +562 -38
  85. data/lib/acirb/l3cap.rb +25 -2
  86. data/lib/acirb/l3ext.rb +758 -59
  87. data/lib/acirb/l3vm.rb +36 -3
  88. data/lib/acirb/l4.rb +35 -3
  89. data/lib/acirb/lacp.rb +226 -18
  90. data/lib/acirb/lbp.rb +24 -2
  91. data/lib/acirb/leqpt.rb +94 -7
  92. data/lib/acirb/lldp.rb +383 -29
  93. data/lib/acirb/lldptlv.rb +64 -8
  94. data/lib/acirb/lldptlvpol.rb +72 -8
  95. data/lib/acirb/maint.rb +464 -34
  96. data/lib/acirb/mcast.rb +19 -3
  97. data/lib/acirb/mcp.rb +168 -15
  98. data/lib/acirb/memory.rb +457 -18
  99. data/lib/acirb/mgmt.rb +708 -50
  100. data/lib/acirb/mldsnoop.rb +225 -16
  101. data/lib/acirb/mo.rb +27 -3
  102. data/lib/acirb/mock.rb +48 -4
  103. data/lib/acirb/mon.rb +378 -40
  104. data/lib/acirb/monitor.rb +124 -9
  105. data/lib/acirb/naming.rb +13 -2
  106. data/lib/acirb/nd.rb +304 -25
  107. data/lib/acirb/nw.rb +320 -39
  108. data/lib/acirb/nws.rb +71 -7
  109. data/lib/acirb/oam.rb +65 -3
  110. data/lib/acirb/observer.rb +56 -4
  111. data/lib/acirb/opflex.rb +5794 -168
  112. data/lib/acirb/os.rb +25 -2
  113. data/lib/acirb/ospf.rb +1185 -82
  114. data/lib/acirb/ospfv3.rb +477 -31
  115. data/lib/acirb/pc.rb +205 -11
  116. data/lib/acirb/pcons.rb +444 -42
  117. data/lib/acirb/phys.rb +22 -2
  118. data/lib/acirb/ping.rb +172 -6
  119. data/lib/acirb/pki.rb +194 -15
  120. data/lib/acirb/pol.rb +1063 -88
  121. data/lib/acirb/policer.rb +16 -2
  122. data/lib/acirb/pool.rb +49 -6
  123. data/lib/acirb/pres.rb +216 -19
  124. data/lib/acirb/proc.rb +4069 -130
  125. data/lib/acirb/psu.rb +40 -4
  126. data/lib/acirb/qos.rb +312 -28
  127. data/lib/acirb/qosm.rb +979 -40
  128. data/lib/acirb/qosp.rb +147 -11
  129. data/lib/acirb/rbqm.rb +113 -9
  130. data/lib/acirb/regress.rb +14 -1
  131. data/lib/acirb/reln.rb +304 -26
  132. data/lib/acirb/repl.rb +34 -4
  133. data/lib/acirb/res.rb +120 -12
  134. data/lib/acirb/rib.rb +85 -9
  135. data/lib/acirb/rmon.rb +150 -10
  136. data/lib/acirb/rpm.rb +11 -1
  137. data/lib/acirb/rtcom.rb +27 -3
  138. data/lib/acirb/rtctrl.rb +641 -59
  139. data/lib/acirb/rtextcom.rb +45 -4
  140. data/lib/acirb/rtflt.rb +23 -3
  141. data/lib/acirb/rtleak.rb +58 -6
  142. data/lib/acirb/rtmap.rb +354 -32
  143. data/lib/acirb/rtpfx.rb +54 -5
  144. data/lib/acirb/rtregcom.rb +43 -4
  145. data/lib/acirb/rtsum.rb +8 -1
  146. data/lib/acirb/rule.rb +27 -4
  147. data/lib/acirb/satm.rb +175 -6
  148. data/lib/acirb/snmp.rb +409 -34
  149. data/lib/acirb/span.rb +1263 -84
  150. data/lib/acirb/stats.rb +607 -31
  151. data/lib/acirb/statstore.rb +38 -4
  152. data/lib/acirb/stormctrl.rb +36 -3
  153. data/lib/acirb/stp.rb +315 -28
  154. data/lib/acirb/sts.rb +538 -45
  155. data/lib/acirb/svccore.rb +173 -8
  156. data/lib/acirb/svi.rb +61 -3
  157. data/lib/acirb/synthetic.rb +639 -44
  158. data/lib/acirb/sysdebug.rb +248 -18
  159. data/lib/acirb/sysfile.rb +31 -4
  160. data/lib/acirb/syshist.rb +39 -4
  161. data/lib/acirb/syslog.rb +180 -14
  162. data/lib/acirb/sysmgr.rb +38 -4
  163. data/lib/acirb/sysmgrp.rb +21 -2
  164. data/lib/acirb/tag.rb +159 -12
  165. data/lib/acirb/task.rb +48 -3
  166. data/lib/acirb/test.rb +40 -3
  167. data/lib/acirb/testinfralab.rb +97 -8
  168. data/lib/acirb/tlv.rb +68 -10
  169. data/lib/acirb/top.rb +212 -16
  170. data/lib/acirb/topoctrl.rb +100 -9
  171. data/lib/acirb/traceroute.rb +210 -11
  172. data/lib/acirb/traceroutep.rb +215 -12
  173. data/lib/acirb/trig.rb +344 -30
  174. data/lib/acirb/troubleshoot.rb +136 -8
  175. data/lib/acirb/tunnel.rb +148 -11
  176. data/lib/acirb/uribv4.rb +83 -8
  177. data/lib/acirb/uribv6.rb +63 -6
  178. data/lib/acirb/vlan.rb +88 -5
  179. data/lib/acirb/vlanmgr.rb +21 -2
  180. data/lib/acirb/vmm.rb +715 -50
  181. data/lib/acirb/vns.rb +6681 -428
  182. data/lib/acirb/vpc.rb +260 -14
  183. data/lib/acirb/vsvc.rb +48 -4
  184. data/lib/acirb/vtap.rb +20 -2
  185. data/lib/acirb/vxlan.rb +73 -4
  186. data/lib/acirb/vz.rb +1934 -145
  187. data/lib/acirb.rb +1 -1
  188. data/lib/events.rb +143 -6
  189. data/lib/loader.rb +5 -3
  190. data/lib/mo.rb +72 -15
  191. data/lib/naming.rb +1 -1
  192. data/lib/query.rb +3 -1
  193. data/lib/restclient.rb +172 -47
  194. data/lib/version.rb +1 -1
  195. metadata +32 -4
data/lib/acirb/snmp.rb CHANGED
@@ -8,10 +8,17 @@ module ACIrb
8
8
  @prefixes = []
9
9
  @rn_format = ''
10
10
  @containers = []
11
- @props = ['childAction', 'descr', 'dn', 'epgDn', 'name', 'rn', 'status']
11
+ @props = { 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
12
+ 'descr' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
13
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
14
+ 'epgDn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
15
+ 'name' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
16
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
17
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
12
18
  @child_classes = []
13
19
  @label = 'None'
14
20
  @naming_props = []
21
+ @read_only = false
15
22
 
16
23
  def rn
17
24
  ''
@@ -24,10 +31,16 @@ module ACIrb
24
31
  @prefixes = []
25
32
  @rn_format = ''
26
33
  @containers = []
27
- @props = ['addr', 'childAction', 'dn', 'name', 'rn', 'status']
34
+ @props = { 'addr' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
35
+ 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
36
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
37
+ 'name' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
38
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
39
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
28
40
  @child_classes = []
29
41
  @label = 'Client Entry'
30
42
  @naming_props = []
43
+ @read_only = false
31
44
 
32
45
  def rn
33
46
  ''
@@ -40,10 +53,16 @@ module ACIrb
40
53
  @prefixes = []
41
54
  @rn_format = ''
42
55
  @containers = []
43
- @props = ['childAction', 'descr', 'dn', 'name', 'rn', 'status']
56
+ @props = { 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
57
+ 'descr' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
58
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
59
+ 'name' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
60
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
61
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
44
62
  @child_classes = []
45
63
  @label = 'SNMP Community'
46
64
  @naming_props = []
65
+ @read_only = false
47
66
 
48
67
  def rn
49
68
  ''
@@ -56,10 +75,15 @@ module ACIrb
56
75
  @prefixes = []
57
76
  @rn_format = ''
58
77
  @containers = []
59
- @props = ['childAction', 'dn', 'name', 'rn', 'status']
78
+ @props = { 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
79
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
80
+ 'name' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
81
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
82
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
60
83
  @child_classes = []
61
84
  @label = 'Client Entry'
62
85
  @naming_props = []
86
+ @read_only = false
63
87
 
64
88
  def rn
65
89
  ''
@@ -72,10 +96,21 @@ module ACIrb
72
96
  @prefixes = []
73
97
  @rn_format = ''
74
98
  @containers = []
75
- @props = ['adminSt', 'childAction', 'contact', 'descr', 'dn', 'loc', 'name', 'ownerKey', 'ownerTag', 'rn', 'status']
99
+ @props = { 'adminSt' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
100
+ 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
101
+ 'contact' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
102
+ 'descr' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
103
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
104
+ 'loc' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
105
+ 'name' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
106
+ 'ownerKey' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
107
+ 'ownerTag' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
108
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
109
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
76
110
  @child_classes = ['FaultDelegate']
77
111
  @label = 'SNMP Policy'
78
112
  @naming_props = []
113
+ @read_only = false
79
114
 
80
115
  def rn
81
116
  ''
@@ -88,10 +123,20 @@ module ACIrb
88
123
  @prefixes = []
89
124
  @rn_format = ''
90
125
  @containers = []
91
- @props = ['authKey', 'authType', 'childAction', 'descr', 'dn', 'name', 'privKey', 'privType', 'rn', 'status']
126
+ @props = { 'authKey' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
127
+ 'authType' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
128
+ 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
129
+ 'descr' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
130
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
131
+ 'name' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
132
+ 'privKey' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
133
+ 'privType' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
134
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
135
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
92
136
  @child_classes = []
93
137
  @label = 'User Profile'
94
138
  @naming_props = []
139
+ @read_only = false
95
140
 
96
141
  def rn
97
142
  ''
@@ -104,10 +149,21 @@ module ACIrb
104
149
  @prefixes = [['client-', true]]
105
150
  @rn_format = 'client-[%(addr)s]'
106
151
  @containers = ['SnmpClientGrp']
107
- @props = ['addr', 'childAction', 'dn', 'lcOwn', 'modTs', 'monPolDn', 'name', 'operSt', 'operStQual', 'rn', 'status']
152
+ @props = { 'addr' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
153
+ 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
154
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
155
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
156
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
157
+ 'monPolDn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
158
+ 'name' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
159
+ 'operSt' => { 'isAdmin' => false, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
160
+ 'operStQual' => { 'isAdmin' => false, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
161
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
162
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
108
163
  @child_classes = ['FaultInst', 'FaultCounts', 'HealthInst']
109
164
  @label = 'Client Entry'
110
165
  @naming_props = ['addr']
166
+ @read_only = true
111
167
 
112
168
  def rn
113
169
  'client-[' << @attributes['addr'] << ']'
@@ -120,10 +176,23 @@ module ACIrb
120
176
  @prefixes = [['clgrp-', true]]
121
177
  @rn_format = 'clgrp-%(name)s'
122
178
  @containers = ['SnmpInst']
123
- @props = ['childAction', 'descr', 'dn', 'epgDn', 'lcOwn', 'modTs', 'monPolDn', 'name', 'operSt', 'operStQual', 'rn', 'status', 'vrf']
179
+ @props = { 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
180
+ 'descr' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
181
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
182
+ 'epgDn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
183
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
184
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
185
+ 'monPolDn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
186
+ 'name' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
187
+ 'operSt' => { 'isAdmin' => false, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
188
+ 'operStQual' => { 'isAdmin' => false, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
189
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
190
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
191
+ 'vrf' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
124
192
  @child_classes = ['SnmpClient', 'FaultCounts', 'HealthInst', 'SnmpRsCommSecPClientGrpAtt']
125
193
  @label = 'Client Group'
126
194
  @naming_props = ['name']
195
+ @read_only = true
127
196
 
128
197
  def rn
129
198
  'clgrp-' << @attributes['name'] << ''
@@ -136,10 +205,20 @@ module ACIrb
136
205
  @prefixes = [['clgrp-', true]]
137
206
  @rn_format = 'clgrp-%(name)s'
138
207
  @containers = ['SnmpPol']
139
- @props = ['childAction', 'descr', 'dn', 'epgDn', 'lcOwn', 'modTs', 'name', 'rn', 'status', 'uid']
208
+ @props = { 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
209
+ 'descr' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
210
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
211
+ 'epgDn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
212
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
213
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
214
+ 'name' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
215
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
216
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
217
+ 'uid' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
140
218
  @child_classes = ['SnmpRsEpg', 'SnmpRsClientGrpToEpp', 'SnmpClientP']
141
219
  @label = 'SNMP Client Group Profile'
142
220
  @naming_props = ['name']
221
+ @read_only = false
143
222
 
144
223
  def rn
145
224
  'clgrp-' << @attributes['name'] << ''
@@ -152,10 +231,19 @@ module ACIrb
152
231
  @prefixes = [['client-', true]]
153
232
  @rn_format = 'client-[%(addr)s]'
154
233
  @containers = ['SnmpClientGrpP']
155
- @props = ['addr', 'childAction', 'dn', 'lcOwn', 'modTs', 'name', 'rn', 'status', 'uid']
234
+ @props = { 'addr' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
235
+ 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
236
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
237
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
238
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
239
+ 'name' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
240
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
241
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
242
+ 'uid' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
156
243
  @child_classes = []
157
244
  @label = 'Client Entry'
158
245
  @naming_props = ['addr']
246
+ @read_only = false
159
247
 
160
248
  def rn
161
249
  'client-[' << @attributes['addr'] << ']'
@@ -168,10 +256,21 @@ module ACIrb
168
256
  @prefixes = [['community-', true]]
169
257
  @rn_format = 'community-%(name)s'
170
258
  @containers = ['SnmpInst']
171
- @props = ['childAction', 'descr', 'dn', 'lcOwn', 'modTs', 'monPolDn', 'name', 'operSt', 'operStQual', 'rn', 'status']
259
+ @props = { 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
260
+ 'descr' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
261
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
262
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
263
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
264
+ 'monPolDn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
265
+ 'name' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
266
+ 'operSt' => { 'isAdmin' => false, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
267
+ 'operStQual' => { 'isAdmin' => false, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
268
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
269
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
172
270
  @child_classes = ['SnmpRsCommToCtxAtt', 'FaultCounts', 'HealthInst', 'SnmpRtCommSecPClientGrpAtt']
173
271
  @label = 'Community Security Policy'
174
272
  @naming_props = ['name']
273
+ @read_only = true
175
274
 
176
275
  def rn
177
276
  'community-' << @attributes['name'] << ''
@@ -184,10 +283,19 @@ module ACIrb
184
283
  @prefixes = [['community-', true]]
185
284
  @rn_format = 'community-%(name)s'
186
285
  @containers = ['SnmpCtxDef', 'SnmpCtxP', 'SnmpPol']
187
- @props = ['childAction', 'descr', 'dn', 'lcOwn', 'modTs', 'name', 'rn', 'status', 'uid']
286
+ @props = { 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
287
+ 'descr' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
288
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
289
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
290
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
291
+ 'name' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
292
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
293
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
294
+ 'uid' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
188
295
  @child_classes = []
189
296
  @label = 'SNMP Community'
190
297
  @naming_props = ['name']
298
+ @read_only = false
191
299
 
192
300
  def rn
193
301
  'community-' << @attributes['name'] << ''
@@ -200,10 +308,23 @@ module ACIrb
200
308
  @prefixes = [['issues', false]]
201
309
  @rn_format = 'issues'
202
310
  @containers = ['SnmpPol']
203
- @props = ['childAction', 'configQual', 'configSt', 'descr', 'dn', 'lcOwn', 'modTs', 'monPolDn', 'name', 'ownerKey', 'ownerTag', 'rn', 'status']
311
+ @props = { 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
312
+ 'configQual' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
313
+ 'configSt' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
314
+ 'descr' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
315
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
316
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
317
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
318
+ 'monPolDn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
319
+ 'name' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
320
+ 'ownerKey' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
321
+ 'ownerTag' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
322
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
323
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
204
324
  @child_classes = ['FaultInst', 'FaultCounts', 'HealthInst', 'FaultDelegate']
205
325
  @label = 'SNMP Policy Configuration Issues'
206
326
  @naming_props = []
327
+ @read_only = true
207
328
 
208
329
  def rn
209
330
  'issues'
@@ -216,10 +337,22 @@ module ACIrb
216
337
  @prefixes = [['ctx-', true]]
217
338
  @rn_format = 'ctx-%(name)s'
218
339
  @containers = ['SnmpInst']
219
- @props = ['childAction', 'descr', 'dn', 'lcOwn', 'modTs', 'name', 'operSt', 'operStQual', 'rn', 'status', 'uid', 'vrf']
340
+ @props = { 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
341
+ 'descr' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
342
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
343
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
344
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
345
+ 'name' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
346
+ 'operSt' => { 'isAdmin' => false, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
347
+ 'operStQual' => { 'isAdmin' => false, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
348
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
349
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
350
+ 'uid' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
351
+ 'vrf' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
220
352
  @child_classes = ['SnmpRtCommToCtxAtt']
221
353
  @label = 'Context'
222
354
  @naming_props = ['name']
355
+ @read_only = false
223
356
 
224
357
  def rn
225
358
  'ctx-' << @attributes['name'] << ''
@@ -232,10 +365,17 @@ module ACIrb
232
365
  @prefixes = [['snmpctx', false]]
233
366
  @rn_format = 'snmpctx'
234
367
  @containers = ['FvCtxDef']
235
- @props = ['childAction', 'dn', 'lcOwn', 'modTs', 'name', 'rn', 'status']
368
+ @props = { 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
369
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
370
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
371
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
372
+ 'name' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
373
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
374
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
236
375
  @child_classes = ['SnmpCommunityP']
237
376
  @label = 'Definition Object for SNMP Context Profile'
238
377
  @naming_props = []
378
+ @read_only = true
239
379
 
240
380
  def rn
241
381
  'snmpctx'
@@ -248,10 +388,18 @@ module ACIrb
248
388
  @prefixes = [['snmpctx', false]]
249
389
  @rn_format = 'snmpctx'
250
390
  @containers = ['FvCtx']
251
- @props = ['childAction', 'dn', 'lcOwn', 'modTs', 'name', 'rn', 'status', 'uid']
391
+ @props = { 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
392
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
393
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
394
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
395
+ 'name' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
396
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
397
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
398
+ 'uid' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
252
399
  @child_classes = ['SnmpCommunityP']
253
400
  @label = 'SNMP Context Profile'
254
401
  @naming_props = []
402
+ @read_only = false
255
403
 
256
404
  def rn
257
405
  'snmpctx'
@@ -264,10 +412,21 @@ module ACIrb
264
412
  @prefixes = [['snmp', false]]
265
413
  @rn_format = 'snmp'
266
414
  @containers = ['TopSystem']
267
- @props = ['adminSt', 'childAction', 'dn', 'lcOwn', 'modTs', 'monPolDn', 'name', 'operErr', 'operSt', 'rn', 'status']
415
+ @props = { 'adminSt' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
416
+ 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
417
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
418
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
419
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
420
+ 'monPolDn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
421
+ 'name' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
422
+ 'operErr' => { 'isAdmin' => false, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
423
+ 'operSt' => { 'isAdmin' => false, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
424
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
425
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
268
426
  @child_classes = ['FaultCounts', 'HealthInst', 'SnmpInst']
269
427
  @label = 'SNMP Entity'
270
428
  @naming_props = []
429
+ @read_only = true
271
430
 
272
431
  def rn
273
432
  'snmp'
@@ -280,10 +439,20 @@ module ACIrb
280
439
  @prefixes = [['snmpgroup-', true]]
281
440
  @rn_format = 'snmpgroup-%(name)s'
282
441
  @containers = ['FabricInst']
283
- @props = ['childAction', 'descr', 'dn', 'lcOwn', 'modTs', 'monPolDn', 'name', 'rn', 'status', 'uid']
442
+ @props = { 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
443
+ 'descr' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
444
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
445
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
446
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
447
+ 'monPolDn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
448
+ 'name' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
449
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
450
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
451
+ 'uid' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
284
452
  @child_classes = ['SnmpRtDestGroup', 'FaultCounts', 'HealthInst', 'SnmpTrapDest']
285
453
  @label = 'SNMP Monitoring Destination Group'
286
454
  @naming_props = ['name']
455
+ @read_only = false
287
456
 
288
457
  def rn
289
458
  'snmpgroup-' << @attributes['name'] << ''
@@ -296,10 +465,27 @@ module ACIrb
296
465
  @prefixes = [['inst', false]]
297
466
  @rn_format = 'inst'
298
467
  @containers = ['SnmpEntity']
299
- @props = ['adminSt', 'childAction', 'contact', 'descr', 'dn', 'engId', 'engIdLen', 'lastInitTs', 'lcOwn', 'loc', 'modTs', 'monPolDn', 'name', 'ownerKey', 'ownerTag', 'rn', 'status']
468
+ @props = { 'adminSt' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
469
+ 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
470
+ 'contact' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
471
+ 'descr' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
472
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
473
+ 'engId' => { 'isAdmin' => false, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
474
+ 'engIdLen' => { 'isAdmin' => false, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
475
+ 'lastInitTs' => { 'isAdmin' => false, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
476
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
477
+ 'loc' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
478
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
479
+ 'monPolDn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
480
+ 'name' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
481
+ 'ownerKey' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
482
+ 'ownerTag' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
483
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
484
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
300
485
  @child_classes = ['FaultCounts', 'HealthInst', 'SnmpUserSecP', 'SnmpClientGrp', 'FaultDelegate', 'SnmpCommSecP', 'SnmpCtx']
301
486
  @label = 'SNMP Instance'
302
487
  @naming_props = []
488
+ @read_only = true
303
489
 
304
490
  def rn
305
491
  'inst'
@@ -312,10 +498,25 @@ module ACIrb
312
498
  @prefixes = [['snmppol-', true]]
313
499
  @rn_format = 'snmppol-%(name)s'
314
500
  @containers = ['FabricInst']
315
- @props = ['adminSt', 'childAction', 'contact', 'descr', 'dn', 'lcOwn', 'loc', 'modTs', 'monPolDn', 'name', 'ownerKey', 'ownerTag', 'rn', 'status', 'uid']
501
+ @props = { 'adminSt' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
502
+ 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
503
+ 'contact' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
504
+ 'descr' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
505
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
506
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
507
+ 'loc' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
508
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
509
+ 'monPolDn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
510
+ 'name' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
511
+ 'ownerKey' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
512
+ 'ownerTag' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
513
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
514
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
515
+ 'uid' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
316
516
  @child_classes = ['FaultCounts', 'HealthInst', 'SnmpCommunityP', 'SnmpRtSnmpPol', 'SnmpConfIssues', 'SnmpUserP', 'SnmpClientGrpP', 'FaultDelegate']
317
517
  @label = 'SNMP Policy'
318
518
  @naming_props = ['name']
519
+ @read_only = false
319
520
 
320
521
  def rn
321
522
  'snmppol-' << @attributes['name'] << ''
@@ -328,10 +529,23 @@ module ACIrb
328
529
  @prefixes = [['rsclientGrpToEpp', false]]
329
530
  @rn_format = 'rsclientGrpToEpp'
330
531
  @containers = ['SnmpClientGrpP']
331
- @props = ['childAction', 'dn', 'forceResolve', 'lcOwn', 'modTs', 'rType', 'rn', 'state', 'stateQual', 'status', 'tCl', 'tDn', 'tType']
532
+ @props = { 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
533
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
534
+ 'forceResolve' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
535
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
536
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
537
+ 'rType' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
538
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
539
+ 'state' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
540
+ 'stateQual' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
541
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
542
+ 'tCl' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
543
+ 'tDn' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
544
+ 'tType' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
332
545
  @child_classes = []
333
546
  @label = 'Relation to SNMP Clien Group Reachability EPP'
334
547
  @naming_props = []
548
+ @read_only = true
335
549
 
336
550
  def rn
337
551
  'rsclientGrpToEpp'
@@ -344,10 +558,24 @@ module ACIrb
344
558
  @prefixes = [['rscommSecPClientGrpAtt-', true]]
345
559
  @rn_format = 'rscommSecPClientGrpAtt-[%(tDn)s]'
346
560
  @containers = ['SnmpClientGrp']
347
- @props = ['childAction', 'dn', 'forceResolve', 'lcOwn', 'modTs', 'rType', 'rn', 'state', 'stateQual', 'status', 'tCl', 'tDn', 'tSKey', 'tType']
561
+ @props = { 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
562
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
563
+ 'forceResolve' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
564
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
565
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
566
+ 'rType' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
567
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
568
+ 'state' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
569
+ 'stateQual' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
570
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
571
+ 'tCl' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
572
+ 'tDn' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
573
+ 'tSKey' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
574
+ 'tType' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
348
575
  @child_classes = []
349
576
  @label = 'Community Security Policy Attachment'
350
577
  @naming_props = ['tDn']
578
+ @read_only = true
351
579
 
352
580
  def rn
353
581
  'rscommSecPClientGrpAtt-[' << @attributes['tDn'] << ']'
@@ -360,10 +588,28 @@ module ACIrb
360
588
  @prefixes = [['rsCommToCtxAtt', false]]
361
589
  @rn_format = 'rsCommToCtxAtt'
362
590
  @containers = ['SnmpCommSecP']
363
- @props = ['childAction', 'dn', 'forceResolve', 'lcOwn', 'modTs', 'monPolDn', 'operSt', 'operStQual', 'parentSKey', 'rType', 'rn', 'state', 'stateQual', 'status', 'tCl', 'tDn', 'tType', 'uid']
591
+ @props = { 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
592
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
593
+ 'forceResolve' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
594
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
595
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
596
+ 'monPolDn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
597
+ 'operSt' => { 'isAdmin' => false, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
598
+ 'operStQual' => { 'isAdmin' => false, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
599
+ 'parentSKey' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
600
+ 'rType' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
601
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
602
+ 'state' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
603
+ 'stateQual' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
604
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
605
+ 'tCl' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
606
+ 'tDn' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
607
+ 'tType' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
608
+ 'uid' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
364
609
  @child_classes = ['FaultInst', 'FaultCounts', 'HealthInst']
365
610
  @label = 'Context'
366
611
  @naming_props = []
612
+ @read_only = false
367
613
 
368
614
  def rn
369
615
  'rsCommToCtxAtt'
@@ -376,10 +622,25 @@ module ACIrb
376
622
  @prefixes = [['rsdestGroup', false]]
377
623
  @rn_format = 'rsdestGroup'
378
624
  @containers = ['SnmpSrc']
379
- @props = ['childAction', 'dn', 'forceResolve', 'lcOwn', 'modTs', 'monPolDn', 'rType', 'rn', 'state', 'stateQual', 'status', 'tCl', 'tDn', 'tType', 'uid']
625
+ @props = { 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
626
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
627
+ 'forceResolve' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
628
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
629
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
630
+ 'monPolDn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
631
+ 'rType' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
632
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
633
+ 'state' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
634
+ 'stateQual' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
635
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
636
+ 'tCl' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
637
+ 'tDn' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
638
+ 'tType' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
639
+ 'uid' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
380
640
  @child_classes = ['FaultInst', 'FaultCounts', 'HealthInst']
381
641
  @label = 'SNMP Destination Group'
382
642
  @naming_props = []
643
+ @read_only = false
383
644
 
384
645
  def rn
385
646
  'rsdestGroup'
@@ -392,10 +653,24 @@ module ACIrb
392
653
  @prefixes = [['rsepg', false]]
393
654
  @rn_format = 'rsepg'
394
655
  @containers = ['SnmpClientGrpP']
395
- @props = ['childAction', 'dn', 'forceResolve', 'lcOwn', 'modTs', 'rType', 'rn', 'state', 'stateQual', 'status', 'tCl', 'tDn', 'tType', 'uid']
656
+ @props = { 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
657
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
658
+ 'forceResolve' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
659
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
660
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
661
+ 'rType' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
662
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
663
+ 'state' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
664
+ 'stateQual' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
665
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
666
+ 'tCl' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
667
+ 'tDn' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
668
+ 'tType' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
669
+ 'uid' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
396
670
  @child_classes = []
397
671
  @label = 'Attachable Target Group'
398
672
  @naming_props = []
673
+ @read_only = false
399
674
 
400
675
  def rn
401
676
  'rsepg'
@@ -408,10 +683,19 @@ module ACIrb
408
683
  @prefixes = [['rtcommSecPClientGrpAtt-', true]]
409
684
  @rn_format = 'rtcommSecPClientGrpAtt-[%(tDn)s]'
410
685
  @containers = ['SnmpCommSecP']
411
- @props = ['childAction', 'dn', 'lcOwn', 'modTs', 'parentSKey', 'rn', 'status', 'tCl', 'tDn']
686
+ @props = { 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
687
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
688
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
689
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
690
+ 'parentSKey' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
691
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
692
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
693
+ 'tCl' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
694
+ 'tDn' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false } }
412
695
  @child_classes = []
413
696
  @label = 'Client Group'
414
697
  @naming_props = ['tDn']
698
+ @read_only = true
415
699
 
416
700
  def rn
417
701
  'rtcommSecPClientGrpAtt-[' << @attributes['tDn'] << ']'
@@ -424,10 +708,19 @@ module ACIrb
424
708
  @prefixes = [['rtcommToCtxAtt-', true]]
425
709
  @rn_format = 'rtcommToCtxAtt-[%(tDn)s]'
426
710
  @containers = ['SnmpCtx']
427
- @props = ['childAction', 'dn', 'lcOwn', 'modTs', 'rn', 'status', 'tCl', 'tDn', 'tSKey']
711
+ @props = { 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
712
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
713
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
714
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
715
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
716
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
717
+ 'tCl' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
718
+ 'tDn' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
719
+ 'tSKey' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
428
720
  @child_classes = []
429
721
  @label = 'Community Security Policy'
430
722
  @naming_props = ['tDn']
723
+ @read_only = true
431
724
 
432
725
  def rn
433
726
  'rtcommToCtxAtt-[' << @attributes['tDn'] << ']'
@@ -440,10 +733,18 @@ module ACIrb
440
733
  @prefixes = [['rtdestGroup-', true]]
441
734
  @rn_format = 'rtdestGroup-[%(tDn)s]'
442
735
  @containers = ['SnmpGroup']
443
- @props = ['childAction', 'dn', 'lcOwn', 'modTs', 'rn', 'status', 'tCl', 'tDn']
736
+ @props = { 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
737
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
738
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
739
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
740
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
741
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
742
+ 'tCl' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
743
+ 'tDn' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false } }
444
744
  @child_classes = []
445
745
  @label = 'SNMP Source'
446
746
  @naming_props = ['tDn']
747
+ @read_only = true
447
748
 
448
749
  def rn
449
750
  'rtdestGroup-[' << @attributes['tDn'] << ']'
@@ -456,10 +757,18 @@ module ACIrb
456
757
  @prefixes = [['rtfabricSnmpPol-', true]]
457
758
  @rn_format = 'rtfabricSnmpPol-[%(tDn)s]'
458
759
  @containers = ['SnmpPol']
459
- @props = ['childAction', 'dn', 'lcOwn', 'modTs', 'rn', 'status', 'tCl', 'tDn']
760
+ @props = { 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
761
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
762
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
763
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
764
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
765
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
766
+ 'tCl' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
767
+ 'tDn' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false } }
460
768
  @child_classes = []
461
769
  @label = 'POD Policy Group'
462
770
  @naming_props = ['tDn']
771
+ @read_only = true
463
772
 
464
773
  def rn
465
774
  'rtfabricSnmpPol-[' << @attributes['tDn'] << ']'
@@ -472,10 +781,18 @@ module ACIrb
472
781
  @prefixes = [['rtsnmpPRel', false]]
473
782
  @rn_format = 'rtsnmpPRel'
474
783
  @containers = ['SnmpPol']
475
- @props = ['childAction', 'dn', 'lcOwn', 'modTs', 'rn', 'status', 'tCl', 'tDn']
784
+ @props = { 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
785
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
786
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
787
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
788
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
789
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
790
+ 'tCl' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
791
+ 'tDn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
476
792
  @child_classes = []
477
793
  @label = 'Container for Dbgr Policies'
478
794
  @naming_props = []
795
+ @read_only = true
479
796
 
480
797
  def rn
481
798
  'rtsnmpPRel'
@@ -488,10 +805,22 @@ module ACIrb
488
805
  @prefixes = [['snmpsrc-', true]]
489
806
  @rn_format = 'snmpsrc-%(name)s'
490
807
  @containers = ['MonCommonPol', 'MonInfraPol', 'MonEPGTarget', 'MonFabricPol', 'EventSevAsnP', 'MonEPGPol', 'MonInfraTarget', 'FaultSevAsnP', 'MonFabricTarget']
491
- @props = ['childAction', 'descr', 'dn', 'incl', 'lcOwn', 'minSev', 'modTs', 'monPolDn', 'name', 'rn', 'status', 'uid']
808
+ @props = { 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
809
+ 'descr' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
810
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
811
+ 'incl' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
812
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
813
+ 'minSev' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
814
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
815
+ 'monPolDn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
816
+ 'name' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
817
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
818
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
819
+ 'uid' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
492
820
  @child_classes = ['SnmpRsDestGroup', 'FaultCounts', 'HealthInst']
493
821
  @label = 'SNMP Source'
494
822
  @naming_props = ['name']
823
+ @read_only = false
495
824
 
496
825
  def rn
497
826
  'snmpsrc-' << @attributes['name'] << ''
@@ -504,10 +833,28 @@ module ACIrb
504
833
  @prefixes = [['trapdest-', true], ['-port-', true]]
505
834
  @rn_format = 'trapdest-%(host)s-port-%(port)s'
506
835
  @containers = ['SnmpGroup']
507
- @props = ['childAction', 'descr', 'dn', 'epgDn', 'host', 'lcOwn', 'modTs', 'monPolDn', 'name', 'notifT', 'port', 'rn', 'secName', 'status', 'uid', 'v3SecLvl', 'ver', 'vrfName']
836
+ @props = { 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
837
+ 'descr' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
838
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
839
+ 'epgDn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
840
+ 'host' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
841
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
842
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
843
+ 'monPolDn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
844
+ 'name' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
845
+ 'notifT' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
846
+ 'port' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
847
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
848
+ 'secName' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
849
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
850
+ 'uid' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
851
+ 'v3SecLvl' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
852
+ 'ver' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
853
+ 'vrfName' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
508
854
  @child_classes = ['FaultInst', 'FaultCounts', 'HealthInst', 'FileRsARemoteHostToEpg', 'FileRsARemoteHostToEpp']
509
855
  @label = 'SNMP Trap Destination'
510
856
  @naming_props = ['host', 'port']
857
+ @read_only = false
511
858
 
512
859
  def rn
513
860
  'trapdest-' << @attributes['host'] << '-port-' << @attributes['port'] << ''
@@ -520,10 +867,23 @@ module ACIrb
520
867
  @prefixes = [['user-', true]]
521
868
  @rn_format = 'user-%(name)s'
522
869
  @containers = ['SnmpPol']
523
- @props = ['authKey', 'authType', 'childAction', 'descr', 'dn', 'lcOwn', 'modTs', 'name', 'privKey', 'privType', 'rn', 'status', 'uid']
870
+ @props = { 'authKey' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
871
+ 'authType' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
872
+ 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
873
+ 'descr' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
874
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
875
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
876
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
877
+ 'name' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
878
+ 'privKey' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
879
+ 'privType' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
880
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
881
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
882
+ 'uid' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
524
883
  @child_classes = []
525
884
  @label = 'User Profile'
526
885
  @naming_props = ['name']
886
+ @read_only = false
527
887
 
528
888
  def rn
529
889
  'user-' << @attributes['name'] << ''
@@ -536,10 +896,25 @@ module ACIrb
536
896
  @prefixes = [['user-', true]]
537
897
  @rn_format = 'user-%(name)s'
538
898
  @containers = ['SnmpInst']
539
- @props = ['authKey', 'authType', 'childAction', 'descr', 'dn', 'lcOwn', 'modTs', 'monPolDn', 'name', 'operSt', 'operStQual', 'privKey', 'privType', 'rn', 'status']
899
+ @props = { 'authKey' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
900
+ 'authType' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
901
+ 'childAction' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
902
+ 'descr' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
903
+ 'dn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => true, 'isRn' => false },
904
+ 'lcOwn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
905
+ 'modTs' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
906
+ 'monPolDn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
907
+ 'name' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
908
+ 'operSt' => { 'isAdmin' => false, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
909
+ 'operStQual' => { 'isAdmin' => false, 'isImplicit' => false, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false },
910
+ 'privKey' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
911
+ 'privType' => { 'isAdmin' => true, 'isImplicit' => false, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => false },
912
+ 'rn' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => true, 'isDn' => false, 'isRn' => true },
913
+ 'status' => { 'isAdmin' => true, 'isImplicit' => true, 'isCreateOnly' => false, 'isDn' => false, 'isRn' => false } }
540
914
  @child_classes = ['FaultInst', 'FaultCounts', 'HealthInst']
541
915
  @label = 'User Security Policy'
542
916
  @naming_props = ['name']
917
+ @read_only = true
543
918
 
544
919
  def rn
545
920
  'user-' << @attributes['name'] << ''