1# -*- coding: utf-8 -*-

2 from operator import attrgetter

3 from pyangbind.lib.yangtypes import RestrictedPrecisionDecimalType

4 from pyangbind.lib.yangtypes import RestrictedClassType

5 from pyangbind.lib.yangtypes import TypedListType

6 from pyangbind.lib.yangtypes import YANGBool

7 from pyangbind.lib.yangtypes import YANGListType

8 from pyangbind.lib.yangtypes import YANGDynClass

9 from pyangbind.lib.yangtypes import ReferenceType

10 from pyangbind.lib.yangtypes import YANGBinary

11 from pyangbind.lib.yangtypes import YANGBitsType

12 from pyangbind.lib.base import PybindBase

13 from collections import OrderedDict

14 from decimal import Decimal

15

16 import builtins as __builtin__

17 long = int

18 class additional_info(PybindBase):

19 """

20 This class was auto-generated by the PythonClass plugin for PYANG

21 from YANG module additional-info - based on the path /additional-info. Each member element of

22 the container is represented as a class variable - with a specific

23 YANG type.

24 """

25 _pyangbind_elements = {}

26

27

28

29 class alarm(PybindBase):

30 """

31 This class was auto-generated by the PythonClass plugin for PYANG

32 from YANG module alarm - based on the path /alarm. Each member element of

33 the container is represented as a class variable - with a specific

34 YANG type.

35 """

36 _pyangbind_elements = {}

37

38

39

40 class alternative_images(PybindBase):

41 """

42 This class was auto-generated by the PythonClass plugin for PYANG

43 from YANG module alternative-images - based on the path /alternative-images. Each member element of

44 the container is represented as a class variable - with a specific

45 YANG type.

46 """

47 _pyangbind_elements = {}

48

49

50

51 class cloud_init(PybindBase):

52 """

53 This class was auto-generated by the PythonClass plugin for PYANG

54 from YANG module cloud-init - based on the path /cloud-init. Each member element of

55 the container is represented as a class variable - with a specific

56 YANG type.

57 """

58 _pyangbind_elements = {}

59

60

61

62 class common_augments(PybindBase):

63 """

64 This class was auto-generated by the PythonClass plugin for PYANG

65 from YANG module common-augments - based on the path /common-augments. Each member element of

66 the container is represented as a class variable - with a specific

67 YANG type.

68 """

69 _pyangbind_elements = {}

70

71

72

73 class day1_2(PybindBase):

74 """

75 This class was auto-generated by the PythonClass plugin for PYANG

76 from YANG module day1-2 - based on the path /day1-2. Each member element of

77 the container is represented as a class variable - with a specific

78 YANG type.

79 """

80 _pyangbind_elements = {}

81

82

83

84 class epa(PybindBase):

85 """

86 This class was auto-generated by the PythonClass plugin for PYANG

87 from YANG module epa - based on the path /epa. Each member element of

88 the container is represented as a class variable - with a specific

89 YANG type.

90 """

91 _pyangbind_elements = {}

92

93

94

95 class exporters(PybindBase):

96 """

97 This class was auto-generated by the PythonClass plugin for PYANG

98 from YANG module exporters - based on the path /exporters. Each member element of

99 the container is represented as a class variable - with a specific

100 YANG type.

101 """

102 _pyangbind_elements = {}

103

104

105

106 class healing(PybindBase):

107 """

108 This class was auto-generated by the PythonClass plugin for PYANG

109 from YANG module healing - based on the path /healing. Each member element of

110 the container is represented as a class variable - with a specific

111 YANG type.

112 """

113 _pyangbind_elements = {}

114

115

116

117 class interface(PybindBase):

118 """

119 This class was auto-generated by the PythonClass plugin for PYANG

120 from YANG module interface - based on the path /interface. Each member element of

121 the container is represented as a class variable - with a specific

122 YANG type.

123 """

124 _pyangbind_elements = {}

125

126

127

128 class ip_profiles(PybindBase):

129 """

130 This class was auto-generated by the PythonClass plugin for PYANG

131 from YANG module ip-profiles - based on the path /ip-profiles. Each member element of

132 the container is represented as a class variable - with a specific

133 YANG type.

134 """

135 _pyangbind_elements = {}

136

137

138

139 class kdu(PybindBase):

140 """

141 This class was auto-generated by the PythonClass plugin for PYANG

142 from YANG module kdu - based on the path /kdu. Each member element of

143 the container is represented as a class variable - with a specific

144 YANG type.

145 """

146 _pyangbind_elements = {}

147

148

149

150 class mgmt_interface(PybindBase):

151 """

152 This class was auto-generated by the PythonClass plugin for PYANG

153 from YANG module mgmt-interface - based on the path /mgmt-interface. Each member element of

154 the container is represented as a class variable - with a specific

155 YANG type.

156 """

157 _pyangbind_elements = {}

158

159

160

161 class ns_configuration(PybindBase):

162 """

163 This class was auto-generated by the PythonClass plugin for PYANG

164 from YANG module ns-configuration - based on the path /ns-configuration. Each member element of

165 the container is represented as a class variable - with a specific

166 YANG type.

167 """

168 _pyangbind_elements = {}

169

170

171

172 class ns_various(PybindBase):

173 """

174 This class was auto-generated by the PythonClass plugin for PYANG

175 from YANG module ns-various - based on the path /ns-various. Each member element of

176 the container is represented as a class variable - with a specific

177 YANG type.

178 """

179 _pyangbind_elements = {}

180

181

182

183 class ns_vld(PybindBase):

184 """

185 This class was auto-generated by the PythonClass plugin for PYANG

186 from YANG module ns-vld - based on the path /ns-vld. Each member element of

187 the container is represented as a class variable - with a specific

188 YANG type.

189 """

190 _pyangbind_elements = {}

191

192

193

194 class persistent_storage(PybindBase):

195 """

196 This class was auto-generated by the PythonClass plugin for PYANG

197 from YANG module persistent-storage - based on the path /persistent-storage. Each member element of

198 the container is represented as a class variable - with a specific

199 YANG type.

200 """

201 _pyangbind_elements = {}

202

203

204

205 class scaling(PybindBase):

206 """

207 This class was auto-generated by the PythonClass plugin for PYANG

208 from YANG module scaling - based on the path /scaling. Each member element of

209 the container is represented as a class variable - with a specific

210 YANG type.

211 """

212 _pyangbind_elements = {}

213

214

215

216 class various(PybindBase):

217 """

218 This class was auto-generated by the PythonClass plugin for PYANG

219 from YANG module various - based on the path /various. Each member element of

220 the container is represented as a class variable - with a specific

221 YANG type.

222 """

223 _pyangbind_elements = {}

224

225

226

227 class vip(PybindBase):

228 """

229 This class was auto-generated by the PythonClass plugin for PYANG

230 from YANG module vip - based on the path /vip. Each member element of

231 the container is represented as a class variable - with a specific

232 YANG type.

233 """

234 _pyangbind_elements = {}

235

236

237

238 class vnffgd(PybindBase):

239 """

240 This class was auto-generated by the PythonClass plugin for PYANG

241 from YANG module vnffgd - based on the path /vnffgd. Each member element of

242 the container is represented as a class variable - with a specific

243 YANG type.

244 """

245 _pyangbind_elements = {}

246

247

248

249 class yc_network_interface_requirements_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_virtual_network_interface_requirement_network_interface_requirements(PybindBase):

250 """

251 This class was auto-generated by the PythonClass plugin for PYANG

252 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/vdu/int-cpd/virtual-network-interface-requirement/network-interface-requirements. Each member element of

253 the container is represented as a class variable - with a specific

254 YANG type.

255

256 YANG Description: The network interface requirements. An element from an

257 array of key-value pairs that articulate the network

258 interface deployment requirements.

259 """

260 __slots__ = ('_path_helper', '_extmethods', '__key','__value',)

261

262 _yang_name = 'network-interface-requirements'

263 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

264

265 _pybind_generated_by = 'container'

266

267 def __init__(self, *args, **kwargs):

268

269 self._path_helper = False

270

271 self._extmethods = False

272 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

273 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

274

275 load = kwargs.pop("load", None)

276 if args:

277 if len(args) > 1:

278 raise TypeError("cannot create a YANG container with >1 argument")

279 all_attr = True

280 for e in self._pyangbind_elements:

281 if not hasattr(args[0], e):

282 all_attr = False

283 break

284 if not all_attr:

285 raise ValueError("Supplied object did not have the correct attributes")

286 for e in self._pyangbind_elements:

287 nobj = getattr(args[0], e)

288 if nobj._changed() is False:

289 continue

290 setmethod = getattr(self, "_set_%s" % e)

291 if load is None:

292 setmethod(getattr(args[0], e))

293 else:

294 setmethod(getattr(args[0], e), load=load)

295

296 def _path(self):

297 if hasattr(self, "_parent"):

298 return self._parent._path()+[self._yang_name]

299 else:

300 return ['nsd', 'vnfd', 'vdu', 'int-cpd', 'virtual-network-interface-requirement', 'network-interface-requirements']

301

302 def _get_key(self):

303 """

304 Getter method for key, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/virtual_network_interface_requirement/network_interface_requirements/key (string)

305 """

306 return self.__key

307

308 def _set_key(self, v, load=False):

309 """

310 Setter method for key, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/virtual_network_interface_requirement/network_interface_requirements/key (string)

311 If this variable is read-only (config: false) in the

312 source YANG file, then _set_key is considered as a private

313 method. Backends looking to populate this variable should

314 do so via calling thisObj._set_key() directly.

315 """

316 parent = getattr(self, "_parent", None)

317 if parent is not None and load is False:

318 raise AttributeError("Cannot set keys directly when" +

319 " within an instantiated list")

320

321 if hasattr(v, "_utype"):

322 v = v._utype(v)

323 try:

324 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

325 except (TypeError, ValueError):

326 raise ValueError({

327 'error-string': """key must be of a type compatible with string""",

328 'defined-type': "string",

329 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

330 })

331

332 self.__key = t

333 if hasattr(self, '_set'):

334 self._set()

335

336 def _unset_key(self):

337 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

338

339

340 def _get_value(self):

341 """

342 Getter method for value, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/virtual_network_interface_requirement/network_interface_requirements/value (string)

343 """

344 return self.__value

345

346 def _set_value(self, v, load=False):

347 """

348 Setter method for value, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/virtual_network_interface_requirement/network_interface_requirements/value (string)

349 If this variable is read-only (config: false) in the

350 source YANG file, then _set_value is considered as a private

351 method. Backends looking to populate this variable should

352 do so via calling thisObj._set_value() directly.

353 """

354 if hasattr(v, "_utype"):

355 v = v._utype(v)

356 try:

357 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

358 except (TypeError, ValueError):

359 raise ValueError({

360 'error-string': """value must be of a type compatible with string""",

361 'defined-type': "string",

362 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

363 })

364

365 self.__value = t

366 if hasattr(self, '_set'):

367 self._set()

368

369 def _unset_value(self):

370 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

371

372 key = __builtin__.property(_get_key, _set_key)

373 value = __builtin__.property(_get_value, _set_value)

374

375

376 _pyangbind_elements = OrderedDict([('key', key), ('value', value), ])

377

378

379 class yc_virtual_network_interface_requirement_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_virtual_network_interface_requirement(PybindBase):

380 """

381 This class was auto-generated by the PythonClass plugin for PYANG

382 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/vdu/int-cpd/virtual-network-interface-requirement. Each member element of

383 the container is represented as a class variable - with a specific

384 YANG type.

385

386 YANG Description: Specifies requirements on a virtual network interface

387 realising the CPs instantiated from this CPD.

388 """

389 __slots__ = ('_path_helper', '_extmethods', '__name','__description','__support_mandatory','__network_interface_requirements',)

390

391 _yang_name = 'virtual-network-interface-requirement'

392 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

393

394 _pybind_generated_by = 'container'

395

396 def __init__(self, *args, **kwargs):

397

398 self._path_helper = False

399

400 self._extmethods = False

401 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

402 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

403 self.__support_mandatory = YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="support-mandatory", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

404 self.__network_interface_requirements = YANGDynClass(base=YANGListType("key",yc_network_interface_requirements_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_virtual_network_interface_requirement_network_interface_requirements, yang_name="network-interface-requirements", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="network-interface-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

405

406 load = kwargs.pop("load", None)

407 if args:

408 if len(args) > 1:

409 raise TypeError("cannot create a YANG container with >1 argument")

410 all_attr = True

411 for e in self._pyangbind_elements:

412 if not hasattr(args[0], e):

413 all_attr = False

414 break

415 if not all_attr:

416 raise ValueError("Supplied object did not have the correct attributes")

417 for e in self._pyangbind_elements:

418 nobj = getattr(args[0], e)

419 if nobj._changed() is False:

420 continue

421 setmethod = getattr(self, "_set_%s" % e)

422 if load is None:

423 setmethod(getattr(args[0], e))

424 else:

425 setmethod(getattr(args[0], e), load=load)

426

427 def _path(self):

428 if hasattr(self, "_parent"):

429 return self._parent._path()+[self._yang_name]

430 else:

431 return ['nsd', 'vnfd', 'vdu', 'int-cpd', 'virtual-network-interface-requirement']

432

433 def _get_name(self):

434 """

435 Getter method for name, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/virtual_network_interface_requirement/name (string)

436

437 YANG Description: Provides a human readable name for the requirement.

438 """

439 return self.__name

440

441 def _set_name(self, v, load=False):

442 """

443 Setter method for name, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/virtual_network_interface_requirement/name (string)

444 If this variable is read-only (config: false) in the

445 source YANG file, then _set_name is considered as a private

446 method. Backends looking to populate this variable should

447 do so via calling thisObj._set_name() directly.

448

449 YANG Description: Provides a human readable name for the requirement.

450 """

451 parent = getattr(self, "_parent", None)

452 if parent is not None and load is False:

453 raise AttributeError("Cannot set keys directly when" +

454 " within an instantiated list")

455

456 if hasattr(v, "_utype"):

457 v = v._utype(v)

458 try:

459 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

460 except (TypeError, ValueError):

461 raise ValueError({

462 'error-string': """name must be of a type compatible with string""",

463 'defined-type': "string",

464 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

465 })

466

467 self.__name = t

468 if hasattr(self, '_set'):

469 self._set()

470

471 def _unset_name(self):

472 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

473

474

475 def _get_description(self):

476 """

477 Getter method for description, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/virtual_network_interface_requirement/description (string)

478

479 YANG Description: Provides a human readable description of the requirement.

480 """

481 return self.__description

482

483 def _set_description(self, v, load=False):

484 """

485 Setter method for description, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/virtual_network_interface_requirement/description (string)

486 If this variable is read-only (config: false) in the

487 source YANG file, then _set_description is considered as a private

488 method. Backends looking to populate this variable should

489 do so via calling thisObj._set_description() directly.

490

491 YANG Description: Provides a human readable description of the requirement.

492 """

493 if hasattr(v, "_utype"):

494 v = v._utype(v)

495 try:

496 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

497 except (TypeError, ValueError):

498 raise ValueError({

499 'error-string': """description must be of a type compatible with string""",

500 'defined-type': "string",

501 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

502 })

503

504 self.__description = t

505 if hasattr(self, '_set'):

506 self._set()

507

508 def _unset_description(self):

509 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

510

511

512 def _get_support_mandatory(self):

513 """

514 Getter method for support_mandatory, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/virtual_network_interface_requirement/support_mandatory (boolean)

515

516 YANG Description: Indicates whether fulfilling the constraint is

517 mandatory (true) for successful operation or desirable

518(false).

519 """

520 return self.__support_mandatory

521

522 def _set_support_mandatory(self, v, load=False):

523 """

524 Setter method for support_mandatory, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/virtual_network_interface_requirement/support_mandatory (boolean)

525 If this variable is read-only (config: false) in the

526 source YANG file, then _set_support_mandatory is considered as a private

527 method. Backends looking to populate this variable should

528 do so via calling thisObj._set_support_mandatory() directly.

529

530 YANG Description: Indicates whether fulfilling the constraint is

531 mandatory (true) for successful operation or desirable

532(false).

533 """

534 if hasattr(v, "_utype"):

535 v = v._utype(v)

536 try:

537 t = YANGDynClass(v,base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="support-mandatory", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

538 except (TypeError, ValueError):

539 raise ValueError({

540 'error-string': """support_mandatory must be of a type compatible with boolean""",

541 'defined-type': "boolean",

542 'generated-type': """YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="support-mandatory", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)""",

543 })

544

545 self.__support_mandatory = t

546 if hasattr(self, '_set'):

547 self._set()

548

549 def _unset_support_mandatory(self):

550 self.__support_mandatory = YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="support-mandatory", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

551

552

553 def _get_network_interface_requirements(self):

554 """

555 Getter method for network_interface_requirements, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/virtual_network_interface_requirement/network_interface_requirements (list)

556

557 YANG Description: The network interface requirements. An element from an

558 array of key-value pairs that articulate the network

559 interface deployment requirements.

560 """

561 return self.__network_interface_requirements

562

563 def _set_network_interface_requirements(self, v, load=False):

564 """

565 Setter method for network_interface_requirements, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/virtual_network_interface_requirement/network_interface_requirements (list)

566 If this variable is read-only (config: false) in the

567 source YANG file, then _set_network_interface_requirements is considered as a private

568 method. Backends looking to populate this variable should

569 do so via calling thisObj._set_network_interface_requirements() directly.

570

571 YANG Description: The network interface requirements. An element from an

572 array of key-value pairs that articulate the network

573 interface deployment requirements.

574 """

575 if hasattr(v, "_utype"):

576 v = v._utype(v)

577 try:

578 t = YANGDynClass(v,base=YANGListType("key",yc_network_interface_requirements_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_virtual_network_interface_requirement_network_interface_requirements, yang_name="network-interface-requirements", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="network-interface-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

579 except (TypeError, ValueError):

580 raise ValueError({

581 'error-string': """network_interface_requirements must be of a type compatible with list""",

582 'defined-type': "list",

583 'generated-type': """YANGDynClass(base=YANGListType("key",yc_network_interface_requirements_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_virtual_network_interface_requirement_network_interface_requirements, yang_name="network-interface-requirements", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="network-interface-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

584 })

585

586 self.__network_interface_requirements = t

587 if hasattr(self, '_set'):

588 self._set()

589

590 def _unset_network_interface_requirements(self):

591 self.__network_interface_requirements = YANGDynClass(base=YANGListType("key",yc_network_interface_requirements_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_virtual_network_interface_requirement_network_interface_requirements, yang_name="network-interface-requirements", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="network-interface-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

592

593 name = __builtin__.property(_get_name, _set_name)

594 description = __builtin__.property(_get_description, _set_description)

595 support_mandatory = __builtin__.property(_get_support_mandatory, _set_support_mandatory)

596 network_interface_requirements = __builtin__.property(_get_network_interface_requirements, _set_network_interface_requirements)

597

598

599 _pyangbind_elements = OrderedDict([('name', name), ('description', description), ('support_mandatory', support_mandatory), ('network_interface_requirements', network_interface_requirements), ])

600

601

602 class yc_l2_address_data_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_protocol_address_data_l2_address_data(PybindBase):

603 """

604 This class was auto-generated by the PythonClass plugin for PYANG

605 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/vdu/int-cpd/protocol/address-data/l2-address-data. Each member element of

606 the container is represented as a class variable - with a specific

607 YANG type.

608

609 YANG Description: Provides the information on the MAC addresses to be

610 assigned to the CP(s) instantiated from the parent CPD.

611 Shall be present when the addressType is MAC address.

612 """

613 __slots__ = ('_path_helper', '_extmethods', '__mac_address_assignment',)

614

615 _yang_name = 'l2-address-data'

616 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

617

618 _pybind_generated_by = 'container'

619

620 def __init__(self, *args, **kwargs):

621

622 self._path_helper = False

623

624 self._extmethods = False

625 self.__mac_address_assignment = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="mac-address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

626

627 load = kwargs.pop("load", None)

628 if args:

629 if len(args) > 1:

630 raise TypeError("cannot create a YANG container with >1 argument")

631 all_attr = True

632 for e in self._pyangbind_elements:

633 if not hasattr(args[0], e):

634 all_attr = False

635 break

636 if not all_attr:

637 raise ValueError("Supplied object did not have the correct attributes")

638 for e in self._pyangbind_elements:

639 nobj = getattr(args[0], e)

640 if nobj._changed() is False:

641 continue

642 setmethod = getattr(self, "_set_%s" % e)

643 if load is None:

644 setmethod(getattr(args[0], e))

645 else:

646 setmethod(getattr(args[0], e), load=load)

647

648 def _path(self):

649 if hasattr(self, "_parent"):

650 return self._parent._path()+[self._yang_name]

651 else:

652 return ['nsd', 'vnfd', 'vdu', 'int-cpd', 'protocol', 'address-data', 'l2-address-data']

653

654 def _get_mac_address_assignment(self):

655 """

656 Getter method for mac_address_assignment, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/protocol/address_data/l2_address_data/mac_address_assignment (boolean)

657

658 YANG Description: Specify if the MAC address assignment is the

659 responsibility of management and orchestration function

660 or not. If it is set to True, it is the management and

661 orchestration function responsibility. If it is set to

662 False, it will be provided by an external entity,

663 e.g. OSS/BSS.

664 """

665 return self.__mac_address_assignment

666

667 def _set_mac_address_assignment(self, v, load=False):

668 """

669 Setter method for mac_address_assignment, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/protocol/address_data/l2_address_data/mac_address_assignment (boolean)

670 If this variable is read-only (config: false) in the

671 source YANG file, then _set_mac_address_assignment is considered as a private

672 method. Backends looking to populate this variable should

673 do so via calling thisObj._set_mac_address_assignment() directly.

674

675 YANG Description: Specify if the MAC address assignment is the

676 responsibility of management and orchestration function

677 or not. If it is set to True, it is the management and

678 orchestration function responsibility. If it is set to

679 False, it will be provided by an external entity,

680 e.g. OSS/BSS.

681 """

682 if hasattr(v, "_utype"):

683 v = v._utype(v)

684 try:

685 t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="mac-address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

686 except (TypeError, ValueError):

687 raise ValueError({

688 'error-string': """mac_address_assignment must be of a type compatible with boolean""",

689 'defined-type': "boolean",

690 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="mac-address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)""",

691 })

692

693 self.__mac_address_assignment = t

694 if hasattr(self, '_set'):

695 self._set()

696

697 def _unset_mac_address_assignment(self):

698 self.__mac_address_assignment = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="mac-address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

699

700 mac_address_assignment = __builtin__.property(_get_mac_address_assignment, _set_mac_address_assignment)

701

702

703 _pyangbind_elements = OrderedDict([('mac_address_assignment', mac_address_assignment), ])

704

705

706 class yc_l3_address_data_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_protocol_address_data_l3_address_data(PybindBase):

707 """

708 This class was auto-generated by the PythonClass plugin for PYANG

709 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/vdu/int-cpd/protocol/address-data/l3-address-data. Each member element of

710 the container is represented as a class variable - with a specific

711 YANG type.

712 """

713 __slots__ = ('_path_helper', '_extmethods', '__ip_address_assignment','__floating_ip_activated','__ip_address_type','__number_of_ip_addresses',)

714

715 _yang_name = 'l3-address-data'

716 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

717

718 _pybind_generated_by = 'container'

719

720 def __init__(self, *args, **kwargs):

721

722 self._path_helper = False

723

724 self._extmethods = False

725 self.__ip_address_assignment = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="ip-address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

726 self.__floating_ip_activated = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="floating-ip-activated", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

727 self.__ip_address_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), is_leaf=True, yang_name="ip-address-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

728 self.__number_of_ip_addresses = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="number-of-ip-addresses", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

729

730 load = kwargs.pop("load", None)

731 if args:

732 if len(args) > 1:

733 raise TypeError("cannot create a YANG container with >1 argument")

734 all_attr = True

735 for e in self._pyangbind_elements:

736 if not hasattr(args[0], e):

737 all_attr = False

738 break

739 if not all_attr:

740 raise ValueError("Supplied object did not have the correct attributes")

741 for e in self._pyangbind_elements:

742 nobj = getattr(args[0], e)

743 if nobj._changed() is False:

744 continue

745 setmethod = getattr(self, "_set_%s" % e)

746 if load is None:

747 setmethod(getattr(args[0], e))

748 else:

749 setmethod(getattr(args[0], e), load=load)

750

751 def _path(self):

752 if hasattr(self, "_parent"):

753 return self._parent._path()+[self._yang_name]

754 else:

755 return ['nsd', 'vnfd', 'vdu', 'int-cpd', 'protocol', 'address-data', 'l3-address-data']

756

757 def _get_ip_address_assignment(self):

758 """

759 Getter method for ip_address_assignment, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/protocol/address_data/l3_address_data/ip_address_assignment (boolean)

760

761 YANG Description: Specify if the address assignment is the responsibility

762 of management and orchestration function or not. If it

763 is set to True, it is the management and orchestration

764 function responsibility.

765 """

766 return self.__ip_address_assignment

767

768 def _set_ip_address_assignment(self, v, load=False):

769 """

770 Setter method for ip_address_assignment, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/protocol/address_data/l3_address_data/ip_address_assignment (boolean)

771 If this variable is read-only (config: false) in the

772 source YANG file, then _set_ip_address_assignment is considered as a private

773 method. Backends looking to populate this variable should

774 do so via calling thisObj._set_ip_address_assignment() directly.

775

776 YANG Description: Specify if the address assignment is the responsibility

777 of management and orchestration function or not. If it

778 is set to True, it is the management and orchestration

779 function responsibility.

780 """

781 if hasattr(v, "_utype"):

782 v = v._utype(v)

783 try:

784 t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="ip-address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

785 except (TypeError, ValueError):

786 raise ValueError({

787 'error-string': """ip_address_assignment must be of a type compatible with boolean""",

788 'defined-type': "boolean",

789 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="ip-address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)""",

790 })

791

792 self.__ip_address_assignment = t

793 if hasattr(self, '_set'):

794 self._set()

795

796 def _unset_ip_address_assignment(self):

797 self.__ip_address_assignment = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="ip-address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

798

799

800 def _get_floating_ip_activated(self):

801 """

802 Getter method for floating_ip_activated, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/protocol/address_data/l3_address_data/floating_ip_activated (boolean)

803

804 YANG Description: Specify if the floating IP scheme is activated on the CP

805 or not.

806 """

807 return self.__floating_ip_activated

808

809 def _set_floating_ip_activated(self, v, load=False):

810 """

811 Setter method for floating_ip_activated, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/protocol/address_data/l3_address_data/floating_ip_activated (boolean)

812 If this variable is read-only (config: false) in the

813 source YANG file, then _set_floating_ip_activated is considered as a private

814 method. Backends looking to populate this variable should

815 do so via calling thisObj._set_floating_ip_activated() directly.

816

817 YANG Description: Specify if the floating IP scheme is activated on the CP

818 or not.

819 """

820 if hasattr(v, "_utype"):

821 v = v._utype(v)

822 try:

823 t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="floating-ip-activated", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

824 except (TypeError, ValueError):

825 raise ValueError({

826 'error-string': """floating_ip_activated must be of a type compatible with boolean""",

827 'defined-type': "boolean",

828 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="floating-ip-activated", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)""",

829 })

830

831 self.__floating_ip_activated = t

832 if hasattr(self, '_set'):

833 self._set()

834

835 def _unset_floating_ip_activated(self):

836 self.__floating_ip_activated = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="floating-ip-activated", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

837

838

839 def _get_ip_address_type(self):

840 """

841 Getter method for ip_address_type, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/protocol/address_data/l3_address_data/ip_address_type (enumeration)

842

843 YANG Description: Define address type. The address type should be aligned

844 with the address type supported by the layerProtocol

845 attribute of the parent VnfExtCpd.

846 """

847 return self.__ip_address_type

848

849 def _set_ip_address_type(self, v, load=False):

850 """

851 Setter method for ip_address_type, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/protocol/address_data/l3_address_data/ip_address_type (enumeration)

852 If this variable is read-only (config: false) in the

853 source YANG file, then _set_ip_address_type is considered as a private

854 method. Backends looking to populate this variable should

855 do so via calling thisObj._set_ip_address_type() directly.

856

857 YANG Description: Define address type. The address type should be aligned

858 with the address type supported by the layerProtocol

859 attribute of the parent VnfExtCpd.

860 """

861 if hasattr(v, "_utype"):

862 v = v._utype(v)

863 try:

864 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), is_leaf=True, yang_name="ip-address-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

865 except (TypeError, ValueError):

866 raise ValueError({

867 'error-string': """ip_address_type must be of a type compatible with enumeration""",

868 'defined-type': "etsi-nfv-nsd:enumeration",

869 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), is_leaf=True, yang_name="ip-address-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)""",

870 })

871

872 self.__ip_address_type = t

873 if hasattr(self, '_set'):

874 self._set()

875

876 def _unset_ip_address_type(self):

877 self.__ip_address_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), is_leaf=True, yang_name="ip-address-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

878

879

880 def _get_number_of_ip_addresses(self):

881 """

882 Getter method for number_of_ip_addresses, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/protocol/address_data/l3_address_data/number_of_ip_addresses (uint32)

883

884 YANG Description: Minimum number of IP addresses to be assigned based on

885 this L3AddressData information element.

886 """

887 return self.__number_of_ip_addresses

888

889 def _set_number_of_ip_addresses(self, v, load=False):

890 """

891 Setter method for number_of_ip_addresses, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/protocol/address_data/l3_address_data/number_of_ip_addresses (uint32)

892 If this variable is read-only (config: false) in the

893 source YANG file, then _set_number_of_ip_addresses is considered as a private

894 method. Backends looking to populate this variable should

895 do so via calling thisObj._set_number_of_ip_addresses() directly.

896

897 YANG Description: Minimum number of IP addresses to be assigned based on

898 this L3AddressData information element.

899 """

900 if hasattr(v, "_utype"):

901 v = v._utype(v)

902 try:

903 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="number-of-ip-addresses", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

904 except (TypeError, ValueError):

905 raise ValueError({

906 'error-string': """number_of_ip_addresses must be of a type compatible with uint32""",

907 'defined-type': "uint32",

908 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="number-of-ip-addresses", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)""",

909 })

910

911 self.__number_of_ip_addresses = t

912 if hasattr(self, '_set'):

913 self._set()

914

915 def _unset_number_of_ip_addresses(self):

916 self.__number_of_ip_addresses = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="number-of-ip-addresses", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

917

918 ip_address_assignment = __builtin__.property(_get_ip_address_assignment, _set_ip_address_assignment)

919 floating_ip_activated = __builtin__.property(_get_floating_ip_activated, _set_floating_ip_activated)

920 ip_address_type = __builtin__.property(_get_ip_address_type, _set_ip_address_type)

921 number_of_ip_addresses = __builtin__.property(_get_number_of_ip_addresses, _set_number_of_ip_addresses)

922

923

924 _pyangbind_elements = OrderedDict([('ip_address_assignment', ip_address_assignment), ('floating_ip_activated', floating_ip_activated), ('ip_address_type', ip_address_type), ('number_of_ip_addresses', number_of_ip_addresses), ])

925

926

927 class yc_address_data_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_protocol_address_data(PybindBase):

928 """

929 This class was auto-generated by the PythonClass plugin for PYANG

930 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/vdu/int-cpd/protocol/address-data. Each member element of

931 the container is represented as a class variable - with a specific

932 YANG type.

933

934 YANG Description: Provides information on the addresses to be assigned to the

935 CP(s) instantiated from the CPD.

936 """

937 __slots__ = ('_path_helper', '_extmethods', '__type','__l2_address_data','__l3_address_data',)

938

939 _yang_name = 'address-data'

940 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

941

942 _pybind_generated_by = 'container'

943

944 def __init__(self, *args, **kwargs):

945

946 self._path_helper = False

947

948 self._extmethods = False

949 self.__type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

950 self.__l2_address_data = YANGDynClass(base=yc_l2_address_data_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_protocol_address_data_l2_address_data, is_container='container', yang_name="l2-address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

951 self.__l3_address_data = YANGDynClass(base=yc_l3_address_data_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_protocol_address_data_l3_address_data, is_container='container', yang_name="l3-address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

952

953 load = kwargs.pop("load", None)

954 if args:

955 if len(args) > 1:

956 raise TypeError("cannot create a YANG container with >1 argument")

957 all_attr = True

958 for e in self._pyangbind_elements:

959 if not hasattr(args[0], e):

960 all_attr = False

961 break

962 if not all_attr:

963 raise ValueError("Supplied object did not have the correct attributes")

964 for e in self._pyangbind_elements:

965 nobj = getattr(args[0], e)

966 if nobj._changed() is False:

967 continue

968 setmethod = getattr(self, "_set_%s" % e)

969 if load is None:

970 setmethod(getattr(args[0], e))

971 else:

972 setmethod(getattr(args[0], e), load=load)

973

974 def _path(self):

975 if hasattr(self, "_parent"):

976 return self._parent._path()+[self._yang_name]

977 else:

978 return ['nsd', 'vnfd', 'vdu', 'int-cpd', 'protocol', 'address-data']

979

980 def _get_type(self):

981 """

982 Getter method for type, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/protocol/address_data/type (identityref)

983

984 YANG Description: Describes the type of the address to be assigned to the

985 CP instantiated from the parent CPD.

986 Value:

987 • MAC address.

988 • IP address.

989 • Etc.

990 The content type shall be aligned with the address type

991 supported by the layerProtocol attribute of the parent

992 CPD.

993 """

994 return self.__type

995

996 def _set_type(self, v, load=False):

997 """

998 Setter method for type, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/protocol/address_data/type (identityref)

999 If this variable is read-only (config: false) in the

1000 source YANG file, then _set_type is considered as a private

1001 method. Backends looking to populate this variable should

1002 do so via calling thisObj._set_type() directly.

1003

1004 YANG Description: Describes the type of the address to be assigned to the

1005 CP instantiated from the parent CPD.

1006 Value:

1007 • MAC address.

1008 • IP address.

1009 • Etc.

1010 The content type shall be aligned with the address type

1011 supported by the layerProtocol attribute of the parent

1012 CPD.

1013 """

1014 parent = getattr(self, "_parent", None)

1015 if parent is not None and load is False:

1016 raise AttributeError("Cannot set keys directly when" +

1017 " within an instantiated list")

1018

1019 if hasattr(v, "_utype"):

1020 v = v._utype(v)

1021 try:

1022 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

1023 except (TypeError, ValueError):

1024 raise ValueError({

1025 'error-string': """type must be of a type compatible with identityref""",

1026 'defined-type': "etsi-nfv-nsd:identityref",

1027 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)""",

1028 })

1029

1030 self.__type = t

1031 if hasattr(self, '_set'):

1032 self._set()

1033

1034 def _unset_type(self):

1035 self.__type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

1036

1037

1038 def _get_l2_address_data(self):

1039 """

1040 Getter method for l2_address_data, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/protocol/address_data/l2_address_data (container)

1041

1042 YANG Description: Provides the information on the MAC addresses to be

1043 assigned to the CP(s) instantiated from the parent CPD.

1044 Shall be present when the addressType is MAC address.

1045 """

1046 return self.__l2_address_data

1047

1048 def _set_l2_address_data(self, v, load=False):

1049 """

1050 Setter method for l2_address_data, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/protocol/address_data/l2_address_data (container)

1051 If this variable is read-only (config: false) in the

1052 source YANG file, then _set_l2_address_data is considered as a private

1053 method. Backends looking to populate this variable should

1054 do so via calling thisObj._set_l2_address_data() directly.

1055

1056 YANG Description: Provides the information on the MAC addresses to be

1057 assigned to the CP(s) instantiated from the parent CPD.

1058 Shall be present when the addressType is MAC address.

1059 """

1060 if hasattr(v, "_utype"):

1061 v = v._utype(v)

1062 try:

1063 t = YANGDynClass(v,base=yc_l2_address_data_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_protocol_address_data_l2_address_data, is_container='container', yang_name="l2-address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

1064 except (TypeError, ValueError):

1065 raise ValueError({

1066 'error-string': """l2_address_data must be of a type compatible with container""",

1067 'defined-type': "container",

1068 'generated-type': """YANGDynClass(base=yc_l2_address_data_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_protocol_address_data_l2_address_data, is_container='container', yang_name="l2-address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

1069 })

1070

1071 self.__l2_address_data = t

1072 if hasattr(self, '_set'):

1073 self._set()

1074

1075 def _unset_l2_address_data(self):

1076 self.__l2_address_data = YANGDynClass(base=yc_l2_address_data_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_protocol_address_data_l2_address_data, is_container='container', yang_name="l2-address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

1077

1078

1079 def _get_l3_address_data(self):

1080 """

1081 Getter method for l3_address_data, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/protocol/address_data/l3_address_data (container)

1082 """

1083 return self.__l3_address_data

1084

1085 def _set_l3_address_data(self, v, load=False):

1086 """

1087 Setter method for l3_address_data, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/protocol/address_data/l3_address_data (container)

1088 If this variable is read-only (config: false) in the

1089 source YANG file, then _set_l3_address_data is considered as a private

1090 method. Backends looking to populate this variable should

1091 do so via calling thisObj._set_l3_address_data() directly.

1092 """

1093 if hasattr(v, "_utype"):

1094 v = v._utype(v)

1095 try:

1096 t = YANGDynClass(v,base=yc_l3_address_data_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_protocol_address_data_l3_address_data, is_container='container', yang_name="l3-address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

1097 except (TypeError, ValueError):

1098 raise ValueError({

1099 'error-string': """l3_address_data must be of a type compatible with container""",

1100 'defined-type': "container",

1101 'generated-type': """YANGDynClass(base=yc_l3_address_data_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_protocol_address_data_l3_address_data, is_container='container', yang_name="l3-address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

1102 })

1103

1104 self.__l3_address_data = t

1105 if hasattr(self, '_set'):

1106 self._set()

1107

1108 def _unset_l3_address_data(self):

1109 self.__l3_address_data = YANGDynClass(base=yc_l3_address_data_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_protocol_address_data_l3_address_data, is_container='container', yang_name="l3-address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

1110

1111 type = __builtin__.property(_get_type, _set_type)

1112 l2_address_data = __builtin__.property(_get_l2_address_data, _set_l2_address_data)

1113 l3_address_data = __builtin__.property(_get_l3_address_data, _set_l3_address_data)

1114

1115

1116 _pyangbind_elements = OrderedDict([('type', type), ('l2_address_data', l2_address_data), ('l3_address_data', l3_address_data), ])

1117

1118

1119 class yc_protocol_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_protocol(PybindBase):

1120 """

1121 This class was auto-generated by the PythonClass plugin for PYANG

1122 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/vdu/int-cpd/protocol. Each member element of

1123 the container is represented as a class variable - with a specific

1124 YANG type.

1125

1126 YANG Description: Identifies the protocol layering information the CP uses for

1127 connectivity purposes and associated information. There shall

1128 be one cpProtocol for each layer protocol as indicated by the

1129 attribute layerProtocol. When a PnfExtCpd as defined in ETSI

1130 GS NFV-IFA 014 [i.8] is inherited from this Cpd, the

1131 cardinality is set to 0.

1132 """

1133 __slots__ = ('_path_helper', '_extmethods', '__associated_layer_protocol','__address_data',)

1134

1135 _yang_name = 'protocol'

1136 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

1137

1138 _pybind_generated_by = 'container'

1139

1140 def __init__(self, *args, **kwargs):

1141

1142 self._path_helper = False

1143

1144 self._extmethods = False

1145 self.__associated_layer_protocol = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="associated-layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

1146 self.__address_data = YANGDynClass(base=YANGListType("type",yc_address_data_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_protocol_address_data, yang_name="address-data", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='type', extensions=None), is_container='list', yang_name="address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

1147

1148 load = kwargs.pop("load", None)

1149 if args:

1150 if len(args) > 1:

1151 raise TypeError("cannot create a YANG container with >1 argument")

1152 all_attr = True

1153 for e in self._pyangbind_elements:

1154 if not hasattr(args[0], e):

1155 all_attr = False

1156 break

1157 if not all_attr:

1158 raise ValueError("Supplied object did not have the correct attributes")

1159 for e in self._pyangbind_elements:

1160 nobj = getattr(args[0], e)

1161 if nobj._changed() is False:

1162 continue

1163 setmethod = getattr(self, "_set_%s" % e)

1164 if load is None:

1165 setmethod(getattr(args[0], e))

1166 else:

1167 setmethod(getattr(args[0], e), load=load)

1168

1169 def _path(self):

1170 if hasattr(self, "_parent"):

1171 return self._parent._path()+[self._yang_name]

1172 else:

1173 return ['nsd', 'vnfd', 'vdu', 'int-cpd', 'protocol']

1174

1175 def _get_associated_layer_protocol(self):

1176 """

1177 Getter method for associated_layer_protocol, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/protocol/associated_layer_protocol (identityref)

1178

1179 YANG Description: One of the values of the attribute layerProtocol of the Cpd

1180 IE.

1181 """

1182 return self.__associated_layer_protocol

1183

1184 def _set_associated_layer_protocol(self, v, load=False):

1185 """

1186 Setter method for associated_layer_protocol, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/protocol/associated_layer_protocol (identityref)

1187 If this variable is read-only (config: false) in the

1188 source YANG file, then _set_associated_layer_protocol is considered as a private

1189 method. Backends looking to populate this variable should

1190 do so via calling thisObj._set_associated_layer_protocol() directly.

1191

1192 YANG Description: One of the values of the attribute layerProtocol of the Cpd

1193 IE.

1194 """

1195 parent = getattr(self, "_parent", None)

1196 if parent is not None and load is False:

1197 raise AttributeError("Cannot set keys directly when" +

1198 " within an instantiated list")

1199

1200 if hasattr(v, "_utype"):

1201 v = v._utype(v)

1202 try:

1203 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="associated-layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

1204 except (TypeError, ValueError):

1205 raise ValueError({

1206 'error-string': """associated_layer_protocol must be of a type compatible with identityref""",

1207 'defined-type': "etsi-nfv-nsd:identityref",

1208 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="associated-layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)""",

1209 })

1210

1211 self.__associated_layer_protocol = t

1212 if hasattr(self, '_set'):

1213 self._set()

1214

1215 def _unset_associated_layer_protocol(self):

1216 self.__associated_layer_protocol = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="associated-layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

1217

1218

1219 def _get_address_data(self):

1220 """

1221 Getter method for address_data, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/protocol/address_data (list)

1222

1223 YANG Description: Provides information on the addresses to be assigned to the

1224 CP(s) instantiated from the CPD.

1225 """

1226 return self.__address_data

1227

1228 def _set_address_data(self, v, load=False):

1229 """

1230 Setter method for address_data, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/protocol/address_data (list)

1231 If this variable is read-only (config: false) in the

1232 source YANG file, then _set_address_data is considered as a private

1233 method. Backends looking to populate this variable should

1234 do so via calling thisObj._set_address_data() directly.

1235

1236 YANG Description: Provides information on the addresses to be assigned to the

1237 CP(s) instantiated from the CPD.

1238 """

1239 if hasattr(v, "_utype"):

1240 v = v._utype(v)

1241 try:

1242 t = YANGDynClass(v,base=YANGListType("type",yc_address_data_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_protocol_address_data, yang_name="address-data", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='type', extensions=None), is_container='list', yang_name="address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

1243 except (TypeError, ValueError):

1244 raise ValueError({

1245 'error-string': """address_data must be of a type compatible with list""",

1246 'defined-type': "list",

1247 'generated-type': """YANGDynClass(base=YANGListType("type",yc_address_data_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_protocol_address_data, yang_name="address-data", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='type', extensions=None), is_container='list', yang_name="address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

1248 })

1249

1250 self.__address_data = t

1251 if hasattr(self, '_set'):

1252 self._set()

1253

1254 def _unset_address_data(self):

1255 self.__address_data = YANGDynClass(base=YANGListType("type",yc_address_data_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_protocol_address_data, yang_name="address-data", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='type', extensions=None), is_container='list', yang_name="address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

1256

1257 associated_layer_protocol = __builtin__.property(_get_associated_layer_protocol, _set_associated_layer_protocol)

1258 address_data = __builtin__.property(_get_address_data, _set_address_data)

1259

1260

1261 _pyangbind_elements = OrderedDict([('associated_layer_protocol', associated_layer_protocol), ('address_data', address_data), ])

1262

1263

1264 class yc_int_cpd_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd(PybindBase):

1265 """

1266 This class was auto-generated by the PythonClass plugin for PYANG

1267 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/vdu/int-cpd. Each member element of

1268 the container is represented as a class variable - with a specific

1269 YANG type.

1270

1271 YANG Description: A internal-connection-point element is a type of

1272 connection point and describes network connectivity

1273 between a VDU instance and an internal Virtual Link or

1274 an external connection point.

1275 """

1276 __slots__ = ('_path_helper', '_extmethods', '__int_virtual_link_desc','__bitrate_requirement','__virtual_network_interface_requirement','__nicio_requirements','__order','__id','__layer_protocol','__role','__description','__protocol','__trunk_mode','__security_group_rule_id',)

1277

1278 _yang_name = 'int-cpd'

1279 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

1280

1281 _pybind_generated_by = 'container'

1282

1283 def __init__(self, *args, **kwargs):

1284

1285 self._path_helper = False

1286

1287 self._extmethods = False

1288 self.__int_virtual_link_desc = YANGDynClass(base=str, is_leaf=True, yang_name="int-virtual-link-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

1289 self.__bitrate_requirement = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="bitrate-requirement", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

1290 self.__virtual_network_interface_requirement = YANGDynClass(base=YANGListType("name",yc_virtual_network_interface_requirement_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_virtual_network_interface_requirement, yang_name="virtual-network-interface-requirement", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="virtual-network-interface-requirement", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

1291 self.__nicio_requirements = YANGDynClass(base=str, is_leaf=True, yang_name="nicio-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

1292 self.__order = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)), is_leaf=False, yang_name="order", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

1293 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

1294 self.__layer_protocol = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},)), default=str("ethernet"), is_leaf=False, yang_name="layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

1295 self.__role = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="role", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

1296 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

1297 self.__protocol = YANGDynClass(base=YANGListType("associated_layer_protocol",yc_protocol_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_protocol, yang_name="protocol", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='associated-layer-protocol', extensions=None), is_container='list', yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

1298 self.__trunk_mode = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="trunk-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

1299 self.__security_group_rule_id = YANGDynClass(base=str, is_leaf=True, yang_name="security-group-rule-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

1300

1301 load = kwargs.pop("load", None)

1302 if args:

1303 if len(args) > 1:

1304 raise TypeError("cannot create a YANG container with >1 argument")

1305 all_attr = True

1306 for e in self._pyangbind_elements:

1307 if not hasattr(args[0], e):

1308 all_attr = False

1309 break

1310 if not all_attr:

1311 raise ValueError("Supplied object did not have the correct attributes")

1312 for e in self._pyangbind_elements:

1313 nobj = getattr(args[0], e)

1314 if nobj._changed() is False:

1315 continue

1316 setmethod = getattr(self, "_set_%s" % e)

1317 if load is None:

1318 setmethod(getattr(args[0], e))

1319 else:

1320 setmethod(getattr(args[0], e), load=load)

1321

1322 def _path(self):

1323 if hasattr(self, "_parent"):

1324 return self._parent._path()+[self._yang_name]

1325 else:

1326 return ['nsd', 'vnfd', 'vdu', 'int-cpd']

1327

1328 def _get_int_virtual_link_desc(self):

1329 """

1330 Getter method for int_virtual_link_desc, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/int_virtual_link_desc (leafref)

1331

1332 YANG Description: Reference of the internal VLD which this internal CPD

1333 connects to.

1334 """

1335 return self.__int_virtual_link_desc

1336

1337 def _set_int_virtual_link_desc(self, v, load=False):

1338 """

1339 Setter method for int_virtual_link_desc, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/int_virtual_link_desc (leafref)

1340 If this variable is read-only (config: false) in the

1341 source YANG file, then _set_int_virtual_link_desc is considered as a private

1342 method. Backends looking to populate this variable should

1343 do so via calling thisObj._set_int_virtual_link_desc() directly.

1344

1345 YANG Description: Reference of the internal VLD which this internal CPD

1346 connects to.

1347 """

1348 if hasattr(v, "_utype"):

1349 v = v._utype(v)

1350 try:

1351 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="int-virtual-link-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

1352 except (TypeError, ValueError):

1353 raise ValueError({

1354 'error-string': """int_virtual_link_desc must be of a type compatible with leafref""",

1355 'defined-type': "leafref",

1356 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="int-virtual-link-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

1357 })

1358

1359 self.__int_virtual_link_desc = t

1360 if hasattr(self, '_set'):

1361 self._set()

1362

1363 def _unset_int_virtual_link_desc(self):

1364 self.__int_virtual_link_desc = YANGDynClass(base=str, is_leaf=True, yang_name="int-virtual-link-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

1365

1366

1367 def _get_bitrate_requirement(self):

1368 """

1369 Getter method for bitrate_requirement, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/bitrate_requirement (uint64)

1370

1371 YANG Description: Bitrate requirement on this CP.

1372 """

1373 return self.__bitrate_requirement

1374

1375 def _set_bitrate_requirement(self, v, load=False):

1376 """

1377 Setter method for bitrate_requirement, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/bitrate_requirement (uint64)

1378 If this variable is read-only (config: false) in the

1379 source YANG file, then _set_bitrate_requirement is considered as a private

1380 method. Backends looking to populate this variable should

1381 do so via calling thisObj._set_bitrate_requirement() directly.

1382

1383 YANG Description: Bitrate requirement on this CP.

1384 """

1385 if hasattr(v, "_utype"):

1386 v = v._utype(v)

1387 try:

1388 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="bitrate-requirement", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

1389 except (TypeError, ValueError):

1390 raise ValueError({

1391 'error-string': """bitrate_requirement must be of a type compatible with uint64""",

1392 'defined-type': "uint64",

1393 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="bitrate-requirement", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)""",

1394 })

1395

1396 self.__bitrate_requirement = t

1397 if hasattr(self, '_set'):

1398 self._set()

1399

1400 def _unset_bitrate_requirement(self):

1401 self.__bitrate_requirement = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="bitrate-requirement", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

1402

1403

1404 def _get_virtual_network_interface_requirement(self):

1405 """

1406 Getter method for virtual_network_interface_requirement, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/virtual_network_interface_requirement (list)

1407

1408 YANG Description: Specifies requirements on a virtual network interface

1409 realising the CPs instantiated from this CPD.

1410 """

1411 return self.__virtual_network_interface_requirement

1412

1413 def _set_virtual_network_interface_requirement(self, v, load=False):

1414 """

1415 Setter method for virtual_network_interface_requirement, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/virtual_network_interface_requirement (list)

1416 If this variable is read-only (config: false) in the

1417 source YANG file, then _set_virtual_network_interface_requirement is considered as a private

1418 method. Backends looking to populate this variable should

1419 do so via calling thisObj._set_virtual_network_interface_requirement() directly.

1420

1421 YANG Description: Specifies requirements on a virtual network interface

1422 realising the CPs instantiated from this CPD.

1423 """

1424 if hasattr(v, "_utype"):

1425 v = v._utype(v)

1426 try:

1427 t = YANGDynClass(v,base=YANGListType("name",yc_virtual_network_interface_requirement_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_virtual_network_interface_requirement, yang_name="virtual-network-interface-requirement", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="virtual-network-interface-requirement", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

1428 except (TypeError, ValueError):

1429 raise ValueError({

1430 'error-string': """virtual_network_interface_requirement must be of a type compatible with list""",

1431 'defined-type': "list",

1432 'generated-type': """YANGDynClass(base=YANGListType("name",yc_virtual_network_interface_requirement_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_virtual_network_interface_requirement, yang_name="virtual-network-interface-requirement", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="virtual-network-interface-requirement", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

1433 })

1434

1435 self.__virtual_network_interface_requirement = t

1436 if hasattr(self, '_set'):

1437 self._set()

1438

1439 def _unset_virtual_network_interface_requirement(self):

1440 self.__virtual_network_interface_requirement = YANGDynClass(base=YANGListType("name",yc_virtual_network_interface_requirement_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_virtual_network_interface_requirement, yang_name="virtual-network-interface-requirement", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="virtual-network-interface-requirement", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

1441

1442

1443 def _get_nicio_requirements(self):

1444 """

1445 Getter method for nicio_requirements, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/nicio_requirements (leafref)

1446

1447 YANG Description: This references (couples) the CPD with any logical node I/O

1448 requirements (for network devices) that may have been

1449 created. Linking these attributes is necessary so that so

1450 that I/O requirements that need to be articulated at the

1451 logical node level can be associated with the network

1452 interface requirements associated with the CPD.

1453 """

1454 return self.__nicio_requirements

1455

1456 def _set_nicio_requirements(self, v, load=False):

1457 """

1458 Setter method for nicio_requirements, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/nicio_requirements (leafref)

1459 If this variable is read-only (config: false) in the

1460 source YANG file, then _set_nicio_requirements is considered as a private

1461 method. Backends looking to populate this variable should

1462 do so via calling thisObj._set_nicio_requirements() directly.

1463

1464 YANG Description: This references (couples) the CPD with any logical node I/O

1465 requirements (for network devices) that may have been

1466 created. Linking these attributes is necessary so that so

1467 that I/O requirements that need to be articulated at the

1468 logical node level can be associated with the network

1469 interface requirements associated with the CPD.

1470 """

1471 if hasattr(v, "_utype"):

1472 v = v._utype(v)

1473 try:

1474 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="nicio-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

1475 except (TypeError, ValueError):

1476 raise ValueError({

1477 'error-string': """nicio_requirements must be of a type compatible with leafref""",

1478 'defined-type': "leafref",

1479 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="nicio-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

1480 })

1481

1482 self.__nicio_requirements = t

1483 if hasattr(self, '_set'):

1484 self._set()

1485

1486 def _unset_nicio_requirements(self):

1487 self.__nicio_requirements = YANGDynClass(base=str, is_leaf=True, yang_name="nicio-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

1488

1489

1490 def _get_order(self):

1491 """

1492 Getter method for order, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/order (uint32)

1493

1494 YANG Description: The order of the NIC to be assigned on the compute

1495 instance (e.g. 2 for eth2).

1496

1497 Note: when binding more than one port to a single

1498 compute (aka multi vNICs) and ordering is desired, it

1499 is mandatory that all ports will be set with an order

1500 value. The order values shall represent a positive,

1501 arithmetic progression that starts with 0 (i.e. 0, 1,

1502 2,..., n).

1503

1504 If the property is not present, it shall be left to the

1505 VIM to assign a value when creating the instance.

1506 """

1507 return self.__order

1508

1509 def _set_order(self, v, load=False):

1510 """

1511 Setter method for order, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/order (uint32)

1512 If this variable is read-only (config: false) in the

1513 source YANG file, then _set_order is considered as a private

1514 method. Backends looking to populate this variable should

1515 do so via calling thisObj._set_order() directly.

1516

1517 YANG Description: The order of the NIC to be assigned on the compute

1518 instance (e.g. 2 for eth2).

1519

1520 Note: when binding more than one port to a single

1521 compute (aka multi vNICs) and ordering is desired, it

1522 is mandatory that all ports will be set with an order

1523 value. The order values shall represent a positive,

1524 arithmetic progression that starts with 0 (i.e. 0, 1,

1525 2,..., n).

1526

1527 If the property is not present, it shall be left to the

1528 VIM to assign a value when creating the instance.

1529 """

1530 if hasattr(v, "_utype"):

1531 v = v._utype(v)

1532 try:

1533 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)), is_leaf=False, yang_name="order", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

1534 except (TypeError, ValueError):

1535 raise ValueError({

1536 'error-string': """order must be of a type compatible with uint32""",

1537 'defined-type': "uint32",

1538 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)), is_leaf=False, yang_name="order", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)""",

1539 })

1540

1541 self.__order = t

1542 if hasattr(self, '_set'):

1543 self._set()

1544

1545 def _unset_order(self):

1546 self.__order = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)), is_leaf=False, yang_name="order", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

1547

1548

1549 def _get_id(self):

1550 """

1551 Getter method for id, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/id (string)

1552

1553 YANG Description: Identifier of this Cpd information element.

1554 """

1555 return self.__id

1556

1557 def _set_id(self, v, load=False):

1558 """

1559 Setter method for id, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/id (string)

1560 If this variable is read-only (config: false) in the

1561 source YANG file, then _set_id is considered as a private

1562 method. Backends looking to populate this variable should

1563 do so via calling thisObj._set_id() directly.

1564

1565 YANG Description: Identifier of this Cpd information element.

1566 """

1567 parent = getattr(self, "_parent", None)

1568 if parent is not None and load is False:

1569 raise AttributeError("Cannot set keys directly when" +

1570 " within an instantiated list")

1571

1572 if hasattr(v, "_utype"):

1573 v = v._utype(v)

1574 try:

1575 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

1576 except (TypeError, ValueError):

1577 raise ValueError({

1578 'error-string': """id must be of a type compatible with string""",

1579 'defined-type': "string",

1580 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

1581 })

1582

1583 self.__id = t

1584 if hasattr(self, '_set'):

1585 self._set()

1586

1587 def _unset_id(self):

1588 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

1589

1590

1591 def _get_layer_protocol(self):

1592 """

1593 Getter method for layer_protocol, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/layer_protocol (identityref)

1594

1595 YANG Description: Identifies a protocol that the connection points

1596 corresponding to the CPD support for connectivity purposes

1597(e.g. Ethernet, MPLS, ODU2, IPV4, IPV6, Pseudo-Wire, etc.).

1598 """

1599 return self.__layer_protocol

1600

1601 def _set_layer_protocol(self, v, load=False):

1602 """

1603 Setter method for layer_protocol, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/layer_protocol (identityref)

1604 If this variable is read-only (config: false) in the

1605 source YANG file, then _set_layer_protocol is considered as a private

1606 method. Backends looking to populate this variable should

1607 do so via calling thisObj._set_layer_protocol() directly.

1608

1609 YANG Description: Identifies a protocol that the connection points

1610 corresponding to the CPD support for connectivity purposes

1611(e.g. Ethernet, MPLS, ODU2, IPV4, IPV6, Pseudo-Wire, etc.).

1612 """

1613 if hasattr(v, "_utype"):

1614 v = v._utype(v)

1615 try:

1616 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},)), default=str("ethernet"), is_leaf=False, yang_name="layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

1617 except (TypeError, ValueError):

1618 raise ValueError({

1619 'error-string': """layer_protocol must be of a type compatible with identityref""",

1620 'defined-type': "etsi-nfv-nsd:identityref",

1621 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},)), default=str("ethernet"), is_leaf=False, yang_name="layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)""",

1622 })

1623

1624 self.__layer_protocol = t

1625 if hasattr(self, '_set'):

1626 self._set()

1627

1628 def _unset_layer_protocol(self):

1629 self.__layer_protocol = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},)), default=str("ethernet"), is_leaf=False, yang_name="layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

1630

1631

1632 def _get_role(self):

1633 """

1634 Getter method for role, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/role (identityref)

1635

1636 YANG Description: Identifies the role of the connection points

1637 corresponding to the CPD in the context of the traffic

1638 flow patterns in the VNF, PNF or NS. For example an NS with

1639 a tree flow pattern within the NS will have legal cpRoles

1640 of ROOT and LEAF.

1641 """

1642 return self.__role

1643

1644 def _set_role(self, v, load=False):

1645 """

1646 Setter method for role, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/role (identityref)

1647 If this variable is read-only (config: false) in the

1648 source YANG file, then _set_role is considered as a private

1649 method. Backends looking to populate this variable should

1650 do so via calling thisObj._set_role() directly.

1651

1652 YANG Description: Identifies the role of the connection points

1653 corresponding to the CPD in the context of the traffic

1654 flow patterns in the VNF, PNF or NS. For example an NS with

1655 a tree flow pattern within the NS will have legal cpRoles

1656 of ROOT and LEAF.

1657 """

1658 if hasattr(v, "_utype"):

1659 v = v._utype(v)

1660 try:

1661 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="role", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

1662 except (TypeError, ValueError):

1663 raise ValueError({

1664 'error-string': """role must be of a type compatible with identityref""",

1665 'defined-type': "etsi-nfv-nsd:identityref",

1666 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="role", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)""",

1667 })

1668

1669 self.__role = t

1670 if hasattr(self, '_set'):

1671 self._set()

1672

1673 def _unset_role(self):

1674 self.__role = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="role", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

1675

1676

1677 def _get_description(self):

1678 """

1679 Getter method for description, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/description (string)

1680

1681 YANG Description: Provides human-readable information on the purpose of the

1682 connection point (e.g. connection point for control plane

1683 traffic).

1684 """

1685 return self.__description

1686

1687 def _set_description(self, v, load=False):

1688 """

1689 Setter method for description, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/description (string)

1690 If this variable is read-only (config: false) in the

1691 source YANG file, then _set_description is considered as a private

1692 method. Backends looking to populate this variable should

1693 do so via calling thisObj._set_description() directly.

1694

1695 YANG Description: Provides human-readable information on the purpose of the

1696 connection point (e.g. connection point for control plane

1697 traffic).

1698 """

1699 if hasattr(v, "_utype"):

1700 v = v._utype(v)

1701 try:

1702 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

1703 except (TypeError, ValueError):

1704 raise ValueError({

1705 'error-string': """description must be of a type compatible with string""",

1706 'defined-type': "string",

1707 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

1708 })

1709

1710 self.__description = t

1711 if hasattr(self, '_set'):

1712 self._set()

1713

1714 def _unset_description(self):

1715 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

1716

1717

1718 def _get_protocol(self):

1719 """

1720 Getter method for protocol, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/protocol (list)

1721

1722 YANG Description: Identifies the protocol layering information the CP uses for

1723 connectivity purposes and associated information. There shall

1724 be one cpProtocol for each layer protocol as indicated by the

1725 attribute layerProtocol. When a PnfExtCpd as defined in ETSI

1726 GS NFV-IFA 014 [i.8] is inherited from this Cpd, the

1727 cardinality is set to 0.

1728 """

1729 return self.__protocol

1730

1731 def _set_protocol(self, v, load=False):

1732 """

1733 Setter method for protocol, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/protocol (list)

1734 If this variable is read-only (config: false) in the

1735 source YANG file, then _set_protocol is considered as a private

1736 method. Backends looking to populate this variable should

1737 do so via calling thisObj._set_protocol() directly.

1738

1739 YANG Description: Identifies the protocol layering information the CP uses for

1740 connectivity purposes and associated information. There shall

1741 be one cpProtocol for each layer protocol as indicated by the

1742 attribute layerProtocol. When a PnfExtCpd as defined in ETSI

1743 GS NFV-IFA 014 [i.8] is inherited from this Cpd, the

1744 cardinality is set to 0.

1745 """

1746 if hasattr(v, "_utype"):

1747 v = v._utype(v)

1748 try:

1749 t = YANGDynClass(v,base=YANGListType("associated_layer_protocol",yc_protocol_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_protocol, yang_name="protocol", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='associated-layer-protocol', extensions=None), is_container='list', yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

1750 except (TypeError, ValueError):

1751 raise ValueError({

1752 'error-string': """protocol must be of a type compatible with list""",

1753 'defined-type': "list",

1754 'generated-type': """YANGDynClass(base=YANGListType("associated_layer_protocol",yc_protocol_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_protocol, yang_name="protocol", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='associated-layer-protocol', extensions=None), is_container='list', yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

1755 })

1756

1757 self.__protocol = t

1758 if hasattr(self, '_set'):

1759 self._set()

1760

1761 def _unset_protocol(self):

1762 self.__protocol = YANGDynClass(base=YANGListType("associated_layer_protocol",yc_protocol_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd_protocol, yang_name="protocol", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='associated-layer-protocol', extensions=None), is_container='list', yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

1763

1764

1765 def _get_trunk_mode(self):

1766 """

1767 Getter method for trunk_mode, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/trunk_mode (boolean)

1768

1769 YANG Description: Information about whether the Cp instantiated from this CPD

1770 is in Trunk mode (802.1Q or other). When operating in

1771'trunk mode', the Cp is capable of carrying traffic for

1772 several VLANs. A cardinality of 0 implies that trunkMode

1773 is not configured for the Cp i.e. It is equivalent to

1774 Boolean value 'false'.

1775 """

1776 return self.__trunk_mode

1777

1778 def _set_trunk_mode(self, v, load=False):

1779 """

1780 Setter method for trunk_mode, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/trunk_mode (boolean)

1781 If this variable is read-only (config: false) in the

1782 source YANG file, then _set_trunk_mode is considered as a private

1783 method. Backends looking to populate this variable should

1784 do so via calling thisObj._set_trunk_mode() directly.

1785

1786 YANG Description: Information about whether the Cp instantiated from this CPD

1787 is in Trunk mode (802.1Q or other). When operating in

1788'trunk mode', the Cp is capable of carrying traffic for

1789 several VLANs. A cardinality of 0 implies that trunkMode

1790 is not configured for the Cp i.e. It is equivalent to

1791 Boolean value 'false'.

1792 """

1793 if hasattr(v, "_utype"):

1794 v = v._utype(v)

1795 try:

1796 t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="trunk-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

1797 except (TypeError, ValueError):

1798 raise ValueError({

1799 'error-string': """trunk_mode must be of a type compatible with boolean""",

1800 'defined-type': "boolean",

1801 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="trunk-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)""",

1802 })

1803

1804 self.__trunk_mode = t

1805 if hasattr(self, '_set'):

1806 self._set()

1807

1808 def _unset_trunk_mode(self):

1809 self.__trunk_mode = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="trunk-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

1810

1811

1812 def _get_security_group_rule_id(self):

1813 """

1814 Getter method for security_group_rule_id, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/security_group_rule_id (leafref)

1815

1816 YANG Description: Reference of the security group rules bound to this

1817 CPD.

1818 """

1819 return self.__security_group_rule_id

1820

1821 def _set_security_group_rule_id(self, v, load=False):

1822 """

1823 Setter method for security_group_rule_id, mapped from YANG variable /nsd/vnfd/vdu/int_cpd/security_group_rule_id (leafref)

1824 If this variable is read-only (config: false) in the

1825 source YANG file, then _set_security_group_rule_id is considered as a private

1826 method. Backends looking to populate this variable should

1827 do so via calling thisObj._set_security_group_rule_id() directly.

1828

1829 YANG Description: Reference of the security group rules bound to this

1830 CPD.

1831 """

1832 if hasattr(v, "_utype"):

1833 v = v._utype(v)

1834 try:

1835 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="security-group-rule-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

1836 except (TypeError, ValueError):

1837 raise ValueError({

1838 'error-string': """security_group_rule_id must be of a type compatible with leafref""",

1839 'defined-type': "leafref",

1840 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="security-group-rule-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

1841 })

1842

1843 self.__security_group_rule_id = t

1844 if hasattr(self, '_set'):

1845 self._set()

1846

1847 def _unset_security_group_rule_id(self):

1848 self.__security_group_rule_id = YANGDynClass(base=str, is_leaf=True, yang_name="security-group-rule-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

1849

1850 int_virtual_link_desc = __builtin__.property(_get_int_virtual_link_desc, _set_int_virtual_link_desc)

1851 bitrate_requirement = __builtin__.property(_get_bitrate_requirement, _set_bitrate_requirement)

1852 virtual_network_interface_requirement = __builtin__.property(_get_virtual_network_interface_requirement, _set_virtual_network_interface_requirement)

1853 nicio_requirements = __builtin__.property(_get_nicio_requirements, _set_nicio_requirements)

1854 order = __builtin__.property(_get_order, _set_order)

1855 id = __builtin__.property(_get_id, _set_id)

1856 layer_protocol = __builtin__.property(_get_layer_protocol, _set_layer_protocol)

1857 role = __builtin__.property(_get_role, _set_role)

1858 description = __builtin__.property(_get_description, _set_description)

1859 protocol = __builtin__.property(_get_protocol, _set_protocol)

1860 trunk_mode = __builtin__.property(_get_trunk_mode, _set_trunk_mode)

1861 security_group_rule_id = __builtin__.property(_get_security_group_rule_id, _set_security_group_rule_id)

1862

1863

1864 _pyangbind_elements = OrderedDict([('int_virtual_link_desc', int_virtual_link_desc), ('bitrate_requirement', bitrate_requirement), ('virtual_network_interface_requirement', virtual_network_interface_requirement), ('nicio_requirements', nicio_requirements), ('order', order), ('id', id), ('layer_protocol', layer_protocol), ('role', role), ('description', description), ('protocol', protocol), ('trunk_mode', trunk_mode), ('security_group_rule_id', security_group_rule_id), ])

1865

1866

1867 class yc_boot_order_etsi_nfv_nsd__nsd_vnfd_vdu_boot_order(PybindBase):

1868 """

1869 This class was auto-generated by the PythonClass plugin for PYANG

1870 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/vdu/boot-order. Each member element of

1871 the container is represented as a class variable - with a specific

1872 YANG type.

1873

1874 YANG Description: The key indicates the boot index (lowest index defines

1875 highest boot priority). The Value references a descriptor

1876 from which a valid boot device is created e.g.

1877 VirtualStorageDesc from which a VirtualStorage instance

1878 is created.

1879

1880 Editor's note: The boot-order node requires further

1881 study.

1882 """

1883 __slots__ = ('_path_helper', '_extmethods', '__key','__value',)

1884

1885 _yang_name = 'boot-order'

1886 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

1887

1888 _pybind_generated_by = 'container'

1889

1890 def __init__(self, *args, **kwargs):

1891

1892 self._path_helper = False

1893

1894 self._extmethods = False

1895 self.__key = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

1896 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

1897

1898 load = kwargs.pop("load", None)

1899 if args:

1900 if len(args) > 1:

1901 raise TypeError("cannot create a YANG container with >1 argument")

1902 all_attr = True

1903 for e in self._pyangbind_elements:

1904 if not hasattr(args[0], e):

1905 all_attr = False

1906 break

1907 if not all_attr:

1908 raise ValueError("Supplied object did not have the correct attributes")

1909 for e in self._pyangbind_elements:

1910 nobj = getattr(args[0], e)

1911 if nobj._changed() is False:

1912 continue

1913 setmethod = getattr(self, "_set_%s" % e)

1914 if load is None:

1915 setmethod(getattr(args[0], e))

1916 else:

1917 setmethod(getattr(args[0], e), load=load)

1918

1919 def _path(self):

1920 if hasattr(self, "_parent"):

1921 return self._parent._path()+[self._yang_name]

1922 else:

1923 return ['nsd', 'vnfd', 'vdu', 'boot-order']

1924

1925 def _get_key(self):

1926 """

1927 Getter method for key, mapped from YANG variable /nsd/vnfd/vdu/boot_order/key (uint32)

1928 """

1929 return self.__key

1930

1931 def _set_key(self, v, load=False):

1932 """

1933 Setter method for key, mapped from YANG variable /nsd/vnfd/vdu/boot_order/key (uint32)

1934 If this variable is read-only (config: false) in the

1935 source YANG file, then _set_key is considered as a private

1936 method. Backends looking to populate this variable should

1937 do so via calling thisObj._set_key() directly.

1938 """

1939 parent = getattr(self, "_parent", None)

1940 if parent is not None and load is False:

1941 raise AttributeError("Cannot set keys directly when" +

1942 " within an instantiated list")

1943

1944 if hasattr(v, "_utype"):

1945 v = v._utype(v)

1946 try:

1947 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

1948 except (TypeError, ValueError):

1949 raise ValueError({

1950 'error-string': """key must be of a type compatible with uint32""",

1951 'defined-type': "uint32",

1952 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)""",

1953 })

1954

1955 self.__key = t

1956 if hasattr(self, '_set'):

1957 self._set()

1958

1959 def _unset_key(self):

1960 self.__key = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

1961

1962

1963 def _get_value(self):

1964 """

1965 Getter method for value, mapped from YANG variable /nsd/vnfd/vdu/boot_order/value (leafref)

1966 """

1967 return self.__value

1968

1969 def _set_value(self, v, load=False):

1970 """

1971 Setter method for value, mapped from YANG variable /nsd/vnfd/vdu/boot_order/value (leafref)

1972 If this variable is read-only (config: false) in the

1973 source YANG file, then _set_value is considered as a private

1974 method. Backends looking to populate this variable should

1975 do so via calling thisObj._set_value() directly.

1976 """

1977 if hasattr(v, "_utype"):

1978 v = v._utype(v)

1979 try:

1980 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

1981 except (TypeError, ValueError):

1982 raise ValueError({

1983 'error-string': """value must be of a type compatible with leafref""",

1984 'defined-type': "leafref",

1985 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

1986 })

1987

1988 self.__value = t

1989 if hasattr(self, '_set'):

1990 self._set()

1991

1992 def _unset_value(self):

1993 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

1994

1995 key = __builtin__.property(_get_key, _set_key)

1996 value = __builtin__.property(_get_value, _set_value)

1997

1998

1999 _pyangbind_elements = OrderedDict([('key', key), ('value', value), ])

2000

2001

2002 class yc_monitoring_parameter_etsi_nfv_nsd__nsd_vnfd_vdu_monitoring_parameter(PybindBase):

2003 """

2004 This class was auto-generated by the PythonClass plugin for PYANG

2005 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/vdu/monitoring-parameter. Each member element of

2006 the container is represented as a class variable - with a specific

2007 YANG type.

2008 """

2009 __slots__ = ('_path_helper', '_extmethods', '__id','__name','__performance_metric','__collection_period',)

2010

2011 _yang_name = 'monitoring-parameter'

2012 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

2013

2014 _pybind_generated_by = 'container'

2015

2016 def __init__(self, *args, **kwargs):

2017

2018 self._path_helper = False

2019

2020 self._extmethods = False

2021 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2022 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2023 self.__performance_metric = YANGDynClass(base=str, is_leaf=True, yang_name="performance-metric", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2024 self.__collection_period = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="collection-period", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

2025

2026 load = kwargs.pop("load", None)

2027 if args:

2028 if len(args) > 1:

2029 raise TypeError("cannot create a YANG container with >1 argument")

2030 all_attr = True

2031 for e in self._pyangbind_elements:

2032 if not hasattr(args[0], e):

2033 all_attr = False

2034 break

2035 if not all_attr:

2036 raise ValueError("Supplied object did not have the correct attributes")

2037 for e in self._pyangbind_elements:

2038 nobj = getattr(args[0], e)

2039 if nobj._changed() is False:

2040 continue

2041 setmethod = getattr(self, "_set_%s" % e)

2042 if load is None:

2043 setmethod(getattr(args[0], e))

2044 else:

2045 setmethod(getattr(args[0], e), load=load)

2046

2047 def _path(self):

2048 if hasattr(self, "_parent"):

2049 return self._parent._path()+[self._yang_name]

2050 else:

2051 return ['nsd', 'vnfd', 'vdu', 'monitoring-parameter']

2052

2053 def _get_id(self):

2054 """

2055 Getter method for id, mapped from YANG variable /nsd/vnfd/vdu/monitoring_parameter/id (string)

2056

2057 YANG Description: Unique identifier of the monitoring parameter.

2058 """

2059 return self.__id

2060

2061 def _set_id(self, v, load=False):

2062 """

2063 Setter method for id, mapped from YANG variable /nsd/vnfd/vdu/monitoring_parameter/id (string)

2064 If this variable is read-only (config: false) in the

2065 source YANG file, then _set_id is considered as a private

2066 method. Backends looking to populate this variable should

2067 do so via calling thisObj._set_id() directly.

2068

2069 YANG Description: Unique identifier of the monitoring parameter.

2070 """

2071 parent = getattr(self, "_parent", None)

2072 if parent is not None and load is False:

2073 raise AttributeError("Cannot set keys directly when" +

2074 " within an instantiated list")

2075

2076 if hasattr(v, "_utype"):

2077 v = v._utype(v)

2078 try:

2079 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2080 except (TypeError, ValueError):

2081 raise ValueError({

2082 'error-string': """id must be of a type compatible with string""",

2083 'defined-type': "string",

2084 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

2085 })

2086

2087 self.__id = t

2088 if hasattr(self, '_set'):

2089 self._set()

2090

2091 def _unset_id(self):

2092 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2093

2094

2095 def _get_name(self):

2096 """

2097 Getter method for name, mapped from YANG variable /nsd/vnfd/vdu/monitoring_parameter/name (string)

2098

2099 YANG Description: Human readable name of the monitoring parameter.

2100 """

2101 return self.__name

2102

2103 def _set_name(self, v, load=False):

2104 """

2105 Setter method for name, mapped from YANG variable /nsd/vnfd/vdu/monitoring_parameter/name (string)

2106 If this variable is read-only (config: false) in the

2107 source YANG file, then _set_name is considered as a private

2108 method. Backends looking to populate this variable should

2109 do so via calling thisObj._set_name() directly.

2110

2111 YANG Description: Human readable name of the monitoring parameter.

2112 """

2113 if hasattr(v, "_utype"):

2114 v = v._utype(v)

2115 try:

2116 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2117 except (TypeError, ValueError):

2118 raise ValueError({

2119 'error-string': """name must be of a type compatible with string""",

2120 'defined-type': "string",

2121 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

2122 })

2123

2124 self.__name = t

2125 if hasattr(self, '_set'):

2126 self._set()

2127

2128 def _unset_name(self):

2129 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2130

2131

2132 def _get_performance_metric(self):

2133 """

2134 Getter method for performance_metric, mapped from YANG variable /nsd/vnfd/vdu/monitoring_parameter/performance_metric (string)

2135

2136 YANG Description: Performance metric that is monitored. This attribute shall

2137 contain the related 'Measurement Name' value as defined in

2138 clause 7.2 of ETSI GS NFV-IFA 027

2139 """

2140 return self.__performance_metric

2141

2142 def _set_performance_metric(self, v, load=False):

2143 """

2144 Setter method for performance_metric, mapped from YANG variable /nsd/vnfd/vdu/monitoring_parameter/performance_metric (string)

2145 If this variable is read-only (config: false) in the

2146 source YANG file, then _set_performance_metric is considered as a private

2147 method. Backends looking to populate this variable should

2148 do so via calling thisObj._set_performance_metric() directly.

2149

2150 YANG Description: Performance metric that is monitored. This attribute shall

2151 contain the related 'Measurement Name' value as defined in

2152 clause 7.2 of ETSI GS NFV-IFA 027

2153 """

2154 if hasattr(v, "_utype"):

2155 v = v._utype(v)

2156 try:

2157 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="performance-metric", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2158 except (TypeError, ValueError):

2159 raise ValueError({

2160 'error-string': """performance_metric must be of a type compatible with string""",

2161 'defined-type': "string",

2162 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="performance-metric", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

2163 })

2164

2165 self.__performance_metric = t

2166 if hasattr(self, '_set'):

2167 self._set()

2168

2169 def _unset_performance_metric(self):

2170 self.__performance_metric = YANGDynClass(base=str, is_leaf=True, yang_name="performance-metric", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2171

2172

2173 def _get_collection_period(self):

2174 """

2175 Getter method for collection_period, mapped from YANG variable /nsd/vnfd/vdu/monitoring_parameter/collection_period (uint64)

2176

2177 YANG Description: An attribute that describes the recommended periodicity at

2178 which to collect the performance information. VNFM determines

2179 if this parameter is considered.

2180

2181 The vendor may provide this information as a guidance for

2182 creating PmJobs if needed.

2183 """

2184 return self.__collection_period

2185

2186 def _set_collection_period(self, v, load=False):

2187 """

2188 Setter method for collection_period, mapped from YANG variable /nsd/vnfd/vdu/monitoring_parameter/collection_period (uint64)

2189 If this variable is read-only (config: false) in the

2190 source YANG file, then _set_collection_period is considered as a private

2191 method. Backends looking to populate this variable should

2192 do so via calling thisObj._set_collection_period() directly.

2193

2194 YANG Description: An attribute that describes the recommended periodicity at

2195 which to collect the performance information. VNFM determines

2196 if this parameter is considered.

2197

2198 The vendor may provide this information as a guidance for

2199 creating PmJobs if needed.

2200 """

2201 if hasattr(v, "_utype"):

2202 v = v._utype(v)

2203 try:

2204 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="collection-period", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

2205 except (TypeError, ValueError):

2206 raise ValueError({

2207 'error-string': """collection_period must be of a type compatible with uint64""",

2208 'defined-type': "uint64",

2209 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="collection-period", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)""",

2210 })

2211

2212 self.__collection_period = t

2213 if hasattr(self, '_set'):

2214 self._set()

2215

2216 def _unset_collection_period(self):

2217 self.__collection_period = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="collection-period", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

2218

2219 id = __builtin__.property(_get_id, _set_id)

2220 name = __builtin__.property(_get_name, _set_name)

2221 performance_metric = __builtin__.property(_get_performance_metric, _set_performance_metric)

2222 collection_period = __builtin__.property(_get_collection_period, _set_collection_period)

2223

2224

2225 _pyangbind_elements = OrderedDict([('id', id), ('name', name), ('performance_metric', performance_metric), ('collection_period', collection_period), ])

2226

2227

2228 class yc_configurable_properties_etsi_nfv_nsd__nsd_vnfd_vdu_configurable_properties(PybindBase):

2229 """

2230 This class was auto-generated by the PythonClass plugin for PYANG

2231 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/vdu/configurable-properties. Each member element of

2232 the container is represented as a class variable - with a specific

2233 YANG type.

2234

2235 YANG Description: It provides VNFC configurable properties that can be

2236 modified using the ModifyVnfInfo operation.

2237 """

2238 __slots__ = ('_path_helper', '_extmethods', '__key','__value',)

2239

2240 _yang_name = 'configurable-properties'

2241 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

2242

2243 _pybind_generated_by = 'container'

2244

2245 def __init__(self, *args, **kwargs):

2246

2247 self._path_helper = False

2248

2249 self._extmethods = False

2250 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2251 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2252

2253 load = kwargs.pop("load", None)

2254 if args:

2255 if len(args) > 1:

2256 raise TypeError("cannot create a YANG container with >1 argument")

2257 all_attr = True

2258 for e in self._pyangbind_elements:

2259 if not hasattr(args[0], e):

2260 all_attr = False

2261 break

2262 if not all_attr:

2263 raise ValueError("Supplied object did not have the correct attributes")

2264 for e in self._pyangbind_elements:

2265 nobj = getattr(args[0], e)

2266 if nobj._changed() is False:

2267 continue

2268 setmethod = getattr(self, "_set_%s" % e)

2269 if load is None:

2270 setmethod(getattr(args[0], e))

2271 else:

2272 setmethod(getattr(args[0], e), load=load)

2273

2274 def _path(self):

2275 if hasattr(self, "_parent"):

2276 return self._parent._path()+[self._yang_name]

2277 else:

2278 return ['nsd', 'vnfd', 'vdu', 'configurable-properties']

2279

2280 def _get_key(self):

2281 """

2282 Getter method for key, mapped from YANG variable /nsd/vnfd/vdu/configurable_properties/key (string)

2283 """

2284 return self.__key

2285

2286 def _set_key(self, v, load=False):

2287 """

2288 Setter method for key, mapped from YANG variable /nsd/vnfd/vdu/configurable_properties/key (string)

2289 If this variable is read-only (config: false) in the

2290 source YANG file, then _set_key is considered as a private

2291 method. Backends looking to populate this variable should

2292 do so via calling thisObj._set_key() directly.

2293 """

2294 parent = getattr(self, "_parent", None)

2295 if parent is not None and load is False:

2296 raise AttributeError("Cannot set keys directly when" +

2297 " within an instantiated list")

2298

2299 if hasattr(v, "_utype"):

2300 v = v._utype(v)

2301 try:

2302 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2303 except (TypeError, ValueError):

2304 raise ValueError({

2305 'error-string': """key must be of a type compatible with string""",

2306 'defined-type': "string",

2307 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

2308 })

2309

2310 self.__key = t

2311 if hasattr(self, '_set'):

2312 self._set()

2313

2314 def _unset_key(self):

2315 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2316

2317

2318 def _get_value(self):

2319 """

2320 Getter method for value, mapped from YANG variable /nsd/vnfd/vdu/configurable_properties/value (string)

2321 """

2322 return self.__value

2323

2324 def _set_value(self, v, load=False):

2325 """

2326 Setter method for value, mapped from YANG variable /nsd/vnfd/vdu/configurable_properties/value (string)

2327 If this variable is read-only (config: false) in the

2328 source YANG file, then _set_value is considered as a private

2329 method. Backends looking to populate this variable should

2330 do so via calling thisObj._set_value() directly.

2331 """

2332 if hasattr(v, "_utype"):

2333 v = v._utype(v)

2334 try:

2335 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2336 except (TypeError, ValueError):

2337 raise ValueError({

2338 'error-string': """value must be of a type compatible with string""",

2339 'defined-type': "string",

2340 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

2341 })

2342

2343 self.__value = t

2344 if hasattr(self, '_set'):

2345 self._set()

2346

2347 def _unset_value(self):

2348 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2349

2350 key = __builtin__.property(_get_key, _set_key)

2351 value = __builtin__.property(_get_value, _set_value)

2352

2353

2354 _pyangbind_elements = OrderedDict([('key', key), ('value', value), ])

2355

2356

2357 class yc_vdu_etsi_nfv_nsd__nsd_vnfd_vdu(PybindBase):

2358 """

2359 This class was auto-generated by the PythonClass plugin for PYANG

2360 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/vdu. Each member element of

2361 the container is represented as a class variable - with a specific

2362 YANG type.

2363

2364 YANG Description: The Virtualisation Deployment Unit (VDU) is a construct supporting

2365 the description of the deployment and operational behaviour of a

2366 VNF component, or the entire VNF if it was not componentized in

2367 components.

2368 """

2369 __slots__ = ('_path_helper', '_extmethods', '__id','__name','__description','__int_cpd','__virtual_compute_desc','__virtual_storage_desc','__boot_order','__sw_image_desc','__nfvi_constraint','__monitoring_parameter','__configurable_properties','__boot_data',)

2370

2371 _yang_name = 'vdu'

2372 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

2373

2374 _pybind_generated_by = 'container'

2375

2376 def __init__(self, *args, **kwargs):

2377

2378 self._path_helper = False

2379

2380 self._extmethods = False

2381 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2382 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2383 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2384 self.__int_cpd = YANGDynClass(base=YANGListType("id",yc_int_cpd_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd, yang_name="int-cpd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="int-cpd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

2385 self.__virtual_compute_desc = YANGDynClass(base=str, is_leaf=True, yang_name="virtual-compute-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

2386 self.__virtual_storage_desc = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="virtual-storage-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

2387 self.__boot_order = YANGDynClass(base=YANGListType("key",yc_boot_order_etsi_nfv_nsd__nsd_vnfd_vdu_boot_order, yang_name="boot-order", parent=self, is_container='list', user_ordered=True, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="boot-order", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

2388 self.__sw_image_desc = YANGDynClass(base=str, is_leaf=True, yang_name="sw-image-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

2389 self.__nfvi_constraint = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="nfvi-constraint", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2390 self.__monitoring_parameter = YANGDynClass(base=YANGListType("id",yc_monitoring_parameter_etsi_nfv_nsd__nsd_vnfd_vdu_monitoring_parameter, yang_name="monitoring-parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="monitoring-parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

2391 self.__configurable_properties = YANGDynClass(base=YANGListType("key",yc_configurable_properties_etsi_nfv_nsd__nsd_vnfd_vdu_configurable_properties, yang_name="configurable-properties", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="configurable-properties", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

2392 self.__boot_data = YANGDynClass(base=str, is_leaf=True, yang_name="boot-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2393

2394 load = kwargs.pop("load", None)

2395 if args:

2396 if len(args) > 1:

2397 raise TypeError("cannot create a YANG container with >1 argument")

2398 all_attr = True

2399 for e in self._pyangbind_elements:

2400 if not hasattr(args[0], e):

2401 all_attr = False

2402 break

2403 if not all_attr:

2404 raise ValueError("Supplied object did not have the correct attributes")

2405 for e in self._pyangbind_elements:

2406 nobj = getattr(args[0], e)

2407 if nobj._changed() is False:

2408 continue

2409 setmethod = getattr(self, "_set_%s" % e)

2410 if load is None:

2411 setmethod(getattr(args[0], e))

2412 else:

2413 setmethod(getattr(args[0], e), load=load)

2414

2415 def _path(self):

2416 if hasattr(self, "_parent"):

2417 return self._parent._path()+[self._yang_name]

2418 else:

2419 return ['nsd', 'vnfd', 'vdu']

2420

2421 def _get_id(self):

2422 """

2423 Getter method for id, mapped from YANG variable /nsd/vnfd/vdu/id (string)

2424

2425 YANG Description: Unique identifier of this VDU in VNFD.

2426 """

2427 return self.__id

2428

2429 def _set_id(self, v, load=False):

2430 """

2431 Setter method for id, mapped from YANG variable /nsd/vnfd/vdu/id (string)

2432 If this variable is read-only (config: false) in the

2433 source YANG file, then _set_id is considered as a private

2434 method. Backends looking to populate this variable should

2435 do so via calling thisObj._set_id() directly.

2436

2437 YANG Description: Unique identifier of this VDU in VNFD.

2438 """

2439 parent = getattr(self, "_parent", None)

2440 if parent is not None and load is False:

2441 raise AttributeError("Cannot set keys directly when" +

2442 " within an instantiated list")

2443

2444 if hasattr(v, "_utype"):

2445 v = v._utype(v)

2446 try:

2447 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2448 except (TypeError, ValueError):

2449 raise ValueError({

2450 'error-string': """id must be of a type compatible with string""",

2451 'defined-type': "string",

2452 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

2453 })

2454

2455 self.__id = t

2456 if hasattr(self, '_set'):

2457 self._set()

2458

2459 def _unset_id(self):

2460 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2461

2462

2463 def _get_name(self):

2464 """

2465 Getter method for name, mapped from YANG variable /nsd/vnfd/vdu/name (string)

2466

2467 YANG Description: Human readable name of the VDU.

2468 """

2469 return self.__name

2470

2471 def _set_name(self, v, load=False):

2472 """

2473 Setter method for name, mapped from YANG variable /nsd/vnfd/vdu/name (string)

2474 If this variable is read-only (config: false) in the

2475 source YANG file, then _set_name is considered as a private

2476 method. Backends looking to populate this variable should

2477 do so via calling thisObj._set_name() directly.

2478

2479 YANG Description: Human readable name of the VDU.

2480 """

2481 if hasattr(v, "_utype"):

2482 v = v._utype(v)

2483 try:

2484 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2485 except (TypeError, ValueError):

2486 raise ValueError({

2487 'error-string': """name must be of a type compatible with string""",

2488 'defined-type': "string",

2489 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

2490 })

2491

2492 self.__name = t

2493 if hasattr(self, '_set'):

2494 self._set()

2495

2496 def _unset_name(self):

2497 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2498

2499

2500 def _get_description(self):

2501 """

2502 Getter method for description, mapped from YANG variable /nsd/vnfd/vdu/description (string)

2503

2504 YANG Description: Human readable description of the VDU.

2505 """

2506 return self.__description

2507

2508 def _set_description(self, v, load=False):

2509 """

2510 Setter method for description, mapped from YANG variable /nsd/vnfd/vdu/description (string)

2511 If this variable is read-only (config: false) in the

2512 source YANG file, then _set_description is considered as a private

2513 method. Backends looking to populate this variable should

2514 do so via calling thisObj._set_description() directly.

2515

2516 YANG Description: Human readable description of the VDU.

2517 """

2518 if hasattr(v, "_utype"):

2519 v = v._utype(v)

2520 try:

2521 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2522 except (TypeError, ValueError):

2523 raise ValueError({

2524 'error-string': """description must be of a type compatible with string""",

2525 'defined-type': "string",

2526 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

2527 })

2528

2529 self.__description = t

2530 if hasattr(self, '_set'):

2531 self._set()

2532

2533 def _unset_description(self):

2534 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2535

2536

2537 def _get_int_cpd(self):

2538 """

2539 Getter method for int_cpd, mapped from YANG variable /nsd/vnfd/vdu/int_cpd (list)

2540

2541 YANG Description: A internal-connection-point element is a type of

2542 connection point and describes network connectivity

2543 between a VDU instance and an internal Virtual Link or

2544 an external connection point.

2545 """

2546 return self.__int_cpd

2547

2548 def _set_int_cpd(self, v, load=False):

2549 """

2550 Setter method for int_cpd, mapped from YANG variable /nsd/vnfd/vdu/int_cpd (list)

2551 If this variable is read-only (config: false) in the

2552 source YANG file, then _set_int_cpd is considered as a private

2553 method. Backends looking to populate this variable should

2554 do so via calling thisObj._set_int_cpd() directly.

2555

2556 YANG Description: A internal-connection-point element is a type of

2557 connection point and describes network connectivity

2558 between a VDU instance and an internal Virtual Link or

2559 an external connection point.

2560 """

2561 if hasattr(v, "_utype"):

2562 v = v._utype(v)

2563 try:

2564 t = YANGDynClass(v,base=YANGListType("id",yc_int_cpd_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd, yang_name="int-cpd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="int-cpd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

2565 except (TypeError, ValueError):

2566 raise ValueError({

2567 'error-string': """int_cpd must be of a type compatible with list""",

2568 'defined-type': "list",

2569 'generated-type': """YANGDynClass(base=YANGListType("id",yc_int_cpd_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd, yang_name="int-cpd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="int-cpd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

2570 })

2571

2572 self.__int_cpd = t

2573 if hasattr(self, '_set'):

2574 self._set()

2575

2576 def _unset_int_cpd(self):

2577 self.__int_cpd = YANGDynClass(base=YANGListType("id",yc_int_cpd_etsi_nfv_nsd__nsd_vnfd_vdu_int_cpd, yang_name="int-cpd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="int-cpd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

2578

2579

2580 def _get_virtual_compute_desc(self):

2581 """

2582 Getter method for virtual_compute_desc, mapped from YANG variable /nsd/vnfd/vdu/virtual_compute_desc (leafref)

2583

2584 YANG Description: Describes CPU, Memory and acceleration requirements of

2585 the Virtualisation Container realizing this VDU.

2586 """

2587 return self.__virtual_compute_desc

2588

2589 def _set_virtual_compute_desc(self, v, load=False):

2590 """

2591 Setter method for virtual_compute_desc, mapped from YANG variable /nsd/vnfd/vdu/virtual_compute_desc (leafref)

2592 If this variable is read-only (config: false) in the

2593 source YANG file, then _set_virtual_compute_desc is considered as a private

2594 method. Backends looking to populate this variable should

2595 do so via calling thisObj._set_virtual_compute_desc() directly.

2596

2597 YANG Description: Describes CPU, Memory and acceleration requirements of

2598 the Virtualisation Container realizing this VDU.

2599 """

2600 if hasattr(v, "_utype"):

2601 v = v._utype(v)

2602 try:

2603 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="virtual-compute-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

2604 except (TypeError, ValueError):

2605 raise ValueError({

2606 'error-string': """virtual_compute_desc must be of a type compatible with leafref""",

2607 'defined-type': "leafref",

2608 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="virtual-compute-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

2609 })

2610

2611 self.__virtual_compute_desc = t

2612 if hasattr(self, '_set'):

2613 self._set()

2614

2615 def _unset_virtual_compute_desc(self):

2616 self.__virtual_compute_desc = YANGDynClass(base=str, is_leaf=True, yang_name="virtual-compute-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

2617

2618

2619 def _get_virtual_storage_desc(self):

2620 """

2621 Getter method for virtual_storage_desc, mapped from YANG variable /nsd/vnfd/vdu/virtual_storage_desc (leafref)

2622

2623 YANG Description: Describes storage requirements for a VirtualStorage

2624 instance attached to the virtualisation container

2625 created from virtualComputeDesc defined for this VDU.

2626 """

2627 return self.__virtual_storage_desc

2628

2629 def _set_virtual_storage_desc(self, v, load=False):

2630 """

2631 Setter method for virtual_storage_desc, mapped from YANG variable /nsd/vnfd/vdu/virtual_storage_desc (leafref)

2632 If this variable is read-only (config: false) in the

2633 source YANG file, then _set_virtual_storage_desc is considered as a private

2634 method. Backends looking to populate this variable should

2635 do so via calling thisObj._set_virtual_storage_desc() directly.

2636

2637 YANG Description: Describes storage requirements for a VirtualStorage

2638 instance attached to the virtualisation container

2639 created from virtualComputeDesc defined for this VDU.

2640 """

2641 if hasattr(v, "_utype"):

2642 v = v._utype(v)

2643 try:

2644 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="virtual-storage-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

2645 except (TypeError, ValueError):

2646 raise ValueError({

2647 'error-string': """virtual_storage_desc must be of a type compatible with leafref""",

2648 'defined-type': "leafref",

2649 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="virtual-storage-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

2650 })

2651

2652 self.__virtual_storage_desc = t

2653 if hasattr(self, '_set'):

2654 self._set()

2655

2656 def _unset_virtual_storage_desc(self):

2657 self.__virtual_storage_desc = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="virtual-storage-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

2658

2659

2660 def _get_boot_order(self):

2661 """

2662 Getter method for boot_order, mapped from YANG variable /nsd/vnfd/vdu/boot_order (list)

2663

2664 YANG Description: The key indicates the boot index (lowest index defines

2665 highest boot priority). The Value references a descriptor

2666 from which a valid boot device is created e.g.

2667 VirtualStorageDesc from which a VirtualStorage instance

2668 is created.

2669

2670 Editor's note: The boot-order node requires further

2671 study.

2672 """

2673 return self.__boot_order

2674

2675 def _set_boot_order(self, v, load=False):

2676 """

2677 Setter method for boot_order, mapped from YANG variable /nsd/vnfd/vdu/boot_order (list)

2678 If this variable is read-only (config: false) in the

2679 source YANG file, then _set_boot_order is considered as a private

2680 method. Backends looking to populate this variable should

2681 do so via calling thisObj._set_boot_order() directly.

2682

2683 YANG Description: The key indicates the boot index (lowest index defines

2684 highest boot priority). The Value references a descriptor

2685 from which a valid boot device is created e.g.

2686 VirtualStorageDesc from which a VirtualStorage instance

2687 is created.

2688

2689 Editor's note: The boot-order node requires further

2690 study.

2691 """

2692 if hasattr(v, "_utype"):

2693 v = v._utype(v)

2694 try:

2695 t = YANGDynClass(v,base=YANGListType("key",yc_boot_order_etsi_nfv_nsd__nsd_vnfd_vdu_boot_order, yang_name="boot-order", parent=self, is_container='list', user_ordered=True, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="boot-order", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

2696 except (TypeError, ValueError):

2697 raise ValueError({

2698 'error-string': """boot_order must be of a type compatible with list""",

2699 'defined-type': "list",

2700 'generated-type': """YANGDynClass(base=YANGListType("key",yc_boot_order_etsi_nfv_nsd__nsd_vnfd_vdu_boot_order, yang_name="boot-order", parent=self, is_container='list', user_ordered=True, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="boot-order", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

2701 })

2702

2703 self.__boot_order = t

2704 if hasattr(self, '_set'):

2705 self._set()

2706

2707 def _unset_boot_order(self):

2708 self.__boot_order = YANGDynClass(base=YANGListType("key",yc_boot_order_etsi_nfv_nsd__nsd_vnfd_vdu_boot_order, yang_name="boot-order", parent=self, is_container='list', user_ordered=True, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="boot-order", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

2709

2710

2711 def _get_sw_image_desc(self):

2712 """

2713 Getter method for sw_image_desc, mapped from YANG variable /nsd/vnfd/vdu/sw_image_desc (leafref)

2714

2715 YANG Description: Describes the software image which is directly loaded on

2716 the virtualisation container realising this Vdu.

2717 """

2718 return self.__sw_image_desc

2719

2720 def _set_sw_image_desc(self, v, load=False):

2721 """

2722 Setter method for sw_image_desc, mapped from YANG variable /nsd/vnfd/vdu/sw_image_desc (leafref)

2723 If this variable is read-only (config: false) in the

2724 source YANG file, then _set_sw_image_desc is considered as a private

2725 method. Backends looking to populate this variable should

2726 do so via calling thisObj._set_sw_image_desc() directly.

2727

2728 YANG Description: Describes the software image which is directly loaded on

2729 the virtualisation container realising this Vdu.

2730 """

2731 if hasattr(v, "_utype"):

2732 v = v._utype(v)

2733 try:

2734 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="sw-image-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

2735 except (TypeError, ValueError):

2736 raise ValueError({

2737 'error-string': """sw_image_desc must be of a type compatible with leafref""",

2738 'defined-type': "leafref",

2739 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="sw-image-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

2740 })

2741

2742 self.__sw_image_desc = t

2743 if hasattr(self, '_set'):

2744 self._set()

2745

2746 def _unset_sw_image_desc(self):

2747 self.__sw_image_desc = YANGDynClass(base=str, is_leaf=True, yang_name="sw-image-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

2748

2749

2750 def _get_nfvi_constraint(self):

2751 """

2752 Getter method for nfvi_constraint, mapped from YANG variable /nsd/vnfd/vdu/nfvi_constraint (string)

2753

2754 YANG Description: Describes constraints on the NFVI for the VNFC

2755 instance(s) created from this Vdu. For example, aspects

2756 of a secure hosting environment for the VNFC instance

2757 that involve additional entities or processes.

2758 """

2759 return self.__nfvi_constraint

2760

2761 def _set_nfvi_constraint(self, v, load=False):

2762 """

2763 Setter method for nfvi_constraint, mapped from YANG variable /nsd/vnfd/vdu/nfvi_constraint (string)

2764 If this variable is read-only (config: false) in the

2765 source YANG file, then _set_nfvi_constraint is considered as a private

2766 method. Backends looking to populate this variable should

2767 do so via calling thisObj._set_nfvi_constraint() directly.

2768

2769 YANG Description: Describes constraints on the NFVI for the VNFC

2770 instance(s) created from this Vdu. For example, aspects

2771 of a secure hosting environment for the VNFC instance

2772 that involve additional entities or processes.

2773 """

2774 if hasattr(v, "_utype"):

2775 v = v._utype(v)

2776 try:

2777 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="nfvi-constraint", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2778 except (TypeError, ValueError):

2779 raise ValueError({

2780 'error-string': """nfvi_constraint must be of a type compatible with string""",

2781 'defined-type': "string",

2782 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="nfvi-constraint", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

2783 })

2784

2785 self.__nfvi_constraint = t

2786 if hasattr(self, '_set'):

2787 self._set()

2788

2789 def _unset_nfvi_constraint(self):

2790 self.__nfvi_constraint = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="nfvi-constraint", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2791

2792

2793 def _get_monitoring_parameter(self):

2794 """

2795 Getter method for monitoring_parameter, mapped from YANG variable /nsd/vnfd/vdu/monitoring_parameter (list)

2796 """

2797 return self.__monitoring_parameter

2798

2799 def _set_monitoring_parameter(self, v, load=False):

2800 """

2801 Setter method for monitoring_parameter, mapped from YANG variable /nsd/vnfd/vdu/monitoring_parameter (list)

2802 If this variable is read-only (config: false) in the

2803 source YANG file, then _set_monitoring_parameter is considered as a private

2804 method. Backends looking to populate this variable should

2805 do so via calling thisObj._set_monitoring_parameter() directly.

2806 """

2807 if hasattr(v, "_utype"):

2808 v = v._utype(v)

2809 try:

2810 t = YANGDynClass(v,base=YANGListType("id",yc_monitoring_parameter_etsi_nfv_nsd__nsd_vnfd_vdu_monitoring_parameter, yang_name="monitoring-parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="monitoring-parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

2811 except (TypeError, ValueError):

2812 raise ValueError({

2813 'error-string': """monitoring_parameter must be of a type compatible with list""",

2814 'defined-type': "list",

2815 'generated-type': """YANGDynClass(base=YANGListType("id",yc_monitoring_parameter_etsi_nfv_nsd__nsd_vnfd_vdu_monitoring_parameter, yang_name="monitoring-parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="monitoring-parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

2816 })

2817

2818 self.__monitoring_parameter = t

2819 if hasattr(self, '_set'):

2820 self._set()

2821

2822 def _unset_monitoring_parameter(self):

2823 self.__monitoring_parameter = YANGDynClass(base=YANGListType("id",yc_monitoring_parameter_etsi_nfv_nsd__nsd_vnfd_vdu_monitoring_parameter, yang_name="monitoring-parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="monitoring-parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

2824

2825

2826 def _get_configurable_properties(self):

2827 """

2828 Getter method for configurable_properties, mapped from YANG variable /nsd/vnfd/vdu/configurable_properties (list)

2829

2830 YANG Description: It provides VNFC configurable properties that can be

2831 modified using the ModifyVnfInfo operation.

2832 """

2833 return self.__configurable_properties

2834

2835 def _set_configurable_properties(self, v, load=False):

2836 """

2837 Setter method for configurable_properties, mapped from YANG variable /nsd/vnfd/vdu/configurable_properties (list)

2838 If this variable is read-only (config: false) in the

2839 source YANG file, then _set_configurable_properties is considered as a private

2840 method. Backends looking to populate this variable should

2841 do so via calling thisObj._set_configurable_properties() directly.

2842

2843 YANG Description: It provides VNFC configurable properties that can be

2844 modified using the ModifyVnfInfo operation.

2845 """

2846 if hasattr(v, "_utype"):

2847 v = v._utype(v)

2848 try:

2849 t = YANGDynClass(v,base=YANGListType("key",yc_configurable_properties_etsi_nfv_nsd__nsd_vnfd_vdu_configurable_properties, yang_name="configurable-properties", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="configurable-properties", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

2850 except (TypeError, ValueError):

2851 raise ValueError({

2852 'error-string': """configurable_properties must be of a type compatible with list""",

2853 'defined-type': "list",

2854 'generated-type': """YANGDynClass(base=YANGListType("key",yc_configurable_properties_etsi_nfv_nsd__nsd_vnfd_vdu_configurable_properties, yang_name="configurable-properties", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="configurable-properties", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

2855 })

2856

2857 self.__configurable_properties = t

2858 if hasattr(self, '_set'):

2859 self._set()

2860

2861 def _unset_configurable_properties(self):

2862 self.__configurable_properties = YANGDynClass(base=YANGListType("key",yc_configurable_properties_etsi_nfv_nsd__nsd_vnfd_vdu_configurable_properties, yang_name="configurable-properties", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="configurable-properties", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

2863

2864

2865 def _get_boot_data(self):

2866 """

2867 Getter method for boot_data, mapped from YANG variable /nsd/vnfd/vdu/boot_data (string)

2868

2869 YANG Description: Contains a string or a URL to a file contained in the

2870 VNF package used to customize a virtualised compute

2871 resource at boot time. The bootData may contain variable

2872 parts that are replaced by deployment specific values

2873 before being sent to the VIM.

2874 """

2875 return self.__boot_data

2876

2877 def _set_boot_data(self, v, load=False):

2878 """

2879 Setter method for boot_data, mapped from YANG variable /nsd/vnfd/vdu/boot_data (string)

2880 If this variable is read-only (config: false) in the

2881 source YANG file, then _set_boot_data is considered as a private

2882 method. Backends looking to populate this variable should

2883 do so via calling thisObj._set_boot_data() directly.

2884

2885 YANG Description: Contains a string or a URL to a file contained in the

2886 VNF package used to customize a virtualised compute

2887 resource at boot time. The bootData may contain variable

2888 parts that are replaced by deployment specific values

2889 before being sent to the VIM.

2890 """

2891 if hasattr(v, "_utype"):

2892 v = v._utype(v)

2893 try:

2894 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="boot-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2895 except (TypeError, ValueError):

2896 raise ValueError({

2897 'error-string': """boot_data must be of a type compatible with string""",

2898 'defined-type': "string",

2899 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="boot-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

2900 })

2901

2902 self.__boot_data = t

2903 if hasattr(self, '_set'):

2904 self._set()

2905

2906 def _unset_boot_data(self):

2907 self.__boot_data = YANGDynClass(base=str, is_leaf=True, yang_name="boot-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2908

2909 id = __builtin__.property(_get_id, _set_id)

2910 name = __builtin__.property(_get_name, _set_name)

2911 description = __builtin__.property(_get_description, _set_description)

2912 int_cpd = __builtin__.property(_get_int_cpd, _set_int_cpd)

2913 virtual_compute_desc = __builtin__.property(_get_virtual_compute_desc, _set_virtual_compute_desc)

2914 virtual_storage_desc = __builtin__.property(_get_virtual_storage_desc, _set_virtual_storage_desc)

2915 boot_order = __builtin__.property(_get_boot_order, _set_boot_order)

2916 sw_image_desc = __builtin__.property(_get_sw_image_desc, _set_sw_image_desc)

2917 nfvi_constraint = __builtin__.property(_get_nfvi_constraint, _set_nfvi_constraint)

2918 monitoring_parameter = __builtin__.property(_get_monitoring_parameter, _set_monitoring_parameter)

2919 configurable_properties = __builtin__.property(_get_configurable_properties, _set_configurable_properties)

2920 boot_data = __builtin__.property(_get_boot_data, _set_boot_data)

2921

2922

2923 _pyangbind_elements = OrderedDict([('id', id), ('name', name), ('description', description), ('int_cpd', int_cpd), ('virtual_compute_desc', virtual_compute_desc), ('virtual_storage_desc', virtual_storage_desc), ('boot_order', boot_order), ('sw_image_desc', sw_image_desc), ('nfvi_constraint', nfvi_constraint), ('monitoring_parameter', monitoring_parameter), ('configurable_properties', configurable_properties), ('boot_data', boot_data), ])

2924

2925

2926 class yc_requirement_detail_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_logical_node_requirement_detail(PybindBase):

2927 """

2928 This class was auto-generated by the PythonClass plugin for PYANG

2929 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/virtual-compute-desc/logical-node/requirement-detail. Each member element of

2930 the container is represented as a class variable - with a specific

2931 YANG type.

2932

2933 YANG Description: The logical node-level compute, memory and I/O

2934 requirements. An array of key-value pairs that

2935 articulate the deployment requirements.

2936

2937 This could include the number of CPU cores on this

2938 logical node, a memory configuration specific to a

2939 logical node (e.g. such as available in the Linux

2940 kernel via the libnuma library) or a requirement

2941 related to the association of an I/O device with the

2942 logical node.

2943 """

2944 __slots__ = ('_path_helper', '_extmethods', '__key','__value',)

2945

2946 _yang_name = 'requirement-detail'

2947 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

2948

2949 _pybind_generated_by = 'container'

2950

2951 def __init__(self, *args, **kwargs):

2952

2953 self._path_helper = False

2954

2955 self._extmethods = False

2956 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2957 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

2958

2959 load = kwargs.pop("load", None)

2960 if args:

2961 if len(args) > 1:

2962 raise TypeError("cannot create a YANG container with >1 argument")

2963 all_attr = True

2964 for e in self._pyangbind_elements:

2965 if not hasattr(args[0], e):

2966 all_attr = False

2967 break

2968 if not all_attr:

2969 raise ValueError("Supplied object did not have the correct attributes")

2970 for e in self._pyangbind_elements:

2971 nobj = getattr(args[0], e)

2972 if nobj._changed() is False:

2973 continue

2974 setmethod = getattr(self, "_set_%s" % e)

2975 if load is None:

2976 setmethod(getattr(args[0], e))

2977 else:

2978 setmethod(getattr(args[0], e), load=load)

2979

2980 def _path(self):

2981 if hasattr(self, "_parent"):

2982 return self._parent._path()+[self._yang_name]

2983 else:

2984 return ['nsd', 'vnfd', 'virtual-compute-desc', 'logical-node', 'requirement-detail']

2985

2986 def _get_key(self):

2987 """

2988 Getter method for key, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/logical_node/requirement_detail/key (string)

2989 """

2990 return self.__key

2991

2992 def _set_key(self, v, load=False):

2993 """

2994 Setter method for key, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/logical_node/requirement_detail/key (string)

2995 If this variable is read-only (config: false) in the

2996 source YANG file, then _set_key is considered as a private

2997 method. Backends looking to populate this variable should

2998 do so via calling thisObj._set_key() directly.

2999 """

3000 parent = getattr(self, "_parent", None)

3001 if parent is not None and load is False:

3002 raise AttributeError("Cannot set keys directly when" +

3003 " within an instantiated list")

3004

3005 if hasattr(v, "_utype"):

3006 v = v._utype(v)

3007 try:

3008 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3009 except (TypeError, ValueError):

3010 raise ValueError({

3011 'error-string': """key must be of a type compatible with string""",

3012 'defined-type': "string",

3013 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

3014 })

3015

3016 self.__key = t

3017 if hasattr(self, '_set'):

3018 self._set()

3019

3020 def _unset_key(self):

3021 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3022

3023

3024 def _get_value(self):

3025 """

3026 Getter method for value, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/logical_node/requirement_detail/value (string)

3027 """

3028 return self.__value

3029

3030 def _set_value(self, v, load=False):

3031 """

3032 Setter method for value, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/logical_node/requirement_detail/value (string)

3033 If this variable is read-only (config: false) in the

3034 source YANG file, then _set_value is considered as a private

3035 method. Backends looking to populate this variable should

3036 do so via calling thisObj._set_value() directly.

3037 """

3038 if hasattr(v, "_utype"):

3039 v = v._utype(v)

3040 try:

3041 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3042 except (TypeError, ValueError):

3043 raise ValueError({

3044 'error-string': """value must be of a type compatible with string""",

3045 'defined-type': "string",

3046 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

3047 })

3048

3049 self.__value = t

3050 if hasattr(self, '_set'):

3051 self._set()

3052

3053 def _unset_value(self):

3054 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3055

3056 key = __builtin__.property(_get_key, _set_key)

3057 value = __builtin__.property(_get_value, _set_value)

3058

3059

3060 _pyangbind_elements = OrderedDict([('key', key), ('value', value), ])

3061

3062

3063 class yc_logical_node_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_logical_node(PybindBase):

3064 """

3065 This class was auto-generated by the PythonClass plugin for PYANG

3066 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/virtual-compute-desc/logical-node. Each member element of

3067 the container is represented as a class variable - with a specific

3068 YANG type.

3069

3070 YANG Description: The logical node requirements.

3071 """

3072 __slots__ = ('_path_helper', '_extmethods', '__id','__requirement_detail',)

3073

3074 _yang_name = 'logical-node'

3075 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

3076

3077 _pybind_generated_by = 'container'

3078

3079 def __init__(self, *args, **kwargs):

3080

3081 self._path_helper = False

3082

3083 self._extmethods = False

3084 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3085 self.__requirement_detail = YANGDynClass(base=YANGListType("key",yc_requirement_detail_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_logical_node_requirement_detail, yang_name="requirement-detail", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="requirement-detail", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

3086

3087 load = kwargs.pop("load", None)

3088 if args:

3089 if len(args) > 1:

3090 raise TypeError("cannot create a YANG container with >1 argument")

3091 all_attr = True

3092 for e in self._pyangbind_elements:

3093 if not hasattr(args[0], e):

3094 all_attr = False

3095 break

3096 if not all_attr:

3097 raise ValueError("Supplied object did not have the correct attributes")

3098 for e in self._pyangbind_elements:

3099 nobj = getattr(args[0], e)

3100 if nobj._changed() is False:

3101 continue

3102 setmethod = getattr(self, "_set_%s" % e)

3103 if load is None:

3104 setmethod(getattr(args[0], e))

3105 else:

3106 setmethod(getattr(args[0], e), load=load)

3107

3108 def _path(self):

3109 if hasattr(self, "_parent"):

3110 return self._parent._path()+[self._yang_name]

3111 else:

3112 return ['nsd', 'vnfd', 'virtual-compute-desc', 'logical-node']

3113

3114 def _get_id(self):

3115 """

3116 Getter method for id, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/logical_node/id (string)

3117

3118 YANG Description: Identifies this set of logical node requirements.

3119 """

3120 return self.__id

3121

3122 def _set_id(self, v, load=False):

3123 """

3124 Setter method for id, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/logical_node/id (string)

3125 If this variable is read-only (config: false) in the

3126 source YANG file, then _set_id is considered as a private

3127 method. Backends looking to populate this variable should

3128 do so via calling thisObj._set_id() directly.

3129

3130 YANG Description: Identifies this set of logical node requirements.

3131 """

3132 parent = getattr(self, "_parent", None)

3133 if parent is not None and load is False:

3134 raise AttributeError("Cannot set keys directly when" +

3135 " within an instantiated list")

3136

3137 if hasattr(v, "_utype"):

3138 v = v._utype(v)

3139 try:

3140 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3141 except (TypeError, ValueError):

3142 raise ValueError({

3143 'error-string': """id must be of a type compatible with string""",

3144 'defined-type': "string",

3145 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

3146 })

3147

3148 self.__id = t

3149 if hasattr(self, '_set'):

3150 self._set()

3151

3152 def _unset_id(self):

3153 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3154

3155

3156 def _get_requirement_detail(self):

3157 """

3158 Getter method for requirement_detail, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/logical_node/requirement_detail (list)

3159

3160 YANG Description: The logical node-level compute, memory and I/O

3161 requirements. An array of key-value pairs that

3162 articulate the deployment requirements.

3163

3164 This could include the number of CPU cores on this

3165 logical node, a memory configuration specific to a

3166 logical node (e.g. such as available in the Linux

3167 kernel via the libnuma library) or a requirement

3168 related to the association of an I/O device with the

3169 logical node.

3170 """

3171 return self.__requirement_detail

3172

3173 def _set_requirement_detail(self, v, load=False):

3174 """

3175 Setter method for requirement_detail, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/logical_node/requirement_detail (list)

3176 If this variable is read-only (config: false) in the

3177 source YANG file, then _set_requirement_detail is considered as a private

3178 method. Backends looking to populate this variable should

3179 do so via calling thisObj._set_requirement_detail() directly.

3180

3181 YANG Description: The logical node-level compute, memory and I/O

3182 requirements. An array of key-value pairs that

3183 articulate the deployment requirements.

3184

3185 This could include the number of CPU cores on this

3186 logical node, a memory configuration specific to a

3187 logical node (e.g. such as available in the Linux

3188 kernel via the libnuma library) or a requirement

3189 related to the association of an I/O device with the

3190 logical node.

3191 """

3192 if hasattr(v, "_utype"):

3193 v = v._utype(v)

3194 try:

3195 t = YANGDynClass(v,base=YANGListType("key",yc_requirement_detail_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_logical_node_requirement_detail, yang_name="requirement-detail", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="requirement-detail", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

3196 except (TypeError, ValueError):

3197 raise ValueError({

3198 'error-string': """requirement_detail must be of a type compatible with list""",

3199 'defined-type': "list",

3200 'generated-type': """YANGDynClass(base=YANGListType("key",yc_requirement_detail_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_logical_node_requirement_detail, yang_name="requirement-detail", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="requirement-detail", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

3201 })

3202

3203 self.__requirement_detail = t

3204 if hasattr(self, '_set'):

3205 self._set()

3206

3207 def _unset_requirement_detail(self):

3208 self.__requirement_detail = YANGDynClass(base=YANGListType("key",yc_requirement_detail_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_logical_node_requirement_detail, yang_name="requirement-detail", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="requirement-detail", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

3209

3210 id = __builtin__.property(_get_id, _set_id)

3211 requirement_detail = __builtin__.property(_get_requirement_detail, _set_requirement_detail)

3212

3213

3214 _pyangbind_elements = OrderedDict([('id', id), ('requirement_detail', requirement_detail), ])

3215

3216

3217 class yc_target_performance_parameters_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_request_additional_capability_target_performance_parameters(PybindBase):

3218 """

3219 This class was auto-generated by the PythonClass plugin for PYANG

3220 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/virtual-compute-desc/request-additional-capability/target-performance-parameters. Each member element of

3221 the container is represented as a class variable - with a specific

3222 YANG type.

3223

3224 YANG Description: Identifies specific attributes, dependent on the

3225 requested additional capability type.

3226 """

3227 __slots__ = ('_path_helper', '_extmethods', '__key','__value',)

3228

3229 _yang_name = 'target-performance-parameters'

3230 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

3231

3232 _pybind_generated_by = 'container'

3233

3234 def __init__(self, *args, **kwargs):

3235

3236 self._path_helper = False

3237

3238 self._extmethods = False

3239 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3240 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3241

3242 load = kwargs.pop("load", None)

3243 if args:

3244 if len(args) > 1:

3245 raise TypeError("cannot create a YANG container with >1 argument")

3246 all_attr = True

3247 for e in self._pyangbind_elements:

3248 if not hasattr(args[0], e):

3249 all_attr = False

3250 break

3251 if not all_attr:

3252 raise ValueError("Supplied object did not have the correct attributes")

3253 for e in self._pyangbind_elements:

3254 nobj = getattr(args[0], e)

3255 if nobj._changed() is False:

3256 continue

3257 setmethod = getattr(self, "_set_%s" % e)

3258 if load is None:

3259 setmethod(getattr(args[0], e))

3260 else:

3261 setmethod(getattr(args[0], e), load=load)

3262

3263 def _path(self):

3264 if hasattr(self, "_parent"):

3265 return self._parent._path()+[self._yang_name]

3266 else:

3267 return ['nsd', 'vnfd', 'virtual-compute-desc', 'request-additional-capability', 'target-performance-parameters']

3268

3269 def _get_key(self):

3270 """

3271 Getter method for key, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/request_additional_capability/target_performance_parameters/key (string)

3272 """

3273 return self.__key

3274

3275 def _set_key(self, v, load=False):

3276 """

3277 Setter method for key, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/request_additional_capability/target_performance_parameters/key (string)

3278 If this variable is read-only (config: false) in the

3279 source YANG file, then _set_key is considered as a private

3280 method. Backends looking to populate this variable should

3281 do so via calling thisObj._set_key() directly.

3282 """

3283 parent = getattr(self, "_parent", None)

3284 if parent is not None and load is False:

3285 raise AttributeError("Cannot set keys directly when" +

3286 " within an instantiated list")

3287

3288 if hasattr(v, "_utype"):

3289 v = v._utype(v)

3290 try:

3291 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3292 except (TypeError, ValueError):

3293 raise ValueError({

3294 'error-string': """key must be of a type compatible with string""",

3295 'defined-type': "string",

3296 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

3297 })

3298

3299 self.__key = t

3300 if hasattr(self, '_set'):

3301 self._set()

3302

3303 def _unset_key(self):

3304 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3305

3306

3307 def _get_value(self):

3308 """

3309 Getter method for value, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/request_additional_capability/target_performance_parameters/value (string)

3310 """

3311 return self.__value

3312

3313 def _set_value(self, v, load=False):

3314 """

3315 Setter method for value, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/request_additional_capability/target_performance_parameters/value (string)

3316 If this variable is read-only (config: false) in the

3317 source YANG file, then _set_value is considered as a private

3318 method. Backends looking to populate this variable should

3319 do so via calling thisObj._set_value() directly.

3320 """

3321 if hasattr(v, "_utype"):

3322 v = v._utype(v)

3323 try:

3324 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3325 except (TypeError, ValueError):

3326 raise ValueError({

3327 'error-string': """value must be of a type compatible with string""",

3328 'defined-type': "string",

3329 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

3330 })

3331

3332 self.__value = t

3333 if hasattr(self, '_set'):

3334 self._set()

3335

3336 def _unset_value(self):

3337 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3338

3339 key = __builtin__.property(_get_key, _set_key)

3340 value = __builtin__.property(_get_value, _set_value)

3341

3342

3343 _pyangbind_elements = OrderedDict([('key', key), ('value', value), ])

3344

3345

3346 class yc_request_additional_capability_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_request_additional_capability(PybindBase):

3347 """

3348 This class was auto-generated by the PythonClass plugin for PYANG

3349 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/virtual-compute-desc/request-additional-capability. Each member element of

3350 the container is represented as a class variable - with a specific

3351 YANG type.

3352 """

3353 __slots__ = ('_path_helper', '_extmethods', '__name','__support_mandatory','__min_version','__preferred_version','__target_performance_parameters',)

3354

3355 _yang_name = 'request-additional-capability'

3356 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

3357

3358 _pybind_generated_by = 'container'

3359

3360 def __init__(self, *args, **kwargs):

3361

3362 self._path_helper = False

3363

3364 self._extmethods = False

3365 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3366 self.__support_mandatory = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="support-mandatory", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

3367 self.__min_version = YANGDynClass(base=str, is_leaf=True, yang_name="min-version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3368 self.__preferred_version = YANGDynClass(base=str, is_leaf=True, yang_name="preferred-version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3369 self.__target_performance_parameters = YANGDynClass(base=YANGListType("key",yc_target_performance_parameters_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_request_additional_capability_target_performance_parameters, yang_name="target-performance-parameters", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="target-performance-parameters", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

3370

3371 load = kwargs.pop("load", None)

3372 if args:

3373 if len(args) > 1:

3374 raise TypeError("cannot create a YANG container with >1 argument")

3375 all_attr = True

3376 for e in self._pyangbind_elements:

3377 if not hasattr(args[0], e):

3378 all_attr = False

3379 break

3380 if not all_attr:

3381 raise ValueError("Supplied object did not have the correct attributes")

3382 for e in self._pyangbind_elements:

3383 nobj = getattr(args[0], e)

3384 if nobj._changed() is False:

3385 continue

3386 setmethod = getattr(self, "_set_%s" % e)

3387 if load is None:

3388 setmethod(getattr(args[0], e))

3389 else:

3390 setmethod(getattr(args[0], e), load=load)

3391

3392 def _path(self):

3393 if hasattr(self, "_parent"):

3394 return self._parent._path()+[self._yang_name]

3395 else:

3396 return ['nsd', 'vnfd', 'virtual-compute-desc', 'request-additional-capability']

3397

3398 def _get_name(self):

3399 """

3400 Getter method for name, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/request_additional_capability/name (string)

3401

3402 YANG Description: Identifies a requested additional capability for the

3403 VDU. ETSI GS NFV-IFA 002 [i.1] describes acceleration

3404 capabilities.

3405 """

3406 return self.__name

3407

3408 def _set_name(self, v, load=False):

3409 """

3410 Setter method for name, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/request_additional_capability/name (string)

3411 If this variable is read-only (config: false) in the

3412 source YANG file, then _set_name is considered as a private

3413 method. Backends looking to populate this variable should

3414 do so via calling thisObj._set_name() directly.

3415

3416 YANG Description: Identifies a requested additional capability for the

3417 VDU. ETSI GS NFV-IFA 002 [i.1] describes acceleration

3418 capabilities.

3419 """

3420 parent = getattr(self, "_parent", None)

3421 if parent is not None and load is False:

3422 raise AttributeError("Cannot set keys directly when" +

3423 " within an instantiated list")

3424

3425 if hasattr(v, "_utype"):

3426 v = v._utype(v)

3427 try:

3428 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3429 except (TypeError, ValueError):

3430 raise ValueError({

3431 'error-string': """name must be of a type compatible with string""",

3432 'defined-type': "string",

3433 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

3434 })

3435

3436 self.__name = t

3437 if hasattr(self, '_set'):

3438 self._set()

3439

3440 def _unset_name(self):

3441 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3442

3443

3444 def _get_support_mandatory(self):

3445 """

3446 Getter method for support_mandatory, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/request_additional_capability/support_mandatory (boolean)

3447

3448 YANG Description: Indicates whether the requested additional capability

3449 is mandatory for successful operation.

3450 """

3451 return self.__support_mandatory

3452

3453 def _set_support_mandatory(self, v, load=False):

3454 """

3455 Setter method for support_mandatory, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/request_additional_capability/support_mandatory (boolean)

3456 If this variable is read-only (config: false) in the

3457 source YANG file, then _set_support_mandatory is considered as a private

3458 method. Backends looking to populate this variable should

3459 do so via calling thisObj._set_support_mandatory() directly.

3460

3461 YANG Description: Indicates whether the requested additional capability

3462 is mandatory for successful operation.

3463 """

3464 if hasattr(v, "_utype"):

3465 v = v._utype(v)

3466 try:

3467 t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="support-mandatory", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

3468 except (TypeError, ValueError):

3469 raise ValueError({

3470 'error-string': """support_mandatory must be of a type compatible with boolean""",

3471 'defined-type': "boolean",

3472 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="support-mandatory", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)""",

3473 })

3474

3475 self.__support_mandatory = t

3476 if hasattr(self, '_set'):

3477 self._set()

3478

3479 def _unset_support_mandatory(self):

3480 self.__support_mandatory = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="support-mandatory", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

3481

3482

3483 def _get_min_version(self):

3484 """

3485 Getter method for min_version, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/request_additional_capability/min_version (string)

3486

3487 YANG Description: Identifies the minimum version of the requested

3488 additional capability.

3489 """

3490 return self.__min_version

3491

3492 def _set_min_version(self, v, load=False):

3493 """

3494 Setter method for min_version, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/request_additional_capability/min_version (string)

3495 If this variable is read-only (config: false) in the

3496 source YANG file, then _set_min_version is considered as a private

3497 method. Backends looking to populate this variable should

3498 do so via calling thisObj._set_min_version() directly.

3499

3500 YANG Description: Identifies the minimum version of the requested

3501 additional capability.

3502 """

3503 if hasattr(v, "_utype"):

3504 v = v._utype(v)

3505 try:

3506 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="min-version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3507 except (TypeError, ValueError):

3508 raise ValueError({

3509 'error-string': """min_version must be of a type compatible with string""",

3510 'defined-type': "string",

3511 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="min-version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

3512 })

3513

3514 self.__min_version = t

3515 if hasattr(self, '_set'):

3516 self._set()

3517

3518 def _unset_min_version(self):

3519 self.__min_version = YANGDynClass(base=str, is_leaf=True, yang_name="min-version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3520

3521

3522 def _get_preferred_version(self):

3523 """

3524 Getter method for preferred_version, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/request_additional_capability/preferred_version (string)

3525

3526 YANG Description: Identifies the preferred version of the requested

3527 additional capability.

3528 """

3529 return self.__preferred_version

3530

3531 def _set_preferred_version(self, v, load=False):

3532 """

3533 Setter method for preferred_version, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/request_additional_capability/preferred_version (string)

3534 If this variable is read-only (config: false) in the

3535 source YANG file, then _set_preferred_version is considered as a private

3536 method. Backends looking to populate this variable should

3537 do so via calling thisObj._set_preferred_version() directly.

3538

3539 YANG Description: Identifies the preferred version of the requested

3540 additional capability.

3541 """

3542 if hasattr(v, "_utype"):

3543 v = v._utype(v)

3544 try:

3545 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="preferred-version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3546 except (TypeError, ValueError):

3547 raise ValueError({

3548 'error-string': """preferred_version must be of a type compatible with string""",

3549 'defined-type': "string",

3550 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="preferred-version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

3551 })

3552

3553 self.__preferred_version = t

3554 if hasattr(self, '_set'):

3555 self._set()

3556

3557 def _unset_preferred_version(self):

3558 self.__preferred_version = YANGDynClass(base=str, is_leaf=True, yang_name="preferred-version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3559

3560

3561 def _get_target_performance_parameters(self):

3562 """

3563 Getter method for target_performance_parameters, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/request_additional_capability/target_performance_parameters (list)

3564

3565 YANG Description: Identifies specific attributes, dependent on the

3566 requested additional capability type.

3567 """

3568 return self.__target_performance_parameters

3569

3570 def _set_target_performance_parameters(self, v, load=False):

3571 """

3572 Setter method for target_performance_parameters, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/request_additional_capability/target_performance_parameters (list)

3573 If this variable is read-only (config: false) in the

3574 source YANG file, then _set_target_performance_parameters is considered as a private

3575 method. Backends looking to populate this variable should

3576 do so via calling thisObj._set_target_performance_parameters() directly.

3577

3578 YANG Description: Identifies specific attributes, dependent on the

3579 requested additional capability type.

3580 """

3581 if hasattr(v, "_utype"):

3582 v = v._utype(v)

3583 try:

3584 t = YANGDynClass(v,base=YANGListType("key",yc_target_performance_parameters_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_request_additional_capability_target_performance_parameters, yang_name="target-performance-parameters", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="target-performance-parameters", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

3585 except (TypeError, ValueError):

3586 raise ValueError({

3587 'error-string': """target_performance_parameters must be of a type compatible with list""",

3588 'defined-type': "list",

3589 'generated-type': """YANGDynClass(base=YANGListType("key",yc_target_performance_parameters_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_request_additional_capability_target_performance_parameters, yang_name="target-performance-parameters", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="target-performance-parameters", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

3590 })

3591

3592 self.__target_performance_parameters = t

3593 if hasattr(self, '_set'):

3594 self._set()

3595

3596 def _unset_target_performance_parameters(self):

3597 self.__target_performance_parameters = YANGDynClass(base=YANGListType("key",yc_target_performance_parameters_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_request_additional_capability_target_performance_parameters, yang_name="target-performance-parameters", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="target-performance-parameters", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

3598

3599 name = __builtin__.property(_get_name, _set_name)

3600 support_mandatory = __builtin__.property(_get_support_mandatory, _set_support_mandatory)

3601 min_version = __builtin__.property(_get_min_version, _set_min_version)

3602 preferred_version = __builtin__.property(_get_preferred_version, _set_preferred_version)

3603 target_performance_parameters = __builtin__.property(_get_target_performance_parameters, _set_target_performance_parameters)

3604

3605

3606 _pyangbind_elements = OrderedDict([('name', name), ('support_mandatory', support_mandatory), ('min_version', min_version), ('preferred_version', preferred_version), ('target_performance_parameters', target_performance_parameters), ])

3607

3608

3609 class yc_vdu_mem_requirements_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_memory_vdu_mem_requirements(PybindBase):

3610 """

3611 This class was auto-generated by the PythonClass plugin for PYANG

3612 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/virtual-compute-desc/virtual-memory/vdu-mem-requirements. Each member element of

3613 the container is represented as a class variable - with a specific

3614 YANG type.

3615

3616 YANG Description: Array of key-value pair requirements on the memory for

3617 the VDU.

3618 """

3619 __slots__ = ('_path_helper', '_extmethods', '__key','__value',)

3620

3621 _yang_name = 'vdu-mem-requirements'

3622 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

3623

3624 _pybind_generated_by = 'container'

3625

3626 def __init__(self, *args, **kwargs):

3627

3628 self._path_helper = False

3629

3630 self._extmethods = False

3631 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3632 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3633

3634 load = kwargs.pop("load", None)

3635 if args:

3636 if len(args) > 1:

3637 raise TypeError("cannot create a YANG container with >1 argument")

3638 all_attr = True

3639 for e in self._pyangbind_elements:

3640 if not hasattr(args[0], e):

3641 all_attr = False

3642 break

3643 if not all_attr:

3644 raise ValueError("Supplied object did not have the correct attributes")

3645 for e in self._pyangbind_elements:

3646 nobj = getattr(args[0], e)

3647 if nobj._changed() is False:

3648 continue

3649 setmethod = getattr(self, "_set_%s" % e)

3650 if load is None:

3651 setmethod(getattr(args[0], e))

3652 else:

3653 setmethod(getattr(args[0], e), load=load)

3654

3655 def _path(self):

3656 if hasattr(self, "_parent"):

3657 return self._parent._path()+[self._yang_name]

3658 else:

3659 return ['nsd', 'vnfd', 'virtual-compute-desc', 'virtual-memory', 'vdu-mem-requirements']

3660

3661 def _get_key(self):

3662 """

3663 Getter method for key, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_memory/vdu_mem_requirements/key (string)

3664 """

3665 return self.__key

3666

3667 def _set_key(self, v, load=False):

3668 """

3669 Setter method for key, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_memory/vdu_mem_requirements/key (string)

3670 If this variable is read-only (config: false) in the

3671 source YANG file, then _set_key is considered as a private

3672 method. Backends looking to populate this variable should

3673 do so via calling thisObj._set_key() directly.

3674 """

3675 parent = getattr(self, "_parent", None)

3676 if parent is not None and load is False:

3677 raise AttributeError("Cannot set keys directly when" +

3678 " within an instantiated list")

3679

3680 if hasattr(v, "_utype"):

3681 v = v._utype(v)

3682 try:

3683 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3684 except (TypeError, ValueError):

3685 raise ValueError({

3686 'error-string': """key must be of a type compatible with string""",

3687 'defined-type': "string",

3688 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

3689 })

3690

3691 self.__key = t

3692 if hasattr(self, '_set'):

3693 self._set()

3694

3695 def _unset_key(self):

3696 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3697

3698

3699 def _get_value(self):

3700 """

3701 Getter method for value, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_memory/vdu_mem_requirements/value (string)

3702 """

3703 return self.__value

3704

3705 def _set_value(self, v, load=False):

3706 """

3707 Setter method for value, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_memory/vdu_mem_requirements/value (string)

3708 If this variable is read-only (config: false) in the

3709 source YANG file, then _set_value is considered as a private

3710 method. Backends looking to populate this variable should

3711 do so via calling thisObj._set_value() directly.

3712 """

3713 if hasattr(v, "_utype"):

3714 v = v._utype(v)

3715 try:

3716 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3717 except (TypeError, ValueError):

3718 raise ValueError({

3719 'error-string': """value must be of a type compatible with string""",

3720 'defined-type': "string",

3721 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

3722 })

3723

3724 self.__value = t

3725 if hasattr(self, '_set'):

3726 self._set()

3727

3728 def _unset_value(self):

3729 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3730

3731 key = __builtin__.property(_get_key, _set_key)

3732 value = __builtin__.property(_get_value, _set_value)

3733

3734

3735 _pyangbind_elements = OrderedDict([('key', key), ('value', value), ])

3736

3737

3738 class yc_virtual_memory_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_memory(PybindBase):

3739 """

3740 This class was auto-generated by the PythonClass plugin for PYANG

3741 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/virtual-compute-desc/virtual-memory. Each member element of

3742 the container is represented as a class variable - with a specific

3743 YANG type.

3744

3745 YANG Description: The virtual memory of the virtualised compute.

3746 """

3747 __slots__ = ('_path_helper', '_extmethods', '__size','__over_subscription_policy','__vdu_mem_requirements','__numa_enabled',)

3748

3749 _yang_name = 'virtual-memory'

3750 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

3751

3752 _pybind_generated_by = 'container'

3753

3754 def __init__(self, *args, **kwargs):

3755

3756 self._path_helper = False

3757

3758 self._extmethods = False

3759 self.__size = YANGDynClass(base=RestrictedClassType(base_type=Decimal, restriction_dict={'range': ['0..max']}), default=Decimal(1), is_leaf=True, yang_name="size", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='decimal64', is_config=True)

3760 self.__over_subscription_policy = YANGDynClass(base=str, is_leaf=True, yang_name="over-subscription-policy", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3761 self.__vdu_mem_requirements = YANGDynClass(base=YANGListType("key",yc_vdu_mem_requirements_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_memory_vdu_mem_requirements, yang_name="vdu-mem-requirements", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="vdu-mem-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

3762 self.__numa_enabled = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="numa-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

3763

3764 load = kwargs.pop("load", None)

3765 if args:

3766 if len(args) > 1:

3767 raise TypeError("cannot create a YANG container with >1 argument")

3768 all_attr = True

3769 for e in self._pyangbind_elements:

3770 if not hasattr(args[0], e):

3771 all_attr = False

3772 break

3773 if not all_attr:

3774 raise ValueError("Supplied object did not have the correct attributes")

3775 for e in self._pyangbind_elements:

3776 nobj = getattr(args[0], e)

3777 if nobj._changed() is False:

3778 continue

3779 setmethod = getattr(self, "_set_%s" % e)

3780 if load is None:

3781 setmethod(getattr(args[0], e))

3782 else:

3783 setmethod(getattr(args[0], e), load=load)

3784

3785 def _path(self):

3786 if hasattr(self, "_parent"):

3787 return self._parent._path()+[self._yang_name]

3788 else:

3789 return ['nsd', 'vnfd', 'virtual-compute-desc', 'virtual-memory']

3790

3791 def _get_size(self):

3792 """

3793 Getter method for size, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_memory/size (decimal64)

3794

3795 YANG Description: Amount of virtual memory in GB.

3796 """

3797 return self.__size

3798

3799 def _set_size(self, v, load=False):

3800 """

3801 Setter method for size, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_memory/size (decimal64)

3802 If this variable is read-only (config: false) in the

3803 source YANG file, then _set_size is considered as a private

3804 method. Backends looking to populate this variable should

3805 do so via calling thisObj._set_size() directly.

3806

3807 YANG Description: Amount of virtual memory in GB.

3808 """

3809 if hasattr(v, "_utype"):

3810 v = v._utype(v)

3811 try:

3812 t = YANGDynClass(v,base=RestrictedClassType(base_type=Decimal, restriction_dict={'range': ['0..max']}), default=Decimal(1), is_leaf=True, yang_name="size", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='decimal64', is_config=True)

3813 except (TypeError, ValueError):

3814 raise ValueError({

3815 'error-string': """size must be of a type compatible with decimal64""",

3816 'defined-type': "decimal64",

3817 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=Decimal, restriction_dict={'range': ['0..max']}), default=Decimal(1), is_leaf=True, yang_name="size", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='decimal64', is_config=True)""",

3818 })

3819

3820 self.__size = t

3821 if hasattr(self, '_set'):

3822 self._set()

3823

3824 def _unset_size(self):

3825 self.__size = YANGDynClass(base=RestrictedClassType(base_type=Decimal, restriction_dict={'range': ['0..max']}), default=Decimal(1), is_leaf=True, yang_name="size", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='decimal64', is_config=True)

3826

3827

3828 def _get_over_subscription_policy(self):

3829 """

3830 Getter method for over_subscription_policy, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_memory/over_subscription_policy (string)

3831

3832 YANG Description: The memory core oversubscription policy in terms of

3833 virtual memory to physical memory on the platform.

3834 The cardinality can be 0 during the allocation

3835 request, if no particular value is requested.

3836 """

3837 return self.__over_subscription_policy

3838

3839 def _set_over_subscription_policy(self, v, load=False):

3840 """

3841 Setter method for over_subscription_policy, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_memory/over_subscription_policy (string)

3842 If this variable is read-only (config: false) in the

3843 source YANG file, then _set_over_subscription_policy is considered as a private

3844 method. Backends looking to populate this variable should

3845 do so via calling thisObj._set_over_subscription_policy() directly.

3846

3847 YANG Description: The memory core oversubscription policy in terms of

3848 virtual memory to physical memory on the platform.

3849 The cardinality can be 0 during the allocation

3850 request, if no particular value is requested.

3851 """

3852 if hasattr(v, "_utype"):

3853 v = v._utype(v)

3854 try:

3855 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="over-subscription-policy", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3856 except (TypeError, ValueError):

3857 raise ValueError({

3858 'error-string': """over_subscription_policy must be of a type compatible with string""",

3859 'defined-type': "string",

3860 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="over-subscription-policy", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

3861 })

3862

3863 self.__over_subscription_policy = t

3864 if hasattr(self, '_set'):

3865 self._set()

3866

3867 def _unset_over_subscription_policy(self):

3868 self.__over_subscription_policy = YANGDynClass(base=str, is_leaf=True, yang_name="over-subscription-policy", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3869

3870

3871 def _get_vdu_mem_requirements(self):

3872 """

3873 Getter method for vdu_mem_requirements, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_memory/vdu_mem_requirements (list)

3874

3875 YANG Description: Array of key-value pair requirements on the memory for

3876 the VDU.

3877 """

3878 return self.__vdu_mem_requirements

3879

3880 def _set_vdu_mem_requirements(self, v, load=False):

3881 """

3882 Setter method for vdu_mem_requirements, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_memory/vdu_mem_requirements (list)

3883 If this variable is read-only (config: false) in the

3884 source YANG file, then _set_vdu_mem_requirements is considered as a private

3885 method. Backends looking to populate this variable should

3886 do so via calling thisObj._set_vdu_mem_requirements() directly.

3887

3888 YANG Description: Array of key-value pair requirements on the memory for

3889 the VDU.

3890 """

3891 if hasattr(v, "_utype"):

3892 v = v._utype(v)

3893 try:

3894 t = YANGDynClass(v,base=YANGListType("key",yc_vdu_mem_requirements_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_memory_vdu_mem_requirements, yang_name="vdu-mem-requirements", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="vdu-mem-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

3895 except (TypeError, ValueError):

3896 raise ValueError({

3897 'error-string': """vdu_mem_requirements must be of a type compatible with list""",

3898 'defined-type': "list",

3899 'generated-type': """YANGDynClass(base=YANGListType("key",yc_vdu_mem_requirements_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_memory_vdu_mem_requirements, yang_name="vdu-mem-requirements", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="vdu-mem-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

3900 })

3901

3902 self.__vdu_mem_requirements = t

3903 if hasattr(self, '_set'):

3904 self._set()

3905

3906 def _unset_vdu_mem_requirements(self):

3907 self.__vdu_mem_requirements = YANGDynClass(base=YANGListType("key",yc_vdu_mem_requirements_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_memory_vdu_mem_requirements, yang_name="vdu-mem-requirements", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="vdu-mem-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

3908

3909

3910 def _get_numa_enabled(self):

3911 """

3912 Getter method for numa_enabled, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_memory/numa_enabled (boolean)

3913

3914 YANG Description: It specifies the memory allocation to be cognisant of

3915 the relevant process/core allocation. The cardinality

3916 can be 0 during the allocation request, if no

3917 particular value is requested.

3918 """

3919 return self.__numa_enabled

3920

3921 def _set_numa_enabled(self, v, load=False):

3922 """

3923 Setter method for numa_enabled, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_memory/numa_enabled (boolean)

3924 If this variable is read-only (config: false) in the

3925 source YANG file, then _set_numa_enabled is considered as a private

3926 method. Backends looking to populate this variable should

3927 do so via calling thisObj._set_numa_enabled() directly.

3928

3929 YANG Description: It specifies the memory allocation to be cognisant of

3930 the relevant process/core allocation. The cardinality

3931 can be 0 during the allocation request, if no

3932 particular value is requested.

3933 """

3934 if hasattr(v, "_utype"):

3935 v = v._utype(v)

3936 try:

3937 t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="numa-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

3938 except (TypeError, ValueError):

3939 raise ValueError({

3940 'error-string': """numa_enabled must be of a type compatible with boolean""",

3941 'defined-type': "boolean",

3942 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="numa-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)""",

3943 })

3944

3945 self.__numa_enabled = t

3946 if hasattr(self, '_set'):

3947 self._set()

3948

3949 def _unset_numa_enabled(self):

3950 self.__numa_enabled = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="numa-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

3951

3952 size = __builtin__.property(_get_size, _set_size)

3953 over_subscription_policy = __builtin__.property(_get_over_subscription_policy, _set_over_subscription_policy)

3954 vdu_mem_requirements = __builtin__.property(_get_vdu_mem_requirements, _set_vdu_mem_requirements)

3955 numa_enabled = __builtin__.property(_get_numa_enabled, _set_numa_enabled)

3956

3957

3958 _pyangbind_elements = OrderedDict([('size', size), ('over_subscription_policy', over_subscription_policy), ('vdu_mem_requirements', vdu_mem_requirements), ('numa_enabled', numa_enabled), ])

3959

3960

3961 class yc_vdu_cpu_requirements_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_cpu_vdu_cpu_requirements(PybindBase):

3962 """

3963 This class was auto-generated by the PythonClass plugin for PYANG

3964 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/virtual-compute-desc/virtual-cpu/vdu-cpu-requirements. Each member element of

3965 the container is represented as a class variable - with a specific

3966 YANG type.

3967

3968 YANG Description: Array of key-value pair requirements on the compute

3969(CPU) for the VDU.

3970 """

3971 __slots__ = ('_path_helper', '_extmethods', '__key','__value',)

3972

3973 _yang_name = 'vdu-cpu-requirements'

3974 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

3975

3976 _pybind_generated_by = 'container'

3977

3978 def __init__(self, *args, **kwargs):

3979

3980 self._path_helper = False

3981

3982 self._extmethods = False

3983 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3984 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

3985

3986 load = kwargs.pop("load", None)

3987 if args:

3988 if len(args) > 1:

3989 raise TypeError("cannot create a YANG container with >1 argument")

3990 all_attr = True

3991 for e in self._pyangbind_elements:

3992 if not hasattr(args[0], e):

3993 all_attr = False

3994 break

3995 if not all_attr:

3996 raise ValueError("Supplied object did not have the correct attributes")

3997 for e in self._pyangbind_elements:

3998 nobj = getattr(args[0], e)

3999 if nobj._changed() is False:

4000 continue

4001 setmethod = getattr(self, "_set_%s" % e)

4002 if load is None:

4003 setmethod(getattr(args[0], e))

4004 else:

4005 setmethod(getattr(args[0], e), load=load)

4006

4007 def _path(self):

4008 if hasattr(self, "_parent"):

4009 return self._parent._path()+[self._yang_name]

4010 else:

4011 return ['nsd', 'vnfd', 'virtual-compute-desc', 'virtual-cpu', 'vdu-cpu-requirements']

4012

4013 def _get_key(self):

4014 """

4015 Getter method for key, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu/vdu_cpu_requirements/key (string)

4016 """

4017 return self.__key

4018

4019 def _set_key(self, v, load=False):

4020 """

4021 Setter method for key, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu/vdu_cpu_requirements/key (string)

4022 If this variable is read-only (config: false) in the

4023 source YANG file, then _set_key is considered as a private

4024 method. Backends looking to populate this variable should

4025 do so via calling thisObj._set_key() directly.

4026 """

4027 parent = getattr(self, "_parent", None)

4028 if parent is not None and load is False:

4029 raise AttributeError("Cannot set keys directly when" +

4030 " within an instantiated list")

4031

4032 if hasattr(v, "_utype"):

4033 v = v._utype(v)

4034 try:

4035 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

4036 except (TypeError, ValueError):

4037 raise ValueError({

4038 'error-string': """key must be of a type compatible with string""",

4039 'defined-type': "string",

4040 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

4041 })

4042

4043 self.__key = t

4044 if hasattr(self, '_set'):

4045 self._set()

4046

4047 def _unset_key(self):

4048 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

4049

4050

4051 def _get_value(self):

4052 """

4053 Getter method for value, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu/vdu_cpu_requirements/value (string)

4054 """

4055 return self.__value

4056

4057 def _set_value(self, v, load=False):

4058 """

4059 Setter method for value, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu/vdu_cpu_requirements/value (string)

4060 If this variable is read-only (config: false) in the

4061 source YANG file, then _set_value is considered as a private

4062 method. Backends looking to populate this variable should

4063 do so via calling thisObj._set_value() directly.

4064 """

4065 if hasattr(v, "_utype"):

4066 v = v._utype(v)

4067 try:

4068 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

4069 except (TypeError, ValueError):

4070 raise ValueError({

4071 'error-string': """value must be of a type compatible with string""",

4072 'defined-type': "string",

4073 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

4074 })

4075

4076 self.__value = t

4077 if hasattr(self, '_set'):

4078 self._set()

4079

4080 def _unset_value(self):

4081 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

4082

4083 key = __builtin__.property(_get_key, _set_key)

4084 value = __builtin__.property(_get_value, _set_value)

4085

4086

4087 _pyangbind_elements = OrderedDict([('key', key), ('value', value), ])

4088

4089

4090 class yc_rule_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_cpu_pinning_rule(PybindBase):

4091 """

4092 This class was auto-generated by the PythonClass plugin for PYANG

4093 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/virtual-compute-desc/virtual-cpu/pinning/rule. Each member element of

4094 the container is represented as a class variable - with a specific

4095 YANG type.

4096

4097 YANG Description: A list of rules that should be considered during the

4098 allocation of the virtual CPUs to logical CPUs in case

4099 of 'static' virtualCpuPinningPolicy.

4100 """

4101 __slots__ = ('_path_helper', '_extmethods', '__key','__value',)

4102

4103 _yang_name = 'rule'

4104 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

4105

4106 _pybind_generated_by = 'container'

4107

4108 def __init__(self, *args, **kwargs):

4109

4110 self._path_helper = False

4111

4112 self._extmethods = False

4113 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

4114 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

4115

4116 load = kwargs.pop("load", None)

4117 if args:

4118 if len(args) > 1:

4119 raise TypeError("cannot create a YANG container with >1 argument")

4120 all_attr = True

4121 for e in self._pyangbind_elements:

4122 if not hasattr(args[0], e):

4123 all_attr = False

4124 break

4125 if not all_attr:

4126 raise ValueError("Supplied object did not have the correct attributes")

4127 for e in self._pyangbind_elements:

4128 nobj = getattr(args[0], e)

4129 if nobj._changed() is False:

4130 continue

4131 setmethod = getattr(self, "_set_%s" % e)

4132 if load is None:

4133 setmethod(getattr(args[0], e))

4134 else:

4135 setmethod(getattr(args[0], e), load=load)

4136

4137 def _path(self):

4138 if hasattr(self, "_parent"):

4139 return self._parent._path()+[self._yang_name]

4140 else:

4141 return ['nsd', 'vnfd', 'virtual-compute-desc', 'virtual-cpu', 'pinning', 'rule']

4142

4143 def _get_key(self):

4144 """

4145 Getter method for key, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu/pinning/rule/key (string)

4146 """

4147 return self.__key

4148

4149 def _set_key(self, v, load=False):

4150 """

4151 Setter method for key, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu/pinning/rule/key (string)

4152 If this variable is read-only (config: false) in the

4153 source YANG file, then _set_key is considered as a private

4154 method. Backends looking to populate this variable should

4155 do so via calling thisObj._set_key() directly.

4156 """

4157 parent = getattr(self, "_parent", None)

4158 if parent is not None and load is False:

4159 raise AttributeError("Cannot set keys directly when" +

4160 " within an instantiated list")

4161

4162 if hasattr(v, "_utype"):

4163 v = v._utype(v)

4164 try:

4165 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

4166 except (TypeError, ValueError):

4167 raise ValueError({

4168 'error-string': """key must be of a type compatible with string""",

4169 'defined-type': "string",

4170 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

4171 })

4172

4173 self.__key = t

4174 if hasattr(self, '_set'):

4175 self._set()

4176

4177 def _unset_key(self):

4178 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

4179

4180

4181 def _get_value(self):

4182 """

4183 Getter method for value, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu/pinning/rule/value (string)

4184 """

4185 return self.__value

4186

4187 def _set_value(self, v, load=False):

4188 """

4189 Setter method for value, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu/pinning/rule/value (string)

4190 If this variable is read-only (config: false) in the

4191 source YANG file, then _set_value is considered as a private

4192 method. Backends looking to populate this variable should

4193 do so via calling thisObj._set_value() directly.

4194 """

4195 if hasattr(v, "_utype"):

4196 v = v._utype(v)

4197 try:

4198 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

4199 except (TypeError, ValueError):

4200 raise ValueError({

4201 'error-string': """value must be of a type compatible with string""",

4202 'defined-type': "string",

4203 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

4204 })

4205

4206 self.__value = t

4207 if hasattr(self, '_set'):

4208 self._set()

4209

4210 def _unset_value(self):

4211 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

4212

4213 key = __builtin__.property(_get_key, _set_key)

4214 value = __builtin__.property(_get_value, _set_value)

4215

4216

4217 _pyangbind_elements = OrderedDict([('key', key), ('value', value), ])

4218

4219

4220 class yc_pinning_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_cpu_pinning(PybindBase):

4221 """

4222 This class was auto-generated by the PythonClass plugin for PYANG

4223 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/virtual-compute-desc/virtual-cpu/pinning. Each member element of

4224 the container is represented as a class variable - with a specific

4225 YANG type.

4226

4227 YANG Description: The virtual CPU pinning configuration for the

4228 virtualised compute resource.

4229 """

4230 __slots__ = ('_path_helper', '_extmethods', '__policy','__rule',)

4231

4232 _yang_name = 'pinning'

4233 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

4234

4235 _pybind_generated_by = 'container'

4236

4237 def __init__(self, *args, **kwargs):

4238

4239 self._path_helper = False

4240

4241 self._extmethods = False

4242 self.__policy = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'static': {}, 'dynamic': {}},), default=str("dynamic"), is_leaf=True, yang_name="policy", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

4243 self.__rule = YANGDynClass(base=YANGListType("key",yc_rule_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_cpu_pinning_rule, yang_name="rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

4244

4245 load = kwargs.pop("load", None)

4246 if args:

4247 if len(args) > 1:

4248 raise TypeError("cannot create a YANG container with >1 argument")

4249 all_attr = True

4250 for e in self._pyangbind_elements:

4251 if not hasattr(args[0], e):

4252 all_attr = False

4253 break

4254 if not all_attr:

4255 raise ValueError("Supplied object did not have the correct attributes")

4256 for e in self._pyangbind_elements:

4257 nobj = getattr(args[0], e)

4258 if nobj._changed() is False:

4259 continue

4260 setmethod = getattr(self, "_set_%s" % e)

4261 if load is None:

4262 setmethod(getattr(args[0], e))

4263 else:

4264 setmethod(getattr(args[0], e), load=load)

4265

4266 def _path(self):

4267 if hasattr(self, "_parent"):

4268 return self._parent._path()+[self._yang_name]

4269 else:

4270 return ['nsd', 'vnfd', 'virtual-compute-desc', 'virtual-cpu', 'pinning']

4271

4272 def _get_policy(self):

4273 """

4274 Getter method for policy, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu/pinning/policy (enumeration)

4275

4276 YANG Description: The policy can take values of 'static' or 'dynamic'.

4277 In case of 'static' the virtual CPU cores are

4278 requested to be allocated to logical CPU cores

4279 according to the rules defined in

4280 virtualCpuPinningRules. In case of 'dynamic' the

4281 allocation of virtual CPU cores to logical CPU cores

4282 is decided by the VIM. (e.g. SMT (Simultaneous

4283 MultiThreading) requirements).

4284 """

4285 return self.__policy

4286

4287 def _set_policy(self, v, load=False):

4288 """

4289 Setter method for policy, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu/pinning/policy (enumeration)

4290 If this variable is read-only (config: false) in the

4291 source YANG file, then _set_policy is considered as a private

4292 method. Backends looking to populate this variable should

4293 do so via calling thisObj._set_policy() directly.

4294

4295 YANG Description: The policy can take values of 'static' or 'dynamic'.

4296 In case of 'static' the virtual CPU cores are

4297 requested to be allocated to logical CPU cores

4298 according to the rules defined in

4299 virtualCpuPinningRules. In case of 'dynamic' the

4300 allocation of virtual CPU cores to logical CPU cores

4301 is decided by the VIM. (e.g. SMT (Simultaneous

4302 MultiThreading) requirements).

4303 """

4304 if hasattr(v, "_utype"):

4305 v = v._utype(v)

4306 try:

4307 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'static': {}, 'dynamic': {}},), default=str("dynamic"), is_leaf=True, yang_name="policy", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

4308 except (TypeError, ValueError):

4309 raise ValueError({

4310 'error-string': """policy must be of a type compatible with enumeration""",

4311 'defined-type': "etsi-nfv-nsd:enumeration",

4312 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'static': {}, 'dynamic': {}},), default=str("dynamic"), is_leaf=True, yang_name="policy", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)""",

4313 })

4314

4315 self.__policy = t

4316 if hasattr(self, '_set'):

4317 self._set()

4318

4319 def _unset_policy(self):

4320 self.__policy = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'static': {}, 'dynamic': {}},), default=str("dynamic"), is_leaf=True, yang_name="policy", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

4321

4322

4323 def _get_rule(self):

4324 """

4325 Getter method for rule, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu/pinning/rule (list)

4326

4327 YANG Description: A list of rules that should be considered during the

4328 allocation of the virtual CPUs to logical CPUs in case

4329 of 'static' virtualCpuPinningPolicy.

4330 """

4331 return self.__rule

4332

4333 def _set_rule(self, v, load=False):

4334 """

4335 Setter method for rule, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu/pinning/rule (list)

4336 If this variable is read-only (config: false) in the

4337 source YANG file, then _set_rule is considered as a private

4338 method. Backends looking to populate this variable should

4339 do so via calling thisObj._set_rule() directly.

4340

4341 YANG Description: A list of rules that should be considered during the

4342 allocation of the virtual CPUs to logical CPUs in case

4343 of 'static' virtualCpuPinningPolicy.

4344 """

4345 if hasattr(v, "_utype"):

4346 v = v._utype(v)

4347 try:

4348 t = YANGDynClass(v,base=YANGListType("key",yc_rule_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_cpu_pinning_rule, yang_name="rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

4349 except (TypeError, ValueError):

4350 raise ValueError({

4351 'error-string': """rule must be of a type compatible with list""",

4352 'defined-type': "list",

4353 'generated-type': """YANGDynClass(base=YANGListType("key",yc_rule_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_cpu_pinning_rule, yang_name="rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

4354 })

4355

4356 self.__rule = t

4357 if hasattr(self, '_set'):

4358 self._set()

4359

4360 def _unset_rule(self):

4361 self.__rule = YANGDynClass(base=YANGListType("key",yc_rule_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_cpu_pinning_rule, yang_name="rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

4362

4363 policy = __builtin__.property(_get_policy, _set_policy)

4364 rule = __builtin__.property(_get_rule, _set_rule)

4365

4366

4367 _pyangbind_elements = OrderedDict([('policy', policy), ('rule', rule), ])

4368

4369

4370 class yc_virtual_cpu_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_cpu(PybindBase):

4371 """

4372 This class was auto-generated by the PythonClass plugin for PYANG

4373 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/virtual-compute-desc/virtual-cpu. Each member element of

4374 the container is represented as a class variable - with a specific

4375 YANG type.

4376

4377 YANG Description: The virtual CPU(s)of the virtualised compute.

4378 """

4379 __slots__ = ('_path_helper', '_extmethods', '__cpu_architecture','__num_virtual_cpu','__clock','__oversubscription_policy','__vdu_cpu_requirements','__pinning',)

4380

4381 _yang_name = 'virtual-cpu'

4382 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

4383

4384 _pybind_generated_by = 'container'

4385

4386 def __init__(self, *args, **kwargs):

4387

4388 self._path_helper = False

4389

4390 self._extmethods = False

4391 self.__cpu_architecture = YANGDynClass(base=str, is_leaf=True, yang_name="cpu-architecture", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

4392 self.__num_virtual_cpu = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), restriction_dict={'range': ['1..max']}), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="num-virtual-cpu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

4393 self.__clock = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="clock", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

4394 self.__oversubscription_policy = YANGDynClass(base=str, is_leaf=True, yang_name="oversubscription-policy", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

4395 self.__vdu_cpu_requirements = YANGDynClass(base=YANGListType("key",yc_vdu_cpu_requirements_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_cpu_vdu_cpu_requirements, yang_name="vdu-cpu-requirements", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="vdu-cpu-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

4396 self.__pinning = YANGDynClass(base=yc_pinning_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_cpu_pinning, is_container='container', yang_name="pinning", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

4397

4398 load = kwargs.pop("load", None)

4399 if args:

4400 if len(args) > 1:

4401 raise TypeError("cannot create a YANG container with >1 argument")

4402 all_attr = True

4403 for e in self._pyangbind_elements:

4404 if not hasattr(args[0], e):

4405 all_attr = False

4406 break

4407 if not all_attr:

4408 raise ValueError("Supplied object did not have the correct attributes")

4409 for e in self._pyangbind_elements:

4410 nobj = getattr(args[0], e)

4411 if nobj._changed() is False:

4412 continue

4413 setmethod = getattr(self, "_set_%s" % e)

4414 if load is None:

4415 setmethod(getattr(args[0], e))

4416 else:

4417 setmethod(getattr(args[0], e), load=load)

4418

4419 def _path(self):

4420 if hasattr(self, "_parent"):

4421 return self._parent._path()+[self._yang_name]

4422 else:

4423 return ['nsd', 'vnfd', 'virtual-compute-desc', 'virtual-cpu']

4424

4425 def _get_cpu_architecture(self):

4426 """

4427 Getter method for cpu_architecture, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu/cpu_architecture (string)

4428

4429 YANG Description: CPU architecture type. Examples are x86, ARM. The

4430 cardinality can be 0 during the allocation request,

4431 if no particular CPU architecture type is requested.

4432 """

4433 return self.__cpu_architecture

4434

4435 def _set_cpu_architecture(self, v, load=False):

4436 """

4437 Setter method for cpu_architecture, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu/cpu_architecture (string)

4438 If this variable is read-only (config: false) in the

4439 source YANG file, then _set_cpu_architecture is considered as a private

4440 method. Backends looking to populate this variable should

4441 do so via calling thisObj._set_cpu_architecture() directly.

4442

4443 YANG Description: CPU architecture type. Examples are x86, ARM. The

4444 cardinality can be 0 during the allocation request,

4445 if no particular CPU architecture type is requested.

4446 """

4447 if hasattr(v, "_utype"):

4448 v = v._utype(v)

4449 try:

4450 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="cpu-architecture", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

4451 except (TypeError, ValueError):

4452 raise ValueError({

4453 'error-string': """cpu_architecture must be of a type compatible with string""",

4454 'defined-type': "string",

4455 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="cpu-architecture", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

4456 })

4457

4458 self.__cpu_architecture = t

4459 if hasattr(self, '_set'):

4460 self._set()

4461

4462 def _unset_cpu_architecture(self):

4463 self.__cpu_architecture = YANGDynClass(base=str, is_leaf=True, yang_name="cpu-architecture", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

4464

4465

4466 def _get_num_virtual_cpu(self):

4467 """

4468 Getter method for num_virtual_cpu, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu/num_virtual_cpu (uint16)

4469

4470 YANG Description: Number of virtual CPUs.

4471 """

4472 return self.__num_virtual_cpu

4473

4474 def _set_num_virtual_cpu(self, v, load=False):

4475 """

4476 Setter method for num_virtual_cpu, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu/num_virtual_cpu (uint16)

4477 If this variable is read-only (config: false) in the

4478 source YANG file, then _set_num_virtual_cpu is considered as a private

4479 method. Backends looking to populate this variable should

4480 do so via calling thisObj._set_num_virtual_cpu() directly.

4481

4482 YANG Description: Number of virtual CPUs.

4483 """

4484 if hasattr(v, "_utype"):

4485 v = v._utype(v)

4486 try:

4487 t = YANGDynClass(v,base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), restriction_dict={'range': ['1..max']}), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="num-virtual-cpu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

4488 except (TypeError, ValueError):

4489 raise ValueError({

4490 'error-string': """num_virtual_cpu must be of a type compatible with uint16""",

4491 'defined-type': "uint16",

4492 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), restriction_dict={'range': ['1..max']}), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="num-virtual-cpu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)""",

4493 })

4494

4495 self.__num_virtual_cpu = t

4496 if hasattr(self, '_set'):

4497 self._set()

4498

4499 def _unset_num_virtual_cpu(self):

4500 self.__num_virtual_cpu = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), restriction_dict={'range': ['1..max']}), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="num-virtual-cpu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

4501

4502

4503 def _get_clock(self):

4504 """

4505 Getter method for clock, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu/clock (uint32)

4506

4507 YANG Description: Minimum virtual CPU clock rate (e.g. in MHz). The

4508 cardinality can be 0 during the allocation request,

4509 if no particular value is requested.

4510 """

4511 return self.__clock

4512

4513 def _set_clock(self, v, load=False):

4514 """

4515 Setter method for clock, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu/clock (uint32)

4516 If this variable is read-only (config: false) in the

4517 source YANG file, then _set_clock is considered as a private

4518 method. Backends looking to populate this variable should

4519 do so via calling thisObj._set_clock() directly.

4520

4521 YANG Description: Minimum virtual CPU clock rate (e.g. in MHz). The

4522 cardinality can be 0 during the allocation request,

4523 if no particular value is requested.

4524 """

4525 if hasattr(v, "_utype"):

4526 v = v._utype(v)

4527 try:

4528 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="clock", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

4529 except (TypeError, ValueError):

4530 raise ValueError({

4531 'error-string': """clock must be of a type compatible with uint32""",

4532 'defined-type': "uint32",

4533 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="clock", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)""",

4534 })

4535

4536 self.__clock = t

4537 if hasattr(self, '_set'):

4538 self._set()

4539

4540 def _unset_clock(self):

4541 self.__clock = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="clock", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

4542

4543

4544 def _get_oversubscription_policy(self):

4545 """

4546 Getter method for oversubscription_policy, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu/oversubscription_policy (string)

4547

4548 YANG Description: The CPU core oversubscription policy e.g. the relation

4549 of virtual CPU cores to physical CPU cores/threads.

4550 The cardinality can be 0 during the allocation request,

4551 if no particular value is requested.

4552 """

4553 return self.__oversubscription_policy

4554

4555 def _set_oversubscription_policy(self, v, load=False):

4556 """

4557 Setter method for oversubscription_policy, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu/oversubscription_policy (string)

4558 If this variable is read-only (config: false) in the

4559 source YANG file, then _set_oversubscription_policy is considered as a private

4560 method. Backends looking to populate this variable should

4561 do so via calling thisObj._set_oversubscription_policy() directly.

4562

4563 YANG Description: The CPU core oversubscription policy e.g. the relation

4564 of virtual CPU cores to physical CPU cores/threads.

4565 The cardinality can be 0 during the allocation request,

4566 if no particular value is requested.

4567 """

4568 if hasattr(v, "_utype"):

4569 v = v._utype(v)

4570 try:

4571 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="oversubscription-policy", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

4572 except (TypeError, ValueError):

4573 raise ValueError({

4574 'error-string': """oversubscription_policy must be of a type compatible with string""",

4575 'defined-type': "string",

4576 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="oversubscription-policy", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

4577 })

4578

4579 self.__oversubscription_policy = t

4580 if hasattr(self, '_set'):

4581 self._set()

4582

4583 def _unset_oversubscription_policy(self):

4584 self.__oversubscription_policy = YANGDynClass(base=str, is_leaf=True, yang_name="oversubscription-policy", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

4585

4586

4587 def _get_vdu_cpu_requirements(self):

4588 """

4589 Getter method for vdu_cpu_requirements, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu/vdu_cpu_requirements (list)

4590

4591 YANG Description: Array of key-value pair requirements on the compute

4592(CPU) for the VDU.

4593 """

4594 return self.__vdu_cpu_requirements

4595

4596 def _set_vdu_cpu_requirements(self, v, load=False):

4597 """

4598 Setter method for vdu_cpu_requirements, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu/vdu_cpu_requirements (list)

4599 If this variable is read-only (config: false) in the

4600 source YANG file, then _set_vdu_cpu_requirements is considered as a private

4601 method. Backends looking to populate this variable should

4602 do so via calling thisObj._set_vdu_cpu_requirements() directly.

4603

4604 YANG Description: Array of key-value pair requirements on the compute

4605(CPU) for the VDU.

4606 """

4607 if hasattr(v, "_utype"):

4608 v = v._utype(v)

4609 try:

4610 t = YANGDynClass(v,base=YANGListType("key",yc_vdu_cpu_requirements_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_cpu_vdu_cpu_requirements, yang_name="vdu-cpu-requirements", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="vdu-cpu-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

4611 except (TypeError, ValueError):

4612 raise ValueError({

4613 'error-string': """vdu_cpu_requirements must be of a type compatible with list""",

4614 'defined-type': "list",

4615 'generated-type': """YANGDynClass(base=YANGListType("key",yc_vdu_cpu_requirements_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_cpu_vdu_cpu_requirements, yang_name="vdu-cpu-requirements", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="vdu-cpu-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

4616 })

4617

4618 self.__vdu_cpu_requirements = t

4619 if hasattr(self, '_set'):

4620 self._set()

4621

4622 def _unset_vdu_cpu_requirements(self):

4623 self.__vdu_cpu_requirements = YANGDynClass(base=YANGListType("key",yc_vdu_cpu_requirements_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_cpu_vdu_cpu_requirements, yang_name="vdu-cpu-requirements", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="vdu-cpu-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

4624

4625

4626 def _get_pinning(self):

4627 """

4628 Getter method for pinning, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu/pinning (container)

4629

4630 YANG Description: The virtual CPU pinning configuration for the

4631 virtualised compute resource.

4632 """

4633 return self.__pinning

4634

4635 def _set_pinning(self, v, load=False):

4636 """

4637 Setter method for pinning, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu/pinning (container)

4638 If this variable is read-only (config: false) in the

4639 source YANG file, then _set_pinning is considered as a private

4640 method. Backends looking to populate this variable should

4641 do so via calling thisObj._set_pinning() directly.

4642

4643 YANG Description: The virtual CPU pinning configuration for the

4644 virtualised compute resource.

4645 """

4646 if hasattr(v, "_utype"):

4647 v = v._utype(v)

4648 try:

4649 t = YANGDynClass(v,base=yc_pinning_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_cpu_pinning, is_container='container', yang_name="pinning", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

4650 except (TypeError, ValueError):

4651 raise ValueError({

4652 'error-string': """pinning must be of a type compatible with container""",

4653 'defined-type': "container",

4654 'generated-type': """YANGDynClass(base=yc_pinning_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_cpu_pinning, is_container='container', yang_name="pinning", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

4655 })

4656

4657 self.__pinning = t

4658 if hasattr(self, '_set'):

4659 self._set()

4660

4661 def _unset_pinning(self):

4662 self.__pinning = YANGDynClass(base=yc_pinning_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_cpu_pinning, is_container='container', yang_name="pinning", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

4663

4664 cpu_architecture = __builtin__.property(_get_cpu_architecture, _set_cpu_architecture)

4665 num_virtual_cpu = __builtin__.property(_get_num_virtual_cpu, _set_num_virtual_cpu)

4666 clock = __builtin__.property(_get_clock, _set_clock)

4667 oversubscription_policy = __builtin__.property(_get_oversubscription_policy, _set_oversubscription_policy)

4668 vdu_cpu_requirements = __builtin__.property(_get_vdu_cpu_requirements, _set_vdu_cpu_requirements)

4669 pinning = __builtin__.property(_get_pinning, _set_pinning)

4670

4671

4672 _pyangbind_elements = OrderedDict([('cpu_architecture', cpu_architecture), ('num_virtual_cpu', num_virtual_cpu), ('clock', clock), ('oversubscription_policy', oversubscription_policy), ('vdu_cpu_requirements', vdu_cpu_requirements), ('pinning', pinning), ])

4673

4674

4675 class yc_virtual_compute_desc_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc(PybindBase):

4676 """

4677 This class was auto-generated by the PythonClass plugin for PYANG

4678 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/virtual-compute-desc. Each member element of

4679 the container is represented as a class variable - with a specific

4680 YANG type.

4681

4682 YANG Description: Defines descriptors of virtual compute resources to be

4683 used by the VNF.

4684 """

4685 __slots__ = ('_path_helper', '_extmethods', '__id','__logical_node','__request_additional_capability','__compute_requirements','__virtual_memory','__virtual_cpu',)

4686

4687 _yang_name = 'virtual-compute-desc'

4688 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

4689

4690 _pybind_generated_by = 'container'

4691

4692 def __init__(self, *args, **kwargs):

4693

4694 self._path_helper = False

4695

4696 self._extmethods = False

4697 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

4698 self.__logical_node = YANGDynClass(base=YANGListType("id",yc_logical_node_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_logical_node, yang_name="logical-node", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="logical-node", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

4699 self.__request_additional_capability = YANGDynClass(base=YANGListType("name",yc_request_additional_capability_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_request_additional_capability, yang_name="request-additional-capability", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="request-additional-capability", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

4700 self.__compute_requirements = YANGDynClass(base=str, is_leaf=True, yang_name="compute-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

4701 self.__virtual_memory = YANGDynClass(base=yc_virtual_memory_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_memory, is_container='container', yang_name="virtual-memory", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

4702 self.__virtual_cpu = YANGDynClass(base=yc_virtual_cpu_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_cpu, is_container='container', yang_name="virtual-cpu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

4703

4704 load = kwargs.pop("load", None)

4705 if args:

4706 if len(args) > 1:

4707 raise TypeError("cannot create a YANG container with >1 argument")

4708 all_attr = True

4709 for e in self._pyangbind_elements:

4710 if not hasattr(args[0], e):

4711 all_attr = False

4712 break

4713 if not all_attr:

4714 raise ValueError("Supplied object did not have the correct attributes")

4715 for e in self._pyangbind_elements:

4716 nobj = getattr(args[0], e)

4717 if nobj._changed() is False:

4718 continue

4719 setmethod = getattr(self, "_set_%s" % e)

4720 if load is None:

4721 setmethod(getattr(args[0], e))

4722 else:

4723 setmethod(getattr(args[0], e), load=load)

4724

4725 def _path(self):

4726 if hasattr(self, "_parent"):

4727 return self._parent._path()+[self._yang_name]

4728 else:

4729 return ['nsd', 'vnfd', 'virtual-compute-desc']

4730

4731 def _get_id(self):

4732 """

4733 Getter method for id, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/id (string)

4734

4735 YANG Description: Unique identifier of this VirtualComputeDesc in the

4736 VNFD.

4737 """

4738 return self.__id

4739

4740 def _set_id(self, v, load=False):

4741 """

4742 Setter method for id, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/id (string)

4743 If this variable is read-only (config: false) in the

4744 source YANG file, then _set_id is considered as a private

4745 method. Backends looking to populate this variable should

4746 do so via calling thisObj._set_id() directly.

4747

4748 YANG Description: Unique identifier of this VirtualComputeDesc in the

4749 VNFD.

4750 """

4751 parent = getattr(self, "_parent", None)

4752 if parent is not None and load is False:

4753 raise AttributeError("Cannot set keys directly when" +

4754 " within an instantiated list")

4755

4756 if hasattr(v, "_utype"):

4757 v = v._utype(v)

4758 try:

4759 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

4760 except (TypeError, ValueError):

4761 raise ValueError({

4762 'error-string': """id must be of a type compatible with string""",

4763 'defined-type': "string",

4764 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

4765 })

4766

4767 self.__id = t

4768 if hasattr(self, '_set'):

4769 self._set()

4770

4771 def _unset_id(self):

4772 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

4773

4774

4775 def _get_logical_node(self):

4776 """

4777 Getter method for logical_node, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/logical_node (list)

4778

4779 YANG Description: The logical node requirements.

4780 """

4781 return self.__logical_node

4782

4783 def _set_logical_node(self, v, load=False):

4784 """

4785 Setter method for logical_node, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/logical_node (list)

4786 If this variable is read-only (config: false) in the

4787 source YANG file, then _set_logical_node is considered as a private

4788 method. Backends looking to populate this variable should

4789 do so via calling thisObj._set_logical_node() directly.

4790

4791 YANG Description: The logical node requirements.

4792 """

4793 if hasattr(v, "_utype"):

4794 v = v._utype(v)

4795 try:

4796 t = YANGDynClass(v,base=YANGListType("id",yc_logical_node_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_logical_node, yang_name="logical-node", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="logical-node", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

4797 except (TypeError, ValueError):

4798 raise ValueError({

4799 'error-string': """logical_node must be of a type compatible with list""",

4800 'defined-type': "list",

4801 'generated-type': """YANGDynClass(base=YANGListType("id",yc_logical_node_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_logical_node, yang_name="logical-node", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="logical-node", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

4802 })

4803

4804 self.__logical_node = t

4805 if hasattr(self, '_set'):

4806 self._set()

4807

4808 def _unset_logical_node(self):

4809 self.__logical_node = YANGDynClass(base=YANGListType("id",yc_logical_node_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_logical_node, yang_name="logical-node", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="logical-node", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

4810

4811

4812 def _get_request_additional_capability(self):

4813 """

4814 Getter method for request_additional_capability, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/request_additional_capability (list)

4815 """

4816 return self.__request_additional_capability

4817

4818 def _set_request_additional_capability(self, v, load=False):

4819 """

4820 Setter method for request_additional_capability, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/request_additional_capability (list)

4821 If this variable is read-only (config: false) in the

4822 source YANG file, then _set_request_additional_capability is considered as a private

4823 method. Backends looking to populate this variable should

4824 do so via calling thisObj._set_request_additional_capability() directly.

4825 """

4826 if hasattr(v, "_utype"):

4827 v = v._utype(v)

4828 try:

4829 t = YANGDynClass(v,base=YANGListType("name",yc_request_additional_capability_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_request_additional_capability, yang_name="request-additional-capability", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="request-additional-capability", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

4830 except (TypeError, ValueError):

4831 raise ValueError({

4832 'error-string': """request_additional_capability must be of a type compatible with list""",

4833 'defined-type': "list",

4834 'generated-type': """YANGDynClass(base=YANGListType("name",yc_request_additional_capability_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_request_additional_capability, yang_name="request-additional-capability", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="request-additional-capability", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

4835 })

4836

4837 self.__request_additional_capability = t

4838 if hasattr(self, '_set'):

4839 self._set()

4840

4841 def _unset_request_additional_capability(self):

4842 self.__request_additional_capability = YANGDynClass(base=YANGListType("name",yc_request_additional_capability_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_request_additional_capability, yang_name="request-additional-capability", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="request-additional-capability", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

4843

4844

4845 def _get_compute_requirements(self):

4846 """

4847 Getter method for compute_requirements, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/compute_requirements (string)

4848

4849 YANG Description: Specifies compute requirements.

4850 """

4851 return self.__compute_requirements

4852

4853 def _set_compute_requirements(self, v, load=False):

4854 """

4855 Setter method for compute_requirements, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/compute_requirements (string)

4856 If this variable is read-only (config: false) in the

4857 source YANG file, then _set_compute_requirements is considered as a private

4858 method. Backends looking to populate this variable should

4859 do so via calling thisObj._set_compute_requirements() directly.

4860

4861 YANG Description: Specifies compute requirements.

4862 """

4863 if hasattr(v, "_utype"):

4864 v = v._utype(v)

4865 try:

4866 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="compute-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

4867 except (TypeError, ValueError):

4868 raise ValueError({

4869 'error-string': """compute_requirements must be of a type compatible with string""",

4870 'defined-type': "string",

4871 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="compute-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

4872 })

4873

4874 self.__compute_requirements = t

4875 if hasattr(self, '_set'):

4876 self._set()

4877

4878 def _unset_compute_requirements(self):

4879 self.__compute_requirements = YANGDynClass(base=str, is_leaf=True, yang_name="compute-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

4880

4881

4882 def _get_virtual_memory(self):

4883 """

4884 Getter method for virtual_memory, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_memory (container)

4885

4886 YANG Description: The virtual memory of the virtualised compute.

4887 """

4888 return self.__virtual_memory

4889

4890 def _set_virtual_memory(self, v, load=False):

4891 """

4892 Setter method for virtual_memory, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_memory (container)

4893 If this variable is read-only (config: false) in the

4894 source YANG file, then _set_virtual_memory is considered as a private

4895 method. Backends looking to populate this variable should

4896 do so via calling thisObj._set_virtual_memory() directly.

4897

4898 YANG Description: The virtual memory of the virtualised compute.

4899 """

4900 if hasattr(v, "_utype"):

4901 v = v._utype(v)

4902 try:

4903 t = YANGDynClass(v,base=yc_virtual_memory_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_memory, is_container='container', yang_name="virtual-memory", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

4904 except (TypeError, ValueError):

4905 raise ValueError({

4906 'error-string': """virtual_memory must be of a type compatible with container""",

4907 'defined-type': "container",

4908 'generated-type': """YANGDynClass(base=yc_virtual_memory_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_memory, is_container='container', yang_name="virtual-memory", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

4909 })

4910

4911 self.__virtual_memory = t

4912 if hasattr(self, '_set'):

4913 self._set()

4914

4915 def _unset_virtual_memory(self):

4916 self.__virtual_memory = YANGDynClass(base=yc_virtual_memory_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_memory, is_container='container', yang_name="virtual-memory", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

4917

4918

4919 def _get_virtual_cpu(self):

4920 """

4921 Getter method for virtual_cpu, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu (container)

4922

4923 YANG Description: The virtual CPU(s)of the virtualised compute.

4924 """

4925 return self.__virtual_cpu

4926

4927 def _set_virtual_cpu(self, v, load=False):

4928 """

4929 Setter method for virtual_cpu, mapped from YANG variable /nsd/vnfd/virtual_compute_desc/virtual_cpu (container)

4930 If this variable is read-only (config: false) in the

4931 source YANG file, then _set_virtual_cpu is considered as a private

4932 method. Backends looking to populate this variable should

4933 do so via calling thisObj._set_virtual_cpu() directly.

4934

4935 YANG Description: The virtual CPU(s)of the virtualised compute.

4936 """

4937 if hasattr(v, "_utype"):

4938 v = v._utype(v)

4939 try:

4940 t = YANGDynClass(v,base=yc_virtual_cpu_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_cpu, is_container='container', yang_name="virtual-cpu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

4941 except (TypeError, ValueError):

4942 raise ValueError({

4943 'error-string': """virtual_cpu must be of a type compatible with container""",

4944 'defined-type': "container",

4945 'generated-type': """YANGDynClass(base=yc_virtual_cpu_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_cpu, is_container='container', yang_name="virtual-cpu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

4946 })

4947

4948 self.__virtual_cpu = t

4949 if hasattr(self, '_set'):

4950 self._set()

4951

4952 def _unset_virtual_cpu(self):

4953 self.__virtual_cpu = YANGDynClass(base=yc_virtual_cpu_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc_virtual_cpu, is_container='container', yang_name="virtual-cpu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

4954

4955 id = __builtin__.property(_get_id, _set_id)

4956 logical_node = __builtin__.property(_get_logical_node, _set_logical_node)

4957 request_additional_capability = __builtin__.property(_get_request_additional_capability, _set_request_additional_capability)

4958 compute_requirements = __builtin__.property(_get_compute_requirements, _set_compute_requirements)

4959 virtual_memory = __builtin__.property(_get_virtual_memory, _set_virtual_memory)

4960 virtual_cpu = __builtin__.property(_get_virtual_cpu, _set_virtual_cpu)

4961

4962

4963 _pyangbind_elements = OrderedDict([('id', id), ('logical_node', logical_node), ('request_additional_capability', request_additional_capability), ('compute_requirements', compute_requirements), ('virtual_memory', virtual_memory), ('virtual_cpu', virtual_cpu), ])

4964

4965

4966 class yc_vdu_storage_requirements_etsi_nfv_nsd__nsd_vnfd_virtual_storage_desc_vdu_storage_requirements(PybindBase):

4967 """

4968 This class was auto-generated by the PythonClass plugin for PYANG

4969 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/virtual-storage-desc/vdu-storage-requirements. Each member element of

4970 the container is represented as a class variable - with a specific

4971 YANG type.

4972

4973 YANG Description: Array of key-value pairs that articulate the storage

4974 deployment requirements.

4975 """

4976 __slots__ = ('_path_helper', '_extmethods', '__key','__value',)

4977

4978 _yang_name = 'vdu-storage-requirements'

4979 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

4980

4981 _pybind_generated_by = 'container'

4982

4983 def __init__(self, *args, **kwargs):

4984

4985 self._path_helper = False

4986

4987 self._extmethods = False

4988 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

4989 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

4990

4991 load = kwargs.pop("load", None)

4992 if args:

4993 if len(args) > 1:

4994 raise TypeError("cannot create a YANG container with >1 argument")

4995 all_attr = True

4996 for e in self._pyangbind_elements:

4997 if not hasattr(args[0], e):

4998 all_attr = False

4999 break

5000 if not all_attr:

5001 raise ValueError("Supplied object did not have the correct attributes")

5002 for e in self._pyangbind_elements:

5003 nobj = getattr(args[0], e)

5004 if nobj._changed() is False:

5005 continue

5006 setmethod = getattr(self, "_set_%s" % e)

5007 if load is None:

5008 setmethod(getattr(args[0], e))

5009 else:

5010 setmethod(getattr(args[0], e), load=load)

5011

5012 def _path(self):

5013 if hasattr(self, "_parent"):

5014 return self._parent._path()+[self._yang_name]

5015 else:

5016 return ['nsd', 'vnfd', 'virtual-storage-desc', 'vdu-storage-requirements']

5017

5018 def _get_key(self):

5019 """

5020 Getter method for key, mapped from YANG variable /nsd/vnfd/virtual_storage_desc/vdu_storage_requirements/key (string)

5021 """

5022 return self.__key

5023

5024 def _set_key(self, v, load=False):

5025 """

5026 Setter method for key, mapped from YANG variable /nsd/vnfd/virtual_storage_desc/vdu_storage_requirements/key (string)

5027 If this variable is read-only (config: false) in the

5028 source YANG file, then _set_key is considered as a private

5029 method. Backends looking to populate this variable should

5030 do so via calling thisObj._set_key() directly.

5031 """

5032 parent = getattr(self, "_parent", None)

5033 if parent is not None and load is False:

5034 raise AttributeError("Cannot set keys directly when" +

5035 " within an instantiated list")

5036

5037 if hasattr(v, "_utype"):

5038 v = v._utype(v)

5039 try:

5040 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

5041 except (TypeError, ValueError):

5042 raise ValueError({

5043 'error-string': """key must be of a type compatible with string""",

5044 'defined-type': "string",

5045 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

5046 })

5047

5048 self.__key = t

5049 if hasattr(self, '_set'):

5050 self._set()

5051

5052 def _unset_key(self):

5053 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

5054

5055

5056 def _get_value(self):

5057 """

5058 Getter method for value, mapped from YANG variable /nsd/vnfd/virtual_storage_desc/vdu_storage_requirements/value (string)

5059 """

5060 return self.__value

5061

5062 def _set_value(self, v, load=False):

5063 """

5064 Setter method for value, mapped from YANG variable /nsd/vnfd/virtual_storage_desc/vdu_storage_requirements/value (string)

5065 If this variable is read-only (config: false) in the

5066 source YANG file, then _set_value is considered as a private

5067 method. Backends looking to populate this variable should

5068 do so via calling thisObj._set_value() directly.

5069 """

5070 if hasattr(v, "_utype"):

5071 v = v._utype(v)

5072 try:

5073 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

5074 except (TypeError, ValueError):

5075 raise ValueError({

5076 'error-string': """value must be of a type compatible with string""",

5077 'defined-type': "string",

5078 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

5079 })

5080

5081 self.__value = t

5082 if hasattr(self, '_set'):

5083 self._set()

5084

5085 def _unset_value(self):

5086 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

5087

5088 key = __builtin__.property(_get_key, _set_key)

5089 value = __builtin__.property(_get_value, _set_value)

5090

5091

5092 _pyangbind_elements = OrderedDict([('key', key), ('value', value), ])

5093

5094

5095 class yc_virtual_storage_desc_etsi_nfv_nsd__nsd_vnfd_virtual_storage_desc(PybindBase):

5096 """

5097 This class was auto-generated by the PythonClass plugin for PYANG

5098 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/virtual-storage-desc. Each member element of

5099 the container is represented as a class variable - with a specific

5100 YANG type.

5101

5102 YANG Description: Storage requirements for a Virtual Storage instance

5103 attached to the VNFC created from this VDU

5104 """

5105 __slots__ = ('_path_helper', '_extmethods', '__id','__type_of_storage','__size_of_storage','__vdu_storage_requirements','__rdma_enabled','__sw_image_desc',)

5106

5107 _yang_name = 'virtual-storage-desc'

5108 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

5109

5110 _pybind_generated_by = 'container'

5111

5112 def __init__(self, *args, **kwargs):

5113

5114 self._path_helper = False

5115

5116 self._extmethods = False

5117 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

5118 self.__type_of_storage = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'root-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:root-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:root-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:root-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:root-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'swap-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:swap-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:swap-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:swap-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:swap-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ephemeral-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ephemeral-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ephemeral-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ephemeral-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ephemeral-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'persistent-storage': {'@module': 'persistent-storage', '@namespace': 'urn:etsi:osm:yang:augments:persistent-storage'}, 'persistent-storage:persistent-storage': {'@module': 'persistent-storage', '@namespace': 'urn:etsi:osm:yang:augments:persistent-storage'}},), default=str("root-storage"), is_leaf=True, yang_name="type-of-storage", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

5119 self.__size_of_storage = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64)(0), is_leaf=True, yang_name="size-of-storage", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

5120 self.__vdu_storage_requirements = YANGDynClass(base=YANGListType("key",yc_vdu_storage_requirements_etsi_nfv_nsd__nsd_vnfd_virtual_storage_desc_vdu_storage_requirements, yang_name="vdu-storage-requirements", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="vdu-storage-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

5121 self.__rdma_enabled = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="rdma-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

5122 self.__sw_image_desc = YANGDynClass(base=str, is_leaf=True, yang_name="sw-image-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

5123

5124 load = kwargs.pop("load", None)

5125 if args:

5126 if len(args) > 1:

5127 raise TypeError("cannot create a YANG container with >1 argument")

5128 all_attr = True

5129 for e in self._pyangbind_elements:

5130 if not hasattr(args[0], e):

5131 all_attr = False

5132 break

5133 if not all_attr:

5134 raise ValueError("Supplied object did not have the correct attributes")

5135 for e in self._pyangbind_elements:

5136 nobj = getattr(args[0], e)

5137 if nobj._changed() is False:

5138 continue

5139 setmethod = getattr(self, "_set_%s" % e)

5140 if load is None:

5141 setmethod(getattr(args[0], e))

5142 else:

5143 setmethod(getattr(args[0], e), load=load)

5144

5145 def _path(self):

5146 if hasattr(self, "_parent"):

5147 return self._parent._path()+[self._yang_name]

5148 else:

5149 return ['nsd', 'vnfd', 'virtual-storage-desc']

5150

5151 def _get_id(self):

5152 """

5153 Getter method for id, mapped from YANG variable /nsd/vnfd/virtual_storage_desc/id (string)

5154

5155 YANG Description: Unique identifier of this VirtualStorageDesc in the

5156 VNFD.

5157 """

5158 return self.__id

5159

5160 def _set_id(self, v, load=False):

5161 """

5162 Setter method for id, mapped from YANG variable /nsd/vnfd/virtual_storage_desc/id (string)

5163 If this variable is read-only (config: false) in the

5164 source YANG file, then _set_id is considered as a private

5165 method. Backends looking to populate this variable should

5166 do so via calling thisObj._set_id() directly.

5167

5168 YANG Description: Unique identifier of this VirtualStorageDesc in the

5169 VNFD.

5170 """

5171 parent = getattr(self, "_parent", None)

5172 if parent is not None and load is False:

5173 raise AttributeError("Cannot set keys directly when" +

5174 " within an instantiated list")

5175

5176 if hasattr(v, "_utype"):

5177 v = v._utype(v)

5178 try:

5179 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

5180 except (TypeError, ValueError):

5181 raise ValueError({

5182 'error-string': """id must be of a type compatible with string""",

5183 'defined-type': "string",

5184 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

5185 })

5186

5187 self.__id = t

5188 if hasattr(self, '_set'):

5189 self._set()

5190

5191 def _unset_id(self):

5192 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

5193

5194

5195 def _get_type_of_storage(self):

5196 """

5197 Getter method for type_of_storage, mapped from YANG variable /nsd/vnfd/virtual_storage_desc/type_of_storage (identityref)

5198

5199 YANG Description: Type of virtualised storage resource (e.g. volume,

5200 object).

5201 """

5202 return self.__type_of_storage

5203

5204 def _set_type_of_storage(self, v, load=False):

5205 """

5206 Setter method for type_of_storage, mapped from YANG variable /nsd/vnfd/virtual_storage_desc/type_of_storage (identityref)

5207 If this variable is read-only (config: false) in the

5208 source YANG file, then _set_type_of_storage is considered as a private

5209 method. Backends looking to populate this variable should

5210 do so via calling thisObj._set_type_of_storage() directly.

5211

5212 YANG Description: Type of virtualised storage resource (e.g. volume,

5213 object).

5214 """

5215 if hasattr(v, "_utype"):

5216 v = v._utype(v)

5217 try:

5218 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'root-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:root-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:root-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:root-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:root-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'swap-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:swap-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:swap-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:swap-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:swap-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ephemeral-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ephemeral-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ephemeral-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ephemeral-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ephemeral-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'persistent-storage': {'@module': 'persistent-storage', '@namespace': 'urn:etsi:osm:yang:augments:persistent-storage'}, 'persistent-storage:persistent-storage': {'@module': 'persistent-storage', '@namespace': 'urn:etsi:osm:yang:augments:persistent-storage'}},), default=str("root-storage"), is_leaf=True, yang_name="type-of-storage", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

5219 except (TypeError, ValueError):

5220 raise ValueError({

5221 'error-string': """type_of_storage must be of a type compatible with identityref""",

5222 'defined-type': "etsi-nfv-nsd:identityref",

5223 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'root-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:root-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:root-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:root-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:root-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'swap-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:swap-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:swap-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:swap-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:swap-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ephemeral-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ephemeral-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ephemeral-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ephemeral-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ephemeral-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'persistent-storage': {'@module': 'persistent-storage', '@namespace': 'urn:etsi:osm:yang:augments:persistent-storage'}, 'persistent-storage:persistent-storage': {'@module': 'persistent-storage', '@namespace': 'urn:etsi:osm:yang:augments:persistent-storage'}},), default=str("root-storage"), is_leaf=True, yang_name="type-of-storage", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)""",

5224 })

5225

5226 self.__type_of_storage = t

5227 if hasattr(self, '_set'):

5228 self._set()

5229

5230 def _unset_type_of_storage(self):

5231 self.__type_of_storage = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'root-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:root-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:root-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:root-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:root-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'swap-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:swap-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:swap-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:swap-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:swap-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ephemeral-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ephemeral-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ephemeral-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ephemeral-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ephemeral-storage': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'persistent-storage': {'@module': 'persistent-storage', '@namespace': 'urn:etsi:osm:yang:augments:persistent-storage'}, 'persistent-storage:persistent-storage': {'@module': 'persistent-storage', '@namespace': 'urn:etsi:osm:yang:augments:persistent-storage'}},), default=str("root-storage"), is_leaf=True, yang_name="type-of-storage", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

5232

5233

5234 def _get_size_of_storage(self):

5235 """

5236 Getter method for size_of_storage, mapped from YANG variable /nsd/vnfd/virtual_storage_desc/size_of_storage (uint64)

5237

5238 YANG Description: Size of virtualised storage resource (e.g. size of

5239 volume, in GB)

5240 """

5241 return self.__size_of_storage

5242

5243 def _set_size_of_storage(self, v, load=False):

5244 """

5245 Setter method for size_of_storage, mapped from YANG variable /nsd/vnfd/virtual_storage_desc/size_of_storage (uint64)

5246 If this variable is read-only (config: false) in the

5247 source YANG file, then _set_size_of_storage is considered as a private

5248 method. Backends looking to populate this variable should

5249 do so via calling thisObj._set_size_of_storage() directly.

5250

5251 YANG Description: Size of virtualised storage resource (e.g. size of

5252 volume, in GB)

5253 """

5254 if hasattr(v, "_utype"):

5255 v = v._utype(v)

5256 try:

5257 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64)(0), is_leaf=True, yang_name="size-of-storage", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

5258 except (TypeError, ValueError):

5259 raise ValueError({

5260 'error-string': """size_of_storage must be of a type compatible with uint64""",

5261 'defined-type': "uint64",

5262 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64)(0), is_leaf=True, yang_name="size-of-storage", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)""",

5263 })

5264

5265 self.__size_of_storage = t

5266 if hasattr(self, '_set'):

5267 self._set()

5268

5269 def _unset_size_of_storage(self):

5270 self.__size_of_storage = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64)(0), is_leaf=True, yang_name="size-of-storage", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

5271

5272

5273 def _get_vdu_storage_requirements(self):

5274 """

5275 Getter method for vdu_storage_requirements, mapped from YANG variable /nsd/vnfd/virtual_storage_desc/vdu_storage_requirements (list)

5276

5277 YANG Description: Array of key-value pairs that articulate the storage

5278 deployment requirements.

5279 """

5280 return self.__vdu_storage_requirements

5281

5282 def _set_vdu_storage_requirements(self, v, load=False):

5283 """

5284 Setter method for vdu_storage_requirements, mapped from YANG variable /nsd/vnfd/virtual_storage_desc/vdu_storage_requirements (list)

5285 If this variable is read-only (config: false) in the

5286 source YANG file, then _set_vdu_storage_requirements is considered as a private

5287 method. Backends looking to populate this variable should

5288 do so via calling thisObj._set_vdu_storage_requirements() directly.

5289

5290 YANG Description: Array of key-value pairs that articulate the storage

5291 deployment requirements.

5292 """

5293 if hasattr(v, "_utype"):

5294 v = v._utype(v)

5295 try:

5296 t = YANGDynClass(v,base=YANGListType("key",yc_vdu_storage_requirements_etsi_nfv_nsd__nsd_vnfd_virtual_storage_desc_vdu_storage_requirements, yang_name="vdu-storage-requirements", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="vdu-storage-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

5297 except (TypeError, ValueError):

5298 raise ValueError({

5299 'error-string': """vdu_storage_requirements must be of a type compatible with list""",

5300 'defined-type': "list",

5301 'generated-type': """YANGDynClass(base=YANGListType("key",yc_vdu_storage_requirements_etsi_nfv_nsd__nsd_vnfd_virtual_storage_desc_vdu_storage_requirements, yang_name="vdu-storage-requirements", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="vdu-storage-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

5302 })

5303

5304 self.__vdu_storage_requirements = t

5305 if hasattr(self, '_set'):

5306 self._set()

5307

5308 def _unset_vdu_storage_requirements(self):

5309 self.__vdu_storage_requirements = YANGDynClass(base=YANGListType("key",yc_vdu_storage_requirements_etsi_nfv_nsd__nsd_vnfd_virtual_storage_desc_vdu_storage_requirements, yang_name="vdu-storage-requirements", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="vdu-storage-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

5310

5311

5312 def _get_rdma_enabled(self):

5313 """

5314 Getter method for rdma_enabled, mapped from YANG variable /nsd/vnfd/virtual_storage_desc/rdma_enabled (boolean)

5315

5316 YANG Description: Indicate if the storage support RDMA.

5317 """

5318 return self.__rdma_enabled

5319

5320 def _set_rdma_enabled(self, v, load=False):

5321 """

5322 Setter method for rdma_enabled, mapped from YANG variable /nsd/vnfd/virtual_storage_desc/rdma_enabled (boolean)

5323 If this variable is read-only (config: false) in the

5324 source YANG file, then _set_rdma_enabled is considered as a private

5325 method. Backends looking to populate this variable should

5326 do so via calling thisObj._set_rdma_enabled() directly.

5327

5328 YANG Description: Indicate if the storage support RDMA.

5329 """

5330 if hasattr(v, "_utype"):

5331 v = v._utype(v)

5332 try:

5333 t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="rdma-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

5334 except (TypeError, ValueError):

5335 raise ValueError({

5336 'error-string': """rdma_enabled must be of a type compatible with boolean""",

5337 'defined-type': "boolean",

5338 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="rdma-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)""",

5339 })

5340

5341 self.__rdma_enabled = t

5342 if hasattr(self, '_set'):

5343 self._set()

5344

5345 def _unset_rdma_enabled(self):

5346 self.__rdma_enabled = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="rdma-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

5347

5348

5349 def _get_sw_image_desc(self):

5350 """

5351 Getter method for sw_image_desc, mapped from YANG variable /nsd/vnfd/virtual_storage_desc/sw_image_desc (leafref)

5352

5353 YANG Description: Software image to be loaded on the VirtualStorage

5354 resource created based on this VirtualStorageDesc.

5355 """

5356 return self.__sw_image_desc

5357

5358 def _set_sw_image_desc(self, v, load=False):

5359 """

5360 Setter method for sw_image_desc, mapped from YANG variable /nsd/vnfd/virtual_storage_desc/sw_image_desc (leafref)

5361 If this variable is read-only (config: false) in the

5362 source YANG file, then _set_sw_image_desc is considered as a private

5363 method. Backends looking to populate this variable should

5364 do so via calling thisObj._set_sw_image_desc() directly.

5365

5366 YANG Description: Software image to be loaded on the VirtualStorage

5367 resource created based on this VirtualStorageDesc.

5368 """

5369 if hasattr(v, "_utype"):

5370 v = v._utype(v)

5371 try:

5372 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="sw-image-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

5373 except (TypeError, ValueError):

5374 raise ValueError({

5375 'error-string': """sw_image_desc must be of a type compatible with leafref""",

5376 'defined-type': "leafref",

5377 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="sw-image-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

5378 })

5379

5380 self.__sw_image_desc = t

5381 if hasattr(self, '_set'):

5382 self._set()

5383

5384 def _unset_sw_image_desc(self):

5385 self.__sw_image_desc = YANGDynClass(base=str, is_leaf=True, yang_name="sw-image-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

5386

5387 id = __builtin__.property(_get_id, _set_id)

5388 type_of_storage = __builtin__.property(_get_type_of_storage, _set_type_of_storage)

5389 size_of_storage = __builtin__.property(_get_size_of_storage, _set_size_of_storage)

5390 vdu_storage_requirements = __builtin__.property(_get_vdu_storage_requirements, _set_vdu_storage_requirements)

5391 rdma_enabled = __builtin__.property(_get_rdma_enabled, _set_rdma_enabled)

5392 sw_image_desc = __builtin__.property(_get_sw_image_desc, _set_sw_image_desc)

5393

5394

5395 _pyangbind_elements = OrderedDict([('id', id), ('type_of_storage', type_of_storage), ('size_of_storage', size_of_storage), ('vdu_storage_requirements', vdu_storage_requirements), ('rdma_enabled', rdma_enabled), ('sw_image_desc', sw_image_desc), ])

5396

5397

5398 class yc_checksum_etsi_nfv_nsd__nsd_vnfd_sw_image_desc_checksum(PybindBase):

5399 """

5400 This class was auto-generated by the PythonClass plugin for PYANG

5401 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/sw-image-desc/checksum. Each member element of

5402 the container is represented as a class variable - with a specific

5403 YANG type.

5404

5405 YANG Description: The checksum of the software image file.

5406 """

5407 __slots__ = ('_path_helper', '_extmethods', '__algorithm','__hash',)

5408

5409 _yang_name = 'checksum'

5410 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

5411

5412 _pybind_generated_by = 'container'

5413

5414 def __init__(self, *args, **kwargs):

5415

5416 self._path_helper = False

5417

5418 self._extmethods = False

5419 self.__algorithm = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'sha-224': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:sha-224': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:sha-224': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:sha-224': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:sha-224': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'sha-256': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:sha-256': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:sha-256': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:sha-256': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:sha-256': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'sha-384': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:sha-384': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:sha-384': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:sha-384': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:sha-384': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'sha-512': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:sha-512': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:sha-512': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:sha-512': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:sha-512': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="algorithm", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

5420 self.__hash = YANGDynClass(base=str, is_leaf=True, yang_name="hash", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

5421

5422 load = kwargs.pop("load", None)

5423 if args:

5424 if len(args) > 1:

5425 raise TypeError("cannot create a YANG container with >1 argument")

5426 all_attr = True

5427 for e in self._pyangbind_elements:

5428 if not hasattr(args[0], e):

5429 all_attr = False

5430 break

5431 if not all_attr:

5432 raise ValueError("Supplied object did not have the correct attributes")

5433 for e in self._pyangbind_elements:

5434 nobj = getattr(args[0], e)

5435 if nobj._changed() is False:

5436 continue

5437 setmethod = getattr(self, "_set_%s" % e)

5438 if load is None:

5439 setmethod(getattr(args[0], e))

5440 else:

5441 setmethod(getattr(args[0], e), load=load)

5442

5443 def _path(self):

5444 if hasattr(self, "_parent"):

5445 return self._parent._path()+[self._yang_name]

5446 else:

5447 return ['nsd', 'vnfd', 'sw-image-desc', 'checksum']

5448

5449 def _get_algorithm(self):

5450 """

5451 Getter method for algorithm, mapped from YANG variable /nsd/vnfd/sw_image_desc/checksum/algorithm (identityref)

5452

5453 YANG Description: Species the algorithm used to obtain the checksum

5454 value.

5455 """

5456 return self.__algorithm

5457

5458 def _set_algorithm(self, v, load=False):

5459 """

5460 Setter method for algorithm, mapped from YANG variable /nsd/vnfd/sw_image_desc/checksum/algorithm (identityref)

5461 If this variable is read-only (config: false) in the

5462 source YANG file, then _set_algorithm is considered as a private

5463 method. Backends looking to populate this variable should

5464 do so via calling thisObj._set_algorithm() directly.

5465

5466 YANG Description: Species the algorithm used to obtain the checksum

5467 value.

5468 """

5469 if hasattr(v, "_utype"):

5470 v = v._utype(v)

5471 try:

5472 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'sha-224': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:sha-224': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:sha-224': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:sha-224': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:sha-224': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'sha-256': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:sha-256': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:sha-256': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:sha-256': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:sha-256': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'sha-384': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:sha-384': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:sha-384': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:sha-384': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:sha-384': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'sha-512': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:sha-512': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:sha-512': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:sha-512': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:sha-512': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="algorithm", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

5473 except (TypeError, ValueError):

5474 raise ValueError({

5475 'error-string': """algorithm must be of a type compatible with identityref""",

5476 'defined-type': "etsi-nfv-nsd:identityref",

5477 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'sha-224': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:sha-224': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:sha-224': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:sha-224': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:sha-224': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'sha-256': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:sha-256': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:sha-256': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:sha-256': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:sha-256': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'sha-384': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:sha-384': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:sha-384': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:sha-384': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:sha-384': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'sha-512': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:sha-512': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:sha-512': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:sha-512': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:sha-512': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="algorithm", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)""",

5478 })

5479

5480 self.__algorithm = t

5481 if hasattr(self, '_set'):

5482 self._set()

5483

5484 def _unset_algorithm(self):

5485 self.__algorithm = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'sha-224': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:sha-224': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:sha-224': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:sha-224': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:sha-224': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'sha-256': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:sha-256': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:sha-256': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:sha-256': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:sha-256': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'sha-384': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:sha-384': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:sha-384': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:sha-384': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:sha-384': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'sha-512': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:sha-512': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:sha-512': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:sha-512': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:sha-512': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="algorithm", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

5486

5487

5488 def _get_hash(self):

5489 """

5490 Getter method for hash, mapped from YANG variable /nsd/vnfd/sw_image_desc/checksum/hash (string)

5491

5492 YANG Description: Contains the result of applying the algorithm

5493 indicated by the algorithm attribute to the data to

5494 which this ChecksumData refers.

5495 """

5496 return self.__hash

5497

5498 def _set_hash(self, v, load=False):

5499 """

5500 Setter method for hash, mapped from YANG variable /nsd/vnfd/sw_image_desc/checksum/hash (string)

5501 If this variable is read-only (config: false) in the

5502 source YANG file, then _set_hash is considered as a private

5503 method. Backends looking to populate this variable should

5504 do so via calling thisObj._set_hash() directly.

5505

5506 YANG Description: Contains the result of applying the algorithm

5507 indicated by the algorithm attribute to the data to

5508 which this ChecksumData refers.

5509 """

5510 if hasattr(v, "_utype"):

5511 v = v._utype(v)

5512 try:

5513 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="hash", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

5514 except (TypeError, ValueError):

5515 raise ValueError({

5516 'error-string': """hash must be of a type compatible with string""",

5517 'defined-type': "string",

5518 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="hash", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

5519 })

5520

5521 self.__hash = t

5522 if hasattr(self, '_set'):

5523 self._set()

5524

5525 def _unset_hash(self):

5526 self.__hash = YANGDynClass(base=str, is_leaf=True, yang_name="hash", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

5527

5528 algorithm = __builtin__.property(_get_algorithm, _set_algorithm)

5529 hash = __builtin__.property(_get_hash, _set_hash)

5530

5531

5532 _pyangbind_elements = OrderedDict([('algorithm', algorithm), ('hash', hash), ])

5533

5534

5535 class yc_sw_image_desc_etsi_nfv_nsd__nsd_vnfd_sw_image_desc(PybindBase):

5536 """

5537 This class was auto-generated by the PythonClass plugin for PYANG

5538 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/sw-image-desc. Each member element of

5539 the container is represented as a class variable - with a specific

5540 YANG type.

5541

5542 YANG Description: Defines descriptors of software images to be used by the

5543 VNF.

5544 """

5545 __slots__ = ('_path_helper', '_extmethods', '__id','__name','__version','__checksum','__container_format','__disk_format','__min_disk','__min_ram','__size','__image','__operating_system','__supported_virtualization_environment',)

5546

5547 _yang_name = 'sw-image-desc'

5548 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

5549

5550 _pybind_generated_by = 'container'

5551

5552 def __init__(self, *args, **kwargs):

5553

5554 self._path_helper = False

5555

5556 self._extmethods = False

5557 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

5558 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

5559 self.__version = YANGDynClass(base=str, is_leaf=True, yang_name="version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

5560 self.__checksum = YANGDynClass(base=yc_checksum_etsi_nfv_nsd__nsd_vnfd_sw_image_desc_checksum, is_container='container', yang_name="checksum", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

5561 self.__container_format = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'aki': {}, 'ami': {}, 'ari': {}, 'bare': {}, 'docker': {}, 'ova': {}, 'ovf': {}},), default=str("bare"), is_leaf=True, yang_name="container-format", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

5562 self.__disk_format = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'aki': {}, 'ami': {}, 'ari': {}, 'iso': {}, 'qcow2': {}, 'raw': {}, 'vdi': {}, 'vhd': {}, 'vhdx': {}, 'vmdk': {}},), default=str("qcow2"), is_leaf=True, yang_name="disk-format", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

5563 self.__min_disk = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="min-disk", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

5564 self.__min_ram = YANGDynClass(base=RestrictedClassType(base_type=Decimal, restriction_dict={'range': ['0..max']}), default=Decimal(0), is_leaf=True, yang_name="min-ram", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='decimal64', is_config=True)

5565 self.__size = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="size", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

5566 self.__image = YANGDynClass(base=str, default=str("."), is_leaf=True, yang_name="image", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='inet:uri', is_config=True)

5567 self.__operating_system = YANGDynClass(base=str, is_leaf=True, yang_name="operating-system", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

5568 self.__supported_virtualization_environment = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="supported-virtualization-environment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

5569

5570 load = kwargs.pop("load", None)

5571 if args:

5572 if len(args) > 1:

5573 raise TypeError("cannot create a YANG container with >1 argument")

5574 all_attr = True

5575 for e in self._pyangbind_elements:

5576 if not hasattr(args[0], e):

5577 all_attr = False

5578 break

5579 if not all_attr:

5580 raise ValueError("Supplied object did not have the correct attributes")

5581 for e in self._pyangbind_elements:

5582 nobj = getattr(args[0], e)

5583 if nobj._changed() is False:

5584 continue

5585 setmethod = getattr(self, "_set_%s" % e)

5586 if load is None:

5587 setmethod(getattr(args[0], e))

5588 else:

5589 setmethod(getattr(args[0], e), load=load)

5590

5591 def _path(self):

5592 if hasattr(self, "_parent"):

5593 return self._parent._path()+[self._yang_name]

5594 else:

5595 return ['nsd', 'vnfd', 'sw-image-desc']

5596

5597 def _get_id(self):

5598 """

5599 Getter method for id, mapped from YANG variable /nsd/vnfd/sw_image_desc/id (string)

5600

5601 YANG Description: The identifier of this software image.

5602 """

5603 return self.__id

5604

5605 def _set_id(self, v, load=False):

5606 """

5607 Setter method for id, mapped from YANG variable /nsd/vnfd/sw_image_desc/id (string)

5608 If this variable is read-only (config: false) in the

5609 source YANG file, then _set_id is considered as a private

5610 method. Backends looking to populate this variable should

5611 do so via calling thisObj._set_id() directly.

5612

5613 YANG Description: The identifier of this software image.

5614 """

5615 parent = getattr(self, "_parent", None)

5616 if parent is not None and load is False:

5617 raise AttributeError("Cannot set keys directly when" +

5618 " within an instantiated list")

5619

5620 if hasattr(v, "_utype"):

5621 v = v._utype(v)

5622 try:

5623 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

5624 except (TypeError, ValueError):

5625 raise ValueError({

5626 'error-string': """id must be of a type compatible with string""",

5627 'defined-type': "string",

5628 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

5629 })

5630

5631 self.__id = t

5632 if hasattr(self, '_set'):

5633 self._set()

5634

5635 def _unset_id(self):

5636 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

5637

5638

5639 def _get_name(self):

5640 """

5641 Getter method for name, mapped from YANG variable /nsd/vnfd/sw_image_desc/name (string)

5642

5643 YANG Description: The name of this software image.

5644 """

5645 return self.__name

5646

5647 def _set_name(self, v, load=False):

5648 """

5649 Setter method for name, mapped from YANG variable /nsd/vnfd/sw_image_desc/name (string)

5650 If this variable is read-only (config: false) in the

5651 source YANG file, then _set_name is considered as a private

5652 method. Backends looking to populate this variable should

5653 do so via calling thisObj._set_name() directly.

5654

5655 YANG Description: The name of this software image.

5656 """

5657 if hasattr(v, "_utype"):

5658 v = v._utype(v)

5659 try:

5660 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

5661 except (TypeError, ValueError):

5662 raise ValueError({

5663 'error-string': """name must be of a type compatible with string""",

5664 'defined-type': "string",

5665 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

5666 })

5667

5668 self.__name = t

5669 if hasattr(self, '_set'):

5670 self._set()

5671

5672 def _unset_name(self):

5673 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

5674

5675

5676 def _get_version(self):

5677 """

5678 Getter method for version, mapped from YANG variable /nsd/vnfd/sw_image_desc/version (string)

5679

5680 YANG Description: The version of this software image.

5681 """

5682 return self.__version

5683

5684 def _set_version(self, v, load=False):

5685 """

5686 Setter method for version, mapped from YANG variable /nsd/vnfd/sw_image_desc/version (string)

5687 If this variable is read-only (config: false) in the

5688 source YANG file, then _set_version is considered as a private

5689 method. Backends looking to populate this variable should

5690 do so via calling thisObj._set_version() directly.

5691

5692 YANG Description: The version of this software image.

5693 """

5694 if hasattr(v, "_utype"):

5695 v = v._utype(v)

5696 try:

5697 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

5698 except (TypeError, ValueError):

5699 raise ValueError({

5700 'error-string': """version must be of a type compatible with string""",

5701 'defined-type': "string",

5702 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

5703 })

5704

5705 self.__version = t

5706 if hasattr(self, '_set'):

5707 self._set()

5708

5709 def _unset_version(self):

5710 self.__version = YANGDynClass(base=str, is_leaf=True, yang_name="version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

5711

5712

5713 def _get_checksum(self):

5714 """

5715 Getter method for checksum, mapped from YANG variable /nsd/vnfd/sw_image_desc/checksum (container)

5716

5717 YANG Description: The checksum of the software image file.

5718 """

5719 return self.__checksum

5720

5721 def _set_checksum(self, v, load=False):

5722 """

5723 Setter method for checksum, mapped from YANG variable /nsd/vnfd/sw_image_desc/checksum (container)

5724 If this variable is read-only (config: false) in the

5725 source YANG file, then _set_checksum is considered as a private

5726 method. Backends looking to populate this variable should

5727 do so via calling thisObj._set_checksum() directly.

5728

5729 YANG Description: The checksum of the software image file.

5730 """

5731 if hasattr(v, "_utype"):

5732 v = v._utype(v)

5733 try:

5734 t = YANGDynClass(v,base=yc_checksum_etsi_nfv_nsd__nsd_vnfd_sw_image_desc_checksum, is_container='container', yang_name="checksum", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

5735 except (TypeError, ValueError):

5736 raise ValueError({

5737 'error-string': """checksum must be of a type compatible with container""",

5738 'defined-type': "container",

5739 'generated-type': """YANGDynClass(base=yc_checksum_etsi_nfv_nsd__nsd_vnfd_sw_image_desc_checksum, is_container='container', yang_name="checksum", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

5740 })

5741

5742 self.__checksum = t

5743 if hasattr(self, '_set'):

5744 self._set()

5745

5746 def _unset_checksum(self):

5747 self.__checksum = YANGDynClass(base=yc_checksum_etsi_nfv_nsd__nsd_vnfd_sw_image_desc_checksum, is_container='container', yang_name="checksum", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

5748

5749

5750 def _get_container_format(self):

5751 """

5752 Getter method for container_format, mapped from YANG variable /nsd/vnfd/sw_image_desc/container_format (enumeration)

5753

5754 YANG Description: The container format describes the container file

5755 format in which software image is provided.

5756 """

5757 return self.__container_format

5758

5759 def _set_container_format(self, v, load=False):

5760 """

5761 Setter method for container_format, mapped from YANG variable /nsd/vnfd/sw_image_desc/container_format (enumeration)

5762 If this variable is read-only (config: false) in the

5763 source YANG file, then _set_container_format is considered as a private

5764 method. Backends looking to populate this variable should

5765 do so via calling thisObj._set_container_format() directly.

5766

5767 YANG Description: The container format describes the container file

5768 format in which software image is provided.

5769 """

5770 if hasattr(v, "_utype"):

5771 v = v._utype(v)

5772 try:

5773 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'aki': {}, 'ami': {}, 'ari': {}, 'bare': {}, 'docker': {}, 'ova': {}, 'ovf': {}},), default=str("bare"), is_leaf=True, yang_name="container-format", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

5774 except (TypeError, ValueError):

5775 raise ValueError({

5776 'error-string': """container_format must be of a type compatible with enumeration""",

5777 'defined-type': "etsi-nfv-nsd:enumeration",

5778 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'aki': {}, 'ami': {}, 'ari': {}, 'bare': {}, 'docker': {}, 'ova': {}, 'ovf': {}},), default=str("bare"), is_leaf=True, yang_name="container-format", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)""",

5779 })

5780

5781 self.__container_format = t

5782 if hasattr(self, '_set'):

5783 self._set()

5784

5785 def _unset_container_format(self):

5786 self.__container_format = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'aki': {}, 'ami': {}, 'ari': {}, 'bare': {}, 'docker': {}, 'ova': {}, 'ovf': {}},), default=str("bare"), is_leaf=True, yang_name="container-format", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

5787

5788

5789 def _get_disk_format(self):

5790 """

5791 Getter method for disk_format, mapped from YANG variable /nsd/vnfd/sw_image_desc/disk_format (enumeration)

5792

5793 YANG Description: The disk format of a software image is the format of

5794 the underlying disk image.

5795 """

5796 return self.__disk_format

5797

5798 def _set_disk_format(self, v, load=False):

5799 """

5800 Setter method for disk_format, mapped from YANG variable /nsd/vnfd/sw_image_desc/disk_format (enumeration)

5801 If this variable is read-only (config: false) in the

5802 source YANG file, then _set_disk_format is considered as a private

5803 method. Backends looking to populate this variable should

5804 do so via calling thisObj._set_disk_format() directly.

5805

5806 YANG Description: The disk format of a software image is the format of

5807 the underlying disk image.

5808 """

5809 if hasattr(v, "_utype"):

5810 v = v._utype(v)

5811 try:

5812 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'aki': {}, 'ami': {}, 'ari': {}, 'iso': {}, 'qcow2': {}, 'raw': {}, 'vdi': {}, 'vhd': {}, 'vhdx': {}, 'vmdk': {}},), default=str("qcow2"), is_leaf=True, yang_name="disk-format", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

5813 except (TypeError, ValueError):

5814 raise ValueError({

5815 'error-string': """disk_format must be of a type compatible with enumeration""",

5816 'defined-type': "etsi-nfv-nsd:enumeration",

5817 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'aki': {}, 'ami': {}, 'ari': {}, 'iso': {}, 'qcow2': {}, 'raw': {}, 'vdi': {}, 'vhd': {}, 'vhdx': {}, 'vmdk': {}},), default=str("qcow2"), is_leaf=True, yang_name="disk-format", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)""",

5818 })

5819

5820 self.__disk_format = t

5821 if hasattr(self, '_set'):

5822 self._set()

5823

5824 def _unset_disk_format(self):

5825 self.__disk_format = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'aki': {}, 'ami': {}, 'ari': {}, 'iso': {}, 'qcow2': {}, 'raw': {}, 'vdi': {}, 'vhd': {}, 'vhdx': {}, 'vmdk': {}},), default=str("qcow2"), is_leaf=True, yang_name="disk-format", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

5826

5827

5828 def _get_min_disk(self):

5829 """

5830 Getter method for min_disk, mapped from YANG variable /nsd/vnfd/sw_image_desc/min_disk (uint64)

5831

5832 YANG Description: The minimal disk size requirement for this software

5833 image. The value of the 'size of storage' attribute

5834 of the VirtualStorageDesc referencing this

5835 SwImageDesc shall not be smaller than the value of

5836 minDisk.

5837 """

5838 return self.__min_disk

5839

5840 def _set_min_disk(self, v, load=False):

5841 """

5842 Setter method for min_disk, mapped from YANG variable /nsd/vnfd/sw_image_desc/min_disk (uint64)

5843 If this variable is read-only (config: false) in the

5844 source YANG file, then _set_min_disk is considered as a private

5845 method. Backends looking to populate this variable should

5846 do so via calling thisObj._set_min_disk() directly.

5847

5848 YANG Description: The minimal disk size requirement for this software

5849 image. The value of the 'size of storage' attribute

5850 of the VirtualStorageDesc referencing this

5851 SwImageDesc shall not be smaller than the value of

5852 minDisk.

5853 """

5854 if hasattr(v, "_utype"):

5855 v = v._utype(v)

5856 try:

5857 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="min-disk", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

5858 except (TypeError, ValueError):

5859 raise ValueError({

5860 'error-string': """min_disk must be of a type compatible with uint64""",

5861 'defined-type': "uint64",

5862 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="min-disk", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)""",

5863 })

5864

5865 self.__min_disk = t

5866 if hasattr(self, '_set'):

5867 self._set()

5868

5869 def _unset_min_disk(self):

5870 self.__min_disk = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="min-disk", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

5871

5872

5873 def _get_min_ram(self):

5874 """

5875 Getter method for min_ram, mapped from YANG variable /nsd/vnfd/sw_image_desc/min_ram (decimal64)

5876

5877 YANG Description: The minimal RAM requirement for this software image.

5878 The value of the 'size' attribute of

5879 VirtualMemoryData of the Vdu referencing this

5880 SwImageDesc shall not be smaller than the value of

5881 minRam.

5882 """

5883 return self.__min_ram

5884

5885 def _set_min_ram(self, v, load=False):

5886 """

5887 Setter method for min_ram, mapped from YANG variable /nsd/vnfd/sw_image_desc/min_ram (decimal64)

5888 If this variable is read-only (config: false) in the

5889 source YANG file, then _set_min_ram is considered as a private

5890 method. Backends looking to populate this variable should

5891 do so via calling thisObj._set_min_ram() directly.

5892

5893 YANG Description: The minimal RAM requirement for this software image.

5894 The value of the 'size' attribute of

5895 VirtualMemoryData of the Vdu referencing this

5896 SwImageDesc shall not be smaller than the value of

5897 minRam.

5898 """

5899 if hasattr(v, "_utype"):

5900 v = v._utype(v)

5901 try:

5902 t = YANGDynClass(v,base=RestrictedClassType(base_type=Decimal, restriction_dict={'range': ['0..max']}), default=Decimal(0), is_leaf=True, yang_name="min-ram", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='decimal64', is_config=True)

5903 except (TypeError, ValueError):

5904 raise ValueError({

5905 'error-string': """min_ram must be of a type compatible with decimal64""",

5906 'defined-type': "decimal64",

5907 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=Decimal, restriction_dict={'range': ['0..max']}), default=Decimal(0), is_leaf=True, yang_name="min-ram", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='decimal64', is_config=True)""",

5908 })

5909

5910 self.__min_ram = t

5911 if hasattr(self, '_set'):

5912 self._set()

5913

5914 def _unset_min_ram(self):

5915 self.__min_ram = YANGDynClass(base=RestrictedClassType(base_type=Decimal, restriction_dict={'range': ['0..max']}), default=Decimal(0), is_leaf=True, yang_name="min-ram", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='decimal64', is_config=True)

5916

5917

5918 def _get_size(self):

5919 """

5920 Getter method for size, mapped from YANG variable /nsd/vnfd/sw_image_desc/size (uint64)

5921

5922 YANG Description: The size of this software image.

5923 """

5924 return self.__size

5925

5926 def _set_size(self, v, load=False):

5927 """

5928 Setter method for size, mapped from YANG variable /nsd/vnfd/sw_image_desc/size (uint64)

5929 If this variable is read-only (config: false) in the

5930 source YANG file, then _set_size is considered as a private

5931 method. Backends looking to populate this variable should

5932 do so via calling thisObj._set_size() directly.

5933

5934 YANG Description: The size of this software image.

5935 """

5936 if hasattr(v, "_utype"):

5937 v = v._utype(v)

5938 try:

5939 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="size", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

5940 except (TypeError, ValueError):

5941 raise ValueError({

5942 'error-string': """size must be of a type compatible with uint64""",

5943 'defined-type': "uint64",

5944 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="size", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)""",

5945 })

5946

5947 self.__size = t

5948 if hasattr(self, '_set'):

5949 self._set()

5950

5951 def _unset_size(self):

5952 self.__size = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="size", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

5953

5954

5955 def _get_image(self):

5956 """

5957 Getter method for image, mapped from YANG variable /nsd/vnfd/sw_image_desc/image (inet:uri)

5958

5959 YANG Description: This is a reference to the actual software image.

5960 The reference can be relative to the root of the VNF

5961 Package or can be a URL

5962 """

5963 return self.__image

5964

5965 def _set_image(self, v, load=False):

5966 """

5967 Setter method for image, mapped from YANG variable /nsd/vnfd/sw_image_desc/image (inet:uri)

5968 If this variable is read-only (config: false) in the

5969 source YANG file, then _set_image is considered as a private

5970 method. Backends looking to populate this variable should

5971 do so via calling thisObj._set_image() directly.

5972

5973 YANG Description: This is a reference to the actual software image.

5974 The reference can be relative to the root of the VNF

5975 Package or can be a URL

5976 """

5977 if hasattr(v, "_utype"):

5978 v = v._utype(v)

5979 try:

5980 t = YANGDynClass(v,base=str, default=str("."), is_leaf=True, yang_name="image", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='inet:uri', is_config=True)

5981 except (TypeError, ValueError):

5982 raise ValueError({

5983 'error-string': """image must be of a type compatible with inet:uri""",

5984 'defined-type': "inet:uri",

5985 'generated-type': """YANGDynClass(base=str, default=str("."), is_leaf=True, yang_name="image", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='inet:uri', is_config=True)""",

5986 })

5987

5988 self.__image = t

5989 if hasattr(self, '_set'):

5990 self._set()

5991

5992 def _unset_image(self):

5993 self.__image = YANGDynClass(base=str, default=str("."), is_leaf=True, yang_name="image", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='inet:uri', is_config=True)

5994

5995

5996 def _get_operating_system(self):

5997 """

5998 Getter method for operating_system, mapped from YANG variable /nsd/vnfd/sw_image_desc/operating_system (string)

5999

6000 YANG Description: Identifies the operating system used in the software

6001 image. This attribute may also identify if a 32 bit

6002 or 64 bit software image is used.

6003 """

6004 return self.__operating_system

6005

6006 def _set_operating_system(self, v, load=False):

6007 """

6008 Setter method for operating_system, mapped from YANG variable /nsd/vnfd/sw_image_desc/operating_system (string)

6009 If this variable is read-only (config: false) in the

6010 source YANG file, then _set_operating_system is considered as a private

6011 method. Backends looking to populate this variable should

6012 do so via calling thisObj._set_operating_system() directly.

6013

6014 YANG Description: Identifies the operating system used in the software

6015 image. This attribute may also identify if a 32 bit

6016 or 64 bit software image is used.

6017 """

6018 if hasattr(v, "_utype"):

6019 v = v._utype(v)

6020 try:

6021 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="operating-system", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

6022 except (TypeError, ValueError):

6023 raise ValueError({

6024 'error-string': """operating_system must be of a type compatible with string""",

6025 'defined-type': "string",

6026 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="operating-system", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

6027 })

6028

6029 self.__operating_system = t

6030 if hasattr(self, '_set'):

6031 self._set()

6032

6033 def _unset_operating_system(self):

6034 self.__operating_system = YANGDynClass(base=str, is_leaf=True, yang_name="operating-system", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

6035

6036

6037 def _get_supported_virtualization_environment(self):

6038 """

6039 Getter method for supported_virtualization_environment, mapped from YANG variable /nsd/vnfd/sw_image_desc/supported_virtualization_environment (string)

6040

6041 YANG Description: Identifies the virtualisation environments

6042(e.g. hypervisor) compatible with this software

6043 image.

6044 """

6045 return self.__supported_virtualization_environment

6046

6047 def _set_supported_virtualization_environment(self, v, load=False):

6048 """

6049 Setter method for supported_virtualization_environment, mapped from YANG variable /nsd/vnfd/sw_image_desc/supported_virtualization_environment (string)

6050 If this variable is read-only (config: false) in the

6051 source YANG file, then _set_supported_virtualization_environment is considered as a private

6052 method. Backends looking to populate this variable should

6053 do so via calling thisObj._set_supported_virtualization_environment() directly.

6054

6055 YANG Description: Identifies the virtualisation environments

6056(e.g. hypervisor) compatible with this software

6057 image.

6058 """

6059 if hasattr(v, "_utype"):

6060 v = v._utype(v)

6061 try:

6062 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="supported-virtualization-environment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

6063 except (TypeError, ValueError):

6064 raise ValueError({

6065 'error-string': """supported_virtualization_environment must be of a type compatible with string""",

6066 'defined-type': "string",

6067 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="supported-virtualization-environment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

6068 })

6069

6070 self.__supported_virtualization_environment = t

6071 if hasattr(self, '_set'):

6072 self._set()

6073

6074 def _unset_supported_virtualization_environment(self):

6075 self.__supported_virtualization_environment = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="supported-virtualization-environment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

6076

6077 id = __builtin__.property(_get_id, _set_id)

6078 name = __builtin__.property(_get_name, _set_name)

6079 version = __builtin__.property(_get_version, _set_version)

6080 checksum = __builtin__.property(_get_checksum, _set_checksum)

6081 container_format = __builtin__.property(_get_container_format, _set_container_format)

6082 disk_format = __builtin__.property(_get_disk_format, _set_disk_format)

6083 min_disk = __builtin__.property(_get_min_disk, _set_min_disk)

6084 min_ram = __builtin__.property(_get_min_ram, _set_min_ram)

6085 size = __builtin__.property(_get_size, _set_size)

6086 image = __builtin__.property(_get_image, _set_image)

6087 operating_system = __builtin__.property(_get_operating_system, _set_operating_system)

6088 supported_virtualization_environment = __builtin__.property(_get_supported_virtualization_environment, _set_supported_virtualization_environment)

6089

6090

6091 _pyangbind_elements = OrderedDict([('id', id), ('name', name), ('version', version), ('checksum', checksum), ('container_format', container_format), ('disk_format', disk_format), ('min_disk', min_disk), ('min_ram', min_ram), ('size', size), ('image', image), ('operating_system', operating_system), ('supported_virtualization_environment', supported_virtualization_environment), ])

6092

6093

6094 class yc_qos_etsi_nfv_nsd__nsd_vnfd_int_virtual_link_desc_flavour_qos(PybindBase):

6095 """

6096 This class was auto-generated by the PythonClass plugin for PYANG

6097 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/int-virtual-link-desc/flavour/qos. Each member element of

6098 the container is represented as a class variable - with a specific

6099 YANG type.

6100

6101 YANG Description: QoS of the VL.

6102 """

6103 __slots__ = ('_path_helper', '_extmethods', '__latency','__packet_delay_variation','__packet_loss_ratio',)

6104

6105 _yang_name = 'qos'

6106 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

6107

6108 _pybind_generated_by = 'container'

6109

6110 def __init__(self, *args, **kwargs):

6111

6112 self._path_helper = False

6113

6114 self._extmethods = False

6115 self.__latency = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="latency", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

6116 self.__packet_delay_variation = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="packet-delay-variation", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

6117 self.__packet_loss_ratio = YANGDynClass(base=RestrictedClassType(base_type=Decimal, restriction_dict={'range': ['0..1.00']}), is_leaf=True, yang_name="packet-loss-ratio", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='decimal64', is_config=True)

6118

6119 load = kwargs.pop("load", None)

6120 if args:

6121 if len(args) > 1:

6122 raise TypeError("cannot create a YANG container with >1 argument")

6123 all_attr = True

6124 for e in self._pyangbind_elements:

6125 if not hasattr(args[0], e):

6126 all_attr = False

6127 break

6128 if not all_attr:

6129 raise ValueError("Supplied object did not have the correct attributes")

6130 for e in self._pyangbind_elements:

6131 nobj = getattr(args[0], e)

6132 if nobj._changed() is False:

6133 continue

6134 setmethod = getattr(self, "_set_%s" % e)

6135 if load is None:

6136 setmethod(getattr(args[0], e))

6137 else:

6138 setmethod(getattr(args[0], e), load=load)

6139

6140 def _path(self):

6141 if hasattr(self, "_parent"):

6142 return self._parent._path()+[self._yang_name]

6143 else:

6144 return ['nsd', 'vnfd', 'int-virtual-link-desc', 'flavour', 'qos']

6145

6146 def _get_latency(self):

6147 """

6148 Getter method for latency, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/flavour/qos/latency (uint32)

6149

6150 YANG Description: Specifies the maximum latency in ms.

6151 """

6152 return self.__latency

6153

6154 def _set_latency(self, v, load=False):

6155 """

6156 Setter method for latency, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/flavour/qos/latency (uint32)

6157 If this variable is read-only (config: false) in the

6158 source YANG file, then _set_latency is considered as a private

6159 method. Backends looking to populate this variable should

6160 do so via calling thisObj._set_latency() directly.

6161

6162 YANG Description: Specifies the maximum latency in ms.

6163 """

6164 if hasattr(v, "_utype"):

6165 v = v._utype(v)

6166 try:

6167 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="latency", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

6168 except (TypeError, ValueError):

6169 raise ValueError({

6170 'error-string': """latency must be of a type compatible with uint32""",

6171 'defined-type': "uint32",

6172 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="latency", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)""",

6173 })

6174

6175 self.__latency = t

6176 if hasattr(self, '_set'):

6177 self._set()

6178

6179 def _unset_latency(self):

6180 self.__latency = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="latency", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

6181

6182

6183 def _get_packet_delay_variation(self):

6184 """

6185 Getter method for packet_delay_variation, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/flavour/qos/packet_delay_variation (uint32)

6186

6187 YANG Description: Specifies the maximum jitter in ms.

6188 """

6189 return self.__packet_delay_variation

6190

6191 def _set_packet_delay_variation(self, v, load=False):

6192 """

6193 Setter method for packet_delay_variation, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/flavour/qos/packet_delay_variation (uint32)

6194 If this variable is read-only (config: false) in the

6195 source YANG file, then _set_packet_delay_variation is considered as a private

6196 method. Backends looking to populate this variable should

6197 do so via calling thisObj._set_packet_delay_variation() directly.

6198

6199 YANG Description: Specifies the maximum jitter in ms.

6200 """

6201 if hasattr(v, "_utype"):

6202 v = v._utype(v)

6203 try:

6204 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="packet-delay-variation", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

6205 except (TypeError, ValueError):

6206 raise ValueError({

6207 'error-string': """packet_delay_variation must be of a type compatible with uint32""",

6208 'defined-type': "uint32",

6209 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="packet-delay-variation", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)""",

6210 })

6211

6212 self.__packet_delay_variation = t

6213 if hasattr(self, '_set'):

6214 self._set()

6215

6216 def _unset_packet_delay_variation(self):

6217 self.__packet_delay_variation = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="packet-delay-variation", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

6218

6219

6220 def _get_packet_loss_ratio(self):

6221 """

6222 Getter method for packet_loss_ratio, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/flavour/qos/packet_loss_ratio (decimal64)

6223

6224 YANG Description: Specifies the maximum packet loss ratio.

6225 """

6226 return self.__packet_loss_ratio

6227

6228 def _set_packet_loss_ratio(self, v, load=False):

6229 """

6230 Setter method for packet_loss_ratio, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/flavour/qos/packet_loss_ratio (decimal64)

6231 If this variable is read-only (config: false) in the

6232 source YANG file, then _set_packet_loss_ratio is considered as a private

6233 method. Backends looking to populate this variable should

6234 do so via calling thisObj._set_packet_loss_ratio() directly.

6235

6236 YANG Description: Specifies the maximum packet loss ratio.

6237 """

6238 if hasattr(v, "_utype"):

6239 v = v._utype(v)

6240 try:

6241 t = YANGDynClass(v,base=RestrictedClassType(base_type=Decimal, restriction_dict={'range': ['0..1.00']}), is_leaf=True, yang_name="packet-loss-ratio", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='decimal64', is_config=True)

6242 except (TypeError, ValueError):

6243 raise ValueError({

6244 'error-string': """packet_loss_ratio must be of a type compatible with decimal64""",

6245 'defined-type': "decimal64",

6246 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=Decimal, restriction_dict={'range': ['0..1.00']}), is_leaf=True, yang_name="packet-loss-ratio", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='decimal64', is_config=True)""",

6247 })

6248

6249 self.__packet_loss_ratio = t

6250 if hasattr(self, '_set'):

6251 self._set()

6252

6253 def _unset_packet_loss_ratio(self):

6254 self.__packet_loss_ratio = YANGDynClass(base=RestrictedClassType(base_type=Decimal, restriction_dict={'range': ['0..1.00']}), is_leaf=True, yang_name="packet-loss-ratio", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='decimal64', is_config=True)

6255

6256 latency = __builtin__.property(_get_latency, _set_latency)

6257 packet_delay_variation = __builtin__.property(_get_packet_delay_variation, _set_packet_delay_variation)

6258 packet_loss_ratio = __builtin__.property(_get_packet_loss_ratio, _set_packet_loss_ratio)

6259

6260

6261 _pyangbind_elements = OrderedDict([('latency', latency), ('packet_delay_variation', packet_delay_variation), ('packet_loss_ratio', packet_loss_ratio), ])

6262

6263

6264 class yc_flavour_etsi_nfv_nsd__nsd_vnfd_int_virtual_link_desc_flavour(PybindBase):

6265 """

6266 This class was auto-generated by the PythonClass plugin for PYANG

6267 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/int-virtual-link-desc/flavour. Each member element of

6268 the container is represented as a class variable - with a specific

6269 YANG type.

6270

6271 YANG Description: Describes a specific flavour of the VL with specific

6272 bitrate requirements.

6273 """

6274 __slots__ = ('_path_helper', '_extmethods', '__id','__qos',)

6275

6276 _yang_name = 'flavour'

6277 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

6278

6279 _pybind_generated_by = 'container'

6280

6281 def __init__(self, *args, **kwargs):

6282

6283 self._path_helper = False

6284

6285 self._extmethods = False

6286 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

6287 self.__qos = YANGDynClass(base=yc_qos_etsi_nfv_nsd__nsd_vnfd_int_virtual_link_desc_flavour_qos, is_container='container', yang_name="qos", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

6288

6289 load = kwargs.pop("load", None)

6290 if args:

6291 if len(args) > 1:

6292 raise TypeError("cannot create a YANG container with >1 argument")

6293 all_attr = True

6294 for e in self._pyangbind_elements:

6295 if not hasattr(args[0], e):

6296 all_attr = False

6297 break

6298 if not all_attr:

6299 raise ValueError("Supplied object did not have the correct attributes")

6300 for e in self._pyangbind_elements:

6301 nobj = getattr(args[0], e)

6302 if nobj._changed() is False:

6303 continue

6304 setmethod = getattr(self, "_set_%s" % e)

6305 if load is None:

6306 setmethod(getattr(args[0], e))

6307 else:

6308 setmethod(getattr(args[0], e), load=load)

6309

6310 def _path(self):

6311 if hasattr(self, "_parent"):

6312 return self._parent._path()+[self._yang_name]

6313 else:

6314 return ['nsd', 'vnfd', 'int-virtual-link-desc', 'flavour']

6315

6316 def _get_id(self):

6317 """

6318 Getter method for id, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/flavour/id (string)

6319

6320 YANG Description: Identifies a flavour within a VnfVirtualLinkDesc.

6321 """

6322 return self.__id

6323

6324 def _set_id(self, v, load=False):

6325 """

6326 Setter method for id, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/flavour/id (string)

6327 If this variable is read-only (config: false) in the

6328 source YANG file, then _set_id is considered as a private

6329 method. Backends looking to populate this variable should

6330 do so via calling thisObj._set_id() directly.

6331

6332 YANG Description: Identifies a flavour within a VnfVirtualLinkDesc.

6333 """

6334 parent = getattr(self, "_parent", None)

6335 if parent is not None and load is False:

6336 raise AttributeError("Cannot set keys directly when" +

6337 " within an instantiated list")

6338

6339 if hasattr(v, "_utype"):

6340 v = v._utype(v)

6341 try:

6342 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

6343 except (TypeError, ValueError):

6344 raise ValueError({

6345 'error-string': """id must be of a type compatible with string""",

6346 'defined-type': "string",

6347 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

6348 })

6349

6350 self.__id = t

6351 if hasattr(self, '_set'):

6352 self._set()

6353

6354 def _unset_id(self):

6355 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

6356

6357

6358 def _get_qos(self):

6359 """

6360 Getter method for qos, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/flavour/qos (container)

6361

6362 YANG Description: QoS of the VL.

6363 """

6364 return self.__qos

6365

6366 def _set_qos(self, v, load=False):

6367 """

6368 Setter method for qos, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/flavour/qos (container)

6369 If this variable is read-only (config: false) in the

6370 source YANG file, then _set_qos is considered as a private

6371 method. Backends looking to populate this variable should

6372 do so via calling thisObj._set_qos() directly.

6373

6374 YANG Description: QoS of the VL.

6375 """

6376 if hasattr(v, "_utype"):

6377 v = v._utype(v)

6378 try:

6379 t = YANGDynClass(v,base=yc_qos_etsi_nfv_nsd__nsd_vnfd_int_virtual_link_desc_flavour_qos, is_container='container', yang_name="qos", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

6380 except (TypeError, ValueError):

6381 raise ValueError({

6382 'error-string': """qos must be of a type compatible with container""",

6383 'defined-type': "container",

6384 'generated-type': """YANGDynClass(base=yc_qos_etsi_nfv_nsd__nsd_vnfd_int_virtual_link_desc_flavour_qos, is_container='container', yang_name="qos", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

6385 })

6386

6387 self.__qos = t

6388 if hasattr(self, '_set'):

6389 self._set()

6390

6391 def _unset_qos(self):

6392 self.__qos = YANGDynClass(base=yc_qos_etsi_nfv_nsd__nsd_vnfd_int_virtual_link_desc_flavour_qos, is_container='container', yang_name="qos", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

6393

6394 id = __builtin__.property(_get_id, _set_id)

6395 qos = __builtin__.property(_get_qos, _set_qos)

6396

6397

6398 _pyangbind_elements = OrderedDict([('id', id), ('qos', qos), ])

6399

6400

6401 class yc_connectivity_type_etsi_nfv_nsd__nsd_vnfd_int_virtual_link_desc_connectivity_type(PybindBase):

6402 """

6403 This class was auto-generated by the PythonClass plugin for PYANG

6404 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/int-virtual-link-desc/connectivity-type. Each member element of

6405 the container is represented as a class variable - with a specific

6406 YANG type.

6407 """

6408 __slots__ = ('_path_helper', '_extmethods', '__layer_protocol','__flow_pattern',)

6409

6410 _yang_name = 'connectivity-type'

6411 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

6412

6413 _pybind_generated_by = 'container'

6414

6415 def __init__(self, *args, **kwargs):

6416

6417 self._path_helper = False

6418

6419 self._extmethods = False

6420 self.__layer_protocol = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},)), is_leaf=False, yang_name="layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

6421 self.__flow_pattern = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'line': {}, 'tree': {}, 'mesh': {}},), is_leaf=True, yang_name="flow-pattern", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='flow-pattern', is_config=True)

6422

6423 load = kwargs.pop("load", None)

6424 if args:

6425 if len(args) > 1:

6426 raise TypeError("cannot create a YANG container with >1 argument")

6427 all_attr = True

6428 for e in self._pyangbind_elements:

6429 if not hasattr(args[0], e):

6430 all_attr = False

6431 break

6432 if not all_attr:

6433 raise ValueError("Supplied object did not have the correct attributes")

6434 for e in self._pyangbind_elements:

6435 nobj = getattr(args[0], e)

6436 if nobj._changed() is False:

6437 continue

6438 setmethod = getattr(self, "_set_%s" % e)

6439 if load is None:

6440 setmethod(getattr(args[0], e))

6441 else:

6442 setmethod(getattr(args[0], e), load=load)

6443

6444 def _path(self):

6445 if hasattr(self, "_parent"):

6446 return self._parent._path()+[self._yang_name]

6447 else:

6448 return ['nsd', 'vnfd', 'int-virtual-link-desc', 'connectivity-type']

6449

6450 def _get_layer_protocol(self):

6451 """

6452 Getter method for layer_protocol, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/connectivity_type/layer_protocol (identityref)

6453

6454 YANG Description: Identifies the protocols that the VL uses (Ethernet,

6455 MPLS, ODU2, IPV4, IPV6, Pseudo-Wire). The top layer

6456 protocol of the VL protocol stack shall always be provided.

6457 The lower layer protocols may be included when there are

6458 specific requirements on these layers.

6459 """

6460 return self.__layer_protocol

6461

6462 def _set_layer_protocol(self, v, load=False):

6463 """

6464 Setter method for layer_protocol, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/connectivity_type/layer_protocol (identityref)

6465 If this variable is read-only (config: false) in the

6466 source YANG file, then _set_layer_protocol is considered as a private

6467 method. Backends looking to populate this variable should

6468 do so via calling thisObj._set_layer_protocol() directly.

6469

6470 YANG Description: Identifies the protocols that the VL uses (Ethernet,

6471 MPLS, ODU2, IPV4, IPV6, Pseudo-Wire). The top layer

6472 protocol of the VL protocol stack shall always be provided.

6473 The lower layer protocols may be included when there are

6474 specific requirements on these layers.

6475 """

6476 if hasattr(v, "_utype"):

6477 v = v._utype(v)

6478 try:

6479 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},)), is_leaf=False, yang_name="layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

6480 except (TypeError, ValueError):

6481 raise ValueError({

6482 'error-string': """layer_protocol must be of a type compatible with identityref""",

6483 'defined-type': "etsi-nfv-nsd:identityref",

6484 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},)), is_leaf=False, yang_name="layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)""",

6485 })

6486

6487 self.__layer_protocol = t

6488 if hasattr(self, '_set'):

6489 self._set()

6490

6491 def _unset_layer_protocol(self):

6492 self.__layer_protocol = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},)), is_leaf=False, yang_name="layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

6493

6494

6495 def _get_flow_pattern(self):

6496 """

6497 Getter method for flow_pattern, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/connectivity_type/flow_pattern (flow-pattern)

6498

6499 YANG Description: Identifies the flow pattern of the connectivity (Line,

6500 Tree, Mesh).

6501 """

6502 return self.__flow_pattern

6503

6504 def _set_flow_pattern(self, v, load=False):

6505 """

6506 Setter method for flow_pattern, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/connectivity_type/flow_pattern (flow-pattern)

6507 If this variable is read-only (config: false) in the

6508 source YANG file, then _set_flow_pattern is considered as a private

6509 method. Backends looking to populate this variable should

6510 do so via calling thisObj._set_flow_pattern() directly.

6511

6512 YANG Description: Identifies the flow pattern of the connectivity (Line,

6513 Tree, Mesh).

6514 """

6515 if hasattr(v, "_utype"):

6516 v = v._utype(v)

6517 try:

6518 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'line': {}, 'tree': {}, 'mesh': {}},), is_leaf=True, yang_name="flow-pattern", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='flow-pattern', is_config=True)

6519 except (TypeError, ValueError):

6520 raise ValueError({

6521 'error-string': """flow_pattern must be of a type compatible with flow-pattern""",

6522 'defined-type': "etsi-nfv-nsd:flow-pattern",

6523 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'line': {}, 'tree': {}, 'mesh': {}},), is_leaf=True, yang_name="flow-pattern", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='flow-pattern', is_config=True)""",

6524 })

6525

6526 self.__flow_pattern = t

6527 if hasattr(self, '_set'):

6528 self._set()

6529

6530 def _unset_flow_pattern(self):

6531 self.__flow_pattern = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'line': {}, 'tree': {}, 'mesh': {}},), is_leaf=True, yang_name="flow-pattern", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='flow-pattern', is_config=True)

6532

6533 layer_protocol = __builtin__.property(_get_layer_protocol, _set_layer_protocol)

6534 flow_pattern = __builtin__.property(_get_flow_pattern, _set_flow_pattern)

6535

6536

6537 _pyangbind_elements = OrderedDict([('layer_protocol', layer_protocol), ('flow_pattern', flow_pattern), ])

6538

6539

6540 class yc_monitoring_parameters_etsi_nfv_nsd__nsd_vnfd_int_virtual_link_desc_monitoring_parameters(PybindBase):

6541 """

6542 This class was auto-generated by the PythonClass plugin for PYANG

6543 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/int-virtual-link-desc/monitoring-parameters. Each member element of

6544 the container is represented as a class variable - with a specific

6545 YANG type.

6546 """

6547 __slots__ = ('_path_helper', '_extmethods', '__id','__name','__performance_metric','__collection_period',)

6548

6549 _yang_name = 'monitoring-parameters'

6550 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

6551

6552 _pybind_generated_by = 'container'

6553

6554 def __init__(self, *args, **kwargs):

6555

6556 self._path_helper = False

6557

6558 self._extmethods = False

6559 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

6560 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

6561 self.__performance_metric = YANGDynClass(base=str, is_leaf=True, yang_name="performance-metric", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

6562 self.__collection_period = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="collection-period", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

6563

6564 load = kwargs.pop("load", None)

6565 if args:

6566 if len(args) > 1:

6567 raise TypeError("cannot create a YANG container with >1 argument")

6568 all_attr = True

6569 for e in self._pyangbind_elements:

6570 if not hasattr(args[0], e):

6571 all_attr = False

6572 break

6573 if not all_attr:

6574 raise ValueError("Supplied object did not have the correct attributes")

6575 for e in self._pyangbind_elements:

6576 nobj = getattr(args[0], e)

6577 if nobj._changed() is False:

6578 continue

6579 setmethod = getattr(self, "_set_%s" % e)

6580 if load is None:

6581 setmethod(getattr(args[0], e))

6582 else:

6583 setmethod(getattr(args[0], e), load=load)

6584

6585 def _path(self):

6586 if hasattr(self, "_parent"):

6587 return self._parent._path()+[self._yang_name]

6588 else:

6589 return ['nsd', 'vnfd', 'int-virtual-link-desc', 'monitoring-parameters']

6590

6591 def _get_id(self):

6592 """

6593 Getter method for id, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/monitoring_parameters/id (string)

6594

6595 YANG Description: Unique identifier of the monitoring parameter.

6596 """

6597 return self.__id

6598

6599 def _set_id(self, v, load=False):

6600 """

6601 Setter method for id, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/monitoring_parameters/id (string)

6602 If this variable is read-only (config: false) in the

6603 source YANG file, then _set_id is considered as a private

6604 method. Backends looking to populate this variable should

6605 do so via calling thisObj._set_id() directly.

6606

6607 YANG Description: Unique identifier of the monitoring parameter.

6608 """

6609 parent = getattr(self, "_parent", None)

6610 if parent is not None and load is False:

6611 raise AttributeError("Cannot set keys directly when" +

6612 " within an instantiated list")

6613

6614 if hasattr(v, "_utype"):

6615 v = v._utype(v)

6616 try:

6617 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

6618 except (TypeError, ValueError):

6619 raise ValueError({

6620 'error-string': """id must be of a type compatible with string""",

6621 'defined-type': "string",

6622 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

6623 })

6624

6625 self.__id = t

6626 if hasattr(self, '_set'):

6627 self._set()

6628

6629 def _unset_id(self):

6630 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

6631

6632

6633 def _get_name(self):

6634 """

6635 Getter method for name, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/monitoring_parameters/name (string)

6636

6637 YANG Description: Human readable name of the monitoring parameter.

6638 """

6639 return self.__name

6640

6641 def _set_name(self, v, load=False):

6642 """

6643 Setter method for name, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/monitoring_parameters/name (string)

6644 If this variable is read-only (config: false) in the

6645 source YANG file, then _set_name is considered as a private

6646 method. Backends looking to populate this variable should

6647 do so via calling thisObj._set_name() directly.

6648

6649 YANG Description: Human readable name of the monitoring parameter.

6650 """

6651 if hasattr(v, "_utype"):

6652 v = v._utype(v)

6653 try:

6654 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

6655 except (TypeError, ValueError):

6656 raise ValueError({

6657 'error-string': """name must be of a type compatible with string""",

6658 'defined-type': "string",

6659 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

6660 })

6661

6662 self.__name = t

6663 if hasattr(self, '_set'):

6664 self._set()

6665

6666 def _unset_name(self):

6667 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

6668

6669

6670 def _get_performance_metric(self):

6671 """

6672 Getter method for performance_metric, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/monitoring_parameters/performance_metric (string)

6673

6674 YANG Description: Performance metric that is monitored. This attribute shall

6675 contain the related 'Measurement Name' value as defined in

6676 clause 7.2 of ETSI GS NFV-IFA 027

6677 """

6678 return self.__performance_metric

6679

6680 def _set_performance_metric(self, v, load=False):

6681 """

6682 Setter method for performance_metric, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/monitoring_parameters/performance_metric (string)

6683 If this variable is read-only (config: false) in the

6684 source YANG file, then _set_performance_metric is considered as a private

6685 method. Backends looking to populate this variable should

6686 do so via calling thisObj._set_performance_metric() directly.

6687

6688 YANG Description: Performance metric that is monitored. This attribute shall

6689 contain the related 'Measurement Name' value as defined in

6690 clause 7.2 of ETSI GS NFV-IFA 027

6691 """

6692 if hasattr(v, "_utype"):

6693 v = v._utype(v)

6694 try:

6695 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="performance-metric", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

6696 except (TypeError, ValueError):

6697 raise ValueError({

6698 'error-string': """performance_metric must be of a type compatible with string""",

6699 'defined-type': "string",

6700 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="performance-metric", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

6701 })

6702

6703 self.__performance_metric = t

6704 if hasattr(self, '_set'):

6705 self._set()

6706

6707 def _unset_performance_metric(self):

6708 self.__performance_metric = YANGDynClass(base=str, is_leaf=True, yang_name="performance-metric", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

6709

6710

6711 def _get_collection_period(self):

6712 """

6713 Getter method for collection_period, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/monitoring_parameters/collection_period (uint64)

6714

6715 YANG Description: An attribute that describes the recommended periodicity at

6716 which to collect the performance information. VNFM determines

6717 if this parameter is considered.

6718

6719 The vendor may provide this information as a guidance for

6720 creating PmJobs if needed.

6721 """

6722 return self.__collection_period

6723

6724 def _set_collection_period(self, v, load=False):

6725 """

6726 Setter method for collection_period, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/monitoring_parameters/collection_period (uint64)

6727 If this variable is read-only (config: false) in the

6728 source YANG file, then _set_collection_period is considered as a private

6729 method. Backends looking to populate this variable should

6730 do so via calling thisObj._set_collection_period() directly.

6731

6732 YANG Description: An attribute that describes the recommended periodicity at

6733 which to collect the performance information. VNFM determines

6734 if this parameter is considered.

6735

6736 The vendor may provide this information as a guidance for

6737 creating PmJobs if needed.

6738 """

6739 if hasattr(v, "_utype"):

6740 v = v._utype(v)

6741 try:

6742 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="collection-period", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

6743 except (TypeError, ValueError):

6744 raise ValueError({

6745 'error-string': """collection_period must be of a type compatible with uint64""",

6746 'defined-type': "uint64",

6747 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="collection-period", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)""",

6748 })

6749

6750 self.__collection_period = t

6751 if hasattr(self, '_set'):

6752 self._set()

6753

6754 def _unset_collection_period(self):

6755 self.__collection_period = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="collection-period", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

6756

6757 id = __builtin__.property(_get_id, _set_id)

6758 name = __builtin__.property(_get_name, _set_name)

6759 performance_metric = __builtin__.property(_get_performance_metric, _set_performance_metric)

6760 collection_period = __builtin__.property(_get_collection_period, _set_collection_period)

6761

6762

6763 _pyangbind_elements = OrderedDict([('id', id), ('name', name), ('performance_metric', performance_metric), ('collection_period', collection_period), ])

6764

6765

6766 class yc_int_virtual_link_desc_etsi_nfv_nsd__nsd_vnfd_int_virtual_link_desc(PybindBase):

6767 """

6768 This class was auto-generated by the PythonClass plugin for PYANG

6769 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/int-virtual-link-desc. Each member element of

6770 the container is represented as a class variable - with a specific

6771 YANG type.

6772

6773 YANG Description: Represents the type of network connectivity mandated by the

6774 VNF provider between two or more CPs which includes at

6775 least one internal CP.

6776 """

6777 __slots__ = ('_path_helper', '_extmethods', '__id','__flavour','__connectivity_type','__test_access','__description','__monitoring_parameters',)

6778

6779 _yang_name = 'int-virtual-link-desc'

6780 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

6781

6782 _pybind_generated_by = 'container'

6783

6784 def __init__(self, *args, **kwargs):

6785

6786 self._path_helper = False

6787

6788 self._extmethods = False

6789 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

6790 self.__flavour = YANGDynClass(base=YANGListType("id",yc_flavour_etsi_nfv_nsd__nsd_vnfd_int_virtual_link_desc_flavour, yang_name="flavour", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="flavour", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

6791 self.__connectivity_type = YANGDynClass(base=yc_connectivity_type_etsi_nfv_nsd__nsd_vnfd_int_virtual_link_desc_connectivity_type, is_container='container', yang_name="connectivity-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

6792 self.__test_access = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="test-access", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

6793 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

6794 self.__monitoring_parameters = YANGDynClass(base=YANGListType("id",yc_monitoring_parameters_etsi_nfv_nsd__nsd_vnfd_int_virtual_link_desc_monitoring_parameters, yang_name="monitoring-parameters", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="monitoring-parameters", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

6795

6796 load = kwargs.pop("load", None)

6797 if args:

6798 if len(args) > 1:

6799 raise TypeError("cannot create a YANG container with >1 argument")

6800 all_attr = True

6801 for e in self._pyangbind_elements:

6802 if not hasattr(args[0], e):

6803 all_attr = False

6804 break

6805 if not all_attr:

6806 raise ValueError("Supplied object did not have the correct attributes")

6807 for e in self._pyangbind_elements:

6808 nobj = getattr(args[0], e)

6809 if nobj._changed() is False:

6810 continue

6811 setmethod = getattr(self, "_set_%s" % e)

6812 if load is None:

6813 setmethod(getattr(args[0], e))

6814 else:

6815 setmethod(getattr(args[0], e), load=load)

6816

6817 def _path(self):

6818 if hasattr(self, "_parent"):

6819 return self._parent._path()+[self._yang_name]

6820 else:

6821 return ['nsd', 'vnfd', 'int-virtual-link-desc']

6822

6823 def _get_id(self):

6824 """

6825 Getter method for id, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/id (string)

6826

6827 YANG Description: Unique identifier of this internal VLD in VNFD.

6828 """

6829 return self.__id

6830

6831 def _set_id(self, v, load=False):

6832 """

6833 Setter method for id, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/id (string)

6834 If this variable is read-only (config: false) in the

6835 source YANG file, then _set_id is considered as a private

6836 method. Backends looking to populate this variable should

6837 do so via calling thisObj._set_id() directly.

6838

6839 YANG Description: Unique identifier of this internal VLD in VNFD.

6840 """

6841 parent = getattr(self, "_parent", None)

6842 if parent is not None and load is False:

6843 raise AttributeError("Cannot set keys directly when" +

6844 " within an instantiated list")

6845

6846 if hasattr(v, "_utype"):

6847 v = v._utype(v)

6848 try:

6849 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

6850 except (TypeError, ValueError):

6851 raise ValueError({

6852 'error-string': """id must be of a type compatible with string""",

6853 'defined-type': "string",

6854 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

6855 })

6856

6857 self.__id = t

6858 if hasattr(self, '_set'):

6859 self._set()

6860

6861 def _unset_id(self):

6862 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

6863

6864

6865 def _get_flavour(self):

6866 """

6867 Getter method for flavour, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/flavour (list)

6868

6869 YANG Description: Describes a specific flavour of the VL with specific

6870 bitrate requirements.

6871 """

6872 return self.__flavour

6873

6874 def _set_flavour(self, v, load=False):

6875 """

6876 Setter method for flavour, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/flavour (list)

6877 If this variable is read-only (config: false) in the

6878 source YANG file, then _set_flavour is considered as a private

6879 method. Backends looking to populate this variable should

6880 do so via calling thisObj._set_flavour() directly.

6881

6882 YANG Description: Describes a specific flavour of the VL with specific

6883 bitrate requirements.

6884 """

6885 if hasattr(v, "_utype"):

6886 v = v._utype(v)

6887 try:

6888 t = YANGDynClass(v,base=YANGListType("id",yc_flavour_etsi_nfv_nsd__nsd_vnfd_int_virtual_link_desc_flavour, yang_name="flavour", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="flavour", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

6889 except (TypeError, ValueError):

6890 raise ValueError({

6891 'error-string': """flavour must be of a type compatible with list""",

6892 'defined-type': "list",

6893 'generated-type': """YANGDynClass(base=YANGListType("id",yc_flavour_etsi_nfv_nsd__nsd_vnfd_int_virtual_link_desc_flavour, yang_name="flavour", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="flavour", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

6894 })

6895

6896 self.__flavour = t

6897 if hasattr(self, '_set'):

6898 self._set()

6899

6900 def _unset_flavour(self):

6901 self.__flavour = YANGDynClass(base=YANGListType("id",yc_flavour_etsi_nfv_nsd__nsd_vnfd_int_virtual_link_desc_flavour, yang_name="flavour", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="flavour", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

6902

6903

6904 def _get_connectivity_type(self):

6905 """

6906 Getter method for connectivity_type, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/connectivity_type (container)

6907 """

6908 return self.__connectivity_type

6909

6910 def _set_connectivity_type(self, v, load=False):

6911 """

6912 Setter method for connectivity_type, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/connectivity_type (container)

6913 If this variable is read-only (config: false) in the

6914 source YANG file, then _set_connectivity_type is considered as a private

6915 method. Backends looking to populate this variable should

6916 do so via calling thisObj._set_connectivity_type() directly.

6917 """

6918 if hasattr(v, "_utype"):

6919 v = v._utype(v)

6920 try:

6921 t = YANGDynClass(v,base=yc_connectivity_type_etsi_nfv_nsd__nsd_vnfd_int_virtual_link_desc_connectivity_type, is_container='container', yang_name="connectivity-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

6922 except (TypeError, ValueError):

6923 raise ValueError({

6924 'error-string': """connectivity_type must be of a type compatible with container""",

6925 'defined-type': "container",

6926 'generated-type': """YANGDynClass(base=yc_connectivity_type_etsi_nfv_nsd__nsd_vnfd_int_virtual_link_desc_connectivity_type, is_container='container', yang_name="connectivity-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

6927 })

6928

6929 self.__connectivity_type = t

6930 if hasattr(self, '_set'):

6931 self._set()

6932

6933 def _unset_connectivity_type(self):

6934 self.__connectivity_type = YANGDynClass(base=yc_connectivity_type_etsi_nfv_nsd__nsd_vnfd_int_virtual_link_desc_connectivity_type, is_container='container', yang_name="connectivity-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

6935

6936

6937 def _get_test_access(self):

6938 """

6939 Getter method for test_access, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/test_access (string)

6940

6941 YANG Description: Specifies test access facilities expected on the VL

6942(e.g. none, passive monitoring, or active (intrusive)

6943 loopbacks at endpoints.

6944 """

6945 return self.__test_access

6946

6947 def _set_test_access(self, v, load=False):

6948 """

6949 Setter method for test_access, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/test_access (string)

6950 If this variable is read-only (config: false) in the

6951 source YANG file, then _set_test_access is considered as a private

6952 method. Backends looking to populate this variable should

6953 do so via calling thisObj._set_test_access() directly.

6954

6955 YANG Description: Specifies test access facilities expected on the VL

6956(e.g. none, passive monitoring, or active (intrusive)

6957 loopbacks at endpoints.

6958 """

6959 if hasattr(v, "_utype"):

6960 v = v._utype(v)

6961 try:

6962 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="test-access", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

6963 except (TypeError, ValueError):

6964 raise ValueError({

6965 'error-string': """test_access must be of a type compatible with string""",

6966 'defined-type': "string",

6967 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="test-access", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

6968 })

6969

6970 self.__test_access = t

6971 if hasattr(self, '_set'):

6972 self._set()

6973

6974 def _unset_test_access(self):

6975 self.__test_access = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="test-access", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

6976

6977

6978 def _get_description(self):

6979 """

6980 Getter method for description, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/description (string)

6981

6982 YANG Description: Provides human-readable information on the purpose of

6983 the VL (e.g. control plane traffic).

6984 """

6985 return self.__description

6986

6987 def _set_description(self, v, load=False):

6988 """

6989 Setter method for description, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/description (string)

6990 If this variable is read-only (config: false) in the

6991 source YANG file, then _set_description is considered as a private

6992 method. Backends looking to populate this variable should

6993 do so via calling thisObj._set_description() directly.

6994

6995 YANG Description: Provides human-readable information on the purpose of

6996 the VL (e.g. control plane traffic).

6997 """

6998 if hasattr(v, "_utype"):

6999 v = v._utype(v)

7000 try:

7001 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

7002 except (TypeError, ValueError):

7003 raise ValueError({

7004 'error-string': """description must be of a type compatible with string""",

7005 'defined-type': "string",

7006 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

7007 })

7008

7009 self.__description = t

7010 if hasattr(self, '_set'):

7011 self._set()

7012

7013 def _unset_description(self):

7014 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

7015

7016

7017 def _get_monitoring_parameters(self):

7018 """

7019 Getter method for monitoring_parameters, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/monitoring_parameters (list)

7020 """

7021 return self.__monitoring_parameters

7022

7023 def _set_monitoring_parameters(self, v, load=False):

7024 """

7025 Setter method for monitoring_parameters, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc/monitoring_parameters (list)

7026 If this variable is read-only (config: false) in the

7027 source YANG file, then _set_monitoring_parameters is considered as a private

7028 method. Backends looking to populate this variable should

7029 do so via calling thisObj._set_monitoring_parameters() directly.

7030 """

7031 if hasattr(v, "_utype"):

7032 v = v._utype(v)

7033 try:

7034 t = YANGDynClass(v,base=YANGListType("id",yc_monitoring_parameters_etsi_nfv_nsd__nsd_vnfd_int_virtual_link_desc_monitoring_parameters, yang_name="monitoring-parameters", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="monitoring-parameters", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

7035 except (TypeError, ValueError):

7036 raise ValueError({

7037 'error-string': """monitoring_parameters must be of a type compatible with list""",

7038 'defined-type': "list",

7039 'generated-type': """YANGDynClass(base=YANGListType("id",yc_monitoring_parameters_etsi_nfv_nsd__nsd_vnfd_int_virtual_link_desc_monitoring_parameters, yang_name="monitoring-parameters", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="monitoring-parameters", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

7040 })

7041

7042 self.__monitoring_parameters = t

7043 if hasattr(self, '_set'):

7044 self._set()

7045

7046 def _unset_monitoring_parameters(self):

7047 self.__monitoring_parameters = YANGDynClass(base=YANGListType("id",yc_monitoring_parameters_etsi_nfv_nsd__nsd_vnfd_int_virtual_link_desc_monitoring_parameters, yang_name="monitoring-parameters", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="monitoring-parameters", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

7048

7049 id = __builtin__.property(_get_id, _set_id)

7050 flavour = __builtin__.property(_get_flavour, _set_flavour)

7051 connectivity_type = __builtin__.property(_get_connectivity_type, _set_connectivity_type)

7052 test_access = __builtin__.property(_get_test_access, _set_test_access)

7053 description = __builtin__.property(_get_description, _set_description)

7054 monitoring_parameters = __builtin__.property(_get_monitoring_parameters, _set_monitoring_parameters)

7055

7056

7057 _pyangbind_elements = OrderedDict([('id', id), ('flavour', flavour), ('connectivity_type', connectivity_type), ('test_access', test_access), ('description', description), ('monitoring_parameters', monitoring_parameters), ])

7058

7059

7060 class yc_security_group_rule_etsi_nfv_nsd__nsd_vnfd_security_group_rule(PybindBase):

7061 """

7062 This class was auto-generated by the PythonClass plugin for PYANG

7063 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/security-group-rule. Each member element of

7064 the container is represented as a class variable - with a specific

7065 YANG type.

7066

7067 YANG Description: Defines security group rules to be used by the VNF.

7068 """

7069 __slots__ = ('_path_helper', '_extmethods', '__id','__description','__direction','__ether_type','__protocol','__port_range_min','__port_range_max',)

7070

7071 _yang_name = 'security-group-rule'

7072 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

7073

7074 _pybind_generated_by = 'container'

7075

7076 def __init__(self, *args, **kwargs):

7077

7078 self._path_helper = False

7079

7080 self._extmethods = False

7081 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

7082 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

7083 self.__direction = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ingress': {}, 'egress': {}},), default=str("ingress"), is_leaf=True, yang_name="direction", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

7084 self.__ether_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), default=str("ipv4"), is_leaf=True, yang_name="ether-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

7085 self.__protocol = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'tcp': {}, 'udp': {}, 'icmp': {}},), default=str("tcp"), is_leaf=True, yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

7086 self.__port_range_min = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(0), is_leaf=True, yang_name="port-range-min", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

7087 self.__port_range_max = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(65535), is_leaf=True, yang_name="port-range-max", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

7088

7089 load = kwargs.pop("load", None)

7090 if args:

7091 if len(args) > 1:

7092 raise TypeError("cannot create a YANG container with >1 argument")

7093 all_attr = True

7094 for e in self._pyangbind_elements:

7095 if not hasattr(args[0], e):

7096 all_attr = False

7097 break

7098 if not all_attr:

7099 raise ValueError("Supplied object did not have the correct attributes")

7100 for e in self._pyangbind_elements:

7101 nobj = getattr(args[0], e)

7102 if nobj._changed() is False:

7103 continue

7104 setmethod = getattr(self, "_set_%s" % e)

7105 if load is None:

7106 setmethod(getattr(args[0], e))

7107 else:

7108 setmethod(getattr(args[0], e), load=load)

7109

7110 def _path(self):

7111 if hasattr(self, "_parent"):

7112 return self._parent._path()+[self._yang_name]

7113 else:

7114 return ['nsd', 'vnfd', 'security-group-rule']

7115

7116 def _get_id(self):

7117 """

7118 Getter method for id, mapped from YANG variable /nsd/vnfd/security_group_rule/id (string)

7119

7120 YANG Description: Identifier of this SecurityGroupRule information

7121 element.

7122 """

7123 return self.__id

7124

7125 def _set_id(self, v, load=False):

7126 """

7127 Setter method for id, mapped from YANG variable /nsd/vnfd/security_group_rule/id (string)

7128 If this variable is read-only (config: false) in the

7129 source YANG file, then _set_id is considered as a private

7130 method. Backends looking to populate this variable should

7131 do so via calling thisObj._set_id() directly.

7132

7133 YANG Description: Identifier of this SecurityGroupRule information

7134 element.

7135 """

7136 parent = getattr(self, "_parent", None)

7137 if parent is not None and load is False:

7138 raise AttributeError("Cannot set keys directly when" +

7139 " within an instantiated list")

7140

7141 if hasattr(v, "_utype"):

7142 v = v._utype(v)

7143 try:

7144 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

7145 except (TypeError, ValueError):

7146 raise ValueError({

7147 'error-string': """id must be of a type compatible with string""",

7148 'defined-type': "string",

7149 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

7150 })

7151

7152 self.__id = t

7153 if hasattr(self, '_set'):

7154 self._set()

7155

7156 def _unset_id(self):

7157 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

7158

7159

7160 def _get_description(self):

7161 """

7162 Getter method for description, mapped from YANG variable /nsd/vnfd/security_group_rule/description (string)

7163

7164 YANG Description: Human readable description of the security group rule.

7165 """

7166 return self.__description

7167

7168 def _set_description(self, v, load=False):

7169 """

7170 Setter method for description, mapped from YANG variable /nsd/vnfd/security_group_rule/description (string)

7171 If this variable is read-only (config: false) in the

7172 source YANG file, then _set_description is considered as a private

7173 method. Backends looking to populate this variable should

7174 do so via calling thisObj._set_description() directly.

7175

7176 YANG Description: Human readable description of the security group rule.

7177 """

7178 if hasattr(v, "_utype"):

7179 v = v._utype(v)

7180 try:

7181 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

7182 except (TypeError, ValueError):

7183 raise ValueError({

7184 'error-string': """description must be of a type compatible with string""",

7185 'defined-type': "string",

7186 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

7187 })

7188

7189 self.__description = t

7190 if hasattr(self, '_set'):

7191 self._set()

7192

7193 def _unset_description(self):

7194 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

7195

7196

7197 def _get_direction(self):

7198 """

7199 Getter method for direction, mapped from YANG variable /nsd/vnfd/security_group_rule/direction (enumeration)

7200

7201 YANG Description: The direction in which the security group rule is applied.

7202 Permitted values: INGRESS, EGRESS. Defaults to INGRESS.

7203 """

7204 return self.__direction

7205

7206 def _set_direction(self, v, load=False):

7207 """

7208 Setter method for direction, mapped from YANG variable /nsd/vnfd/security_group_rule/direction (enumeration)

7209 If this variable is read-only (config: false) in the

7210 source YANG file, then _set_direction is considered as a private

7211 method. Backends looking to populate this variable should

7212 do so via calling thisObj._set_direction() directly.

7213

7214 YANG Description: The direction in which the security group rule is applied.

7215 Permitted values: INGRESS, EGRESS. Defaults to INGRESS.

7216 """

7217 if hasattr(v, "_utype"):

7218 v = v._utype(v)

7219 try:

7220 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ingress': {}, 'egress': {}},), default=str("ingress"), is_leaf=True, yang_name="direction", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

7221 except (TypeError, ValueError):

7222 raise ValueError({

7223 'error-string': """direction must be of a type compatible with enumeration""",

7224 'defined-type': "etsi-nfv-nsd:enumeration",

7225 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ingress': {}, 'egress': {}},), default=str("ingress"), is_leaf=True, yang_name="direction", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)""",

7226 })

7227

7228 self.__direction = t

7229 if hasattr(self, '_set'):

7230 self._set()

7231

7232 def _unset_direction(self):

7233 self.__direction = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ingress': {}, 'egress': {}},), default=str("ingress"), is_leaf=True, yang_name="direction", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

7234

7235

7236 def _get_ether_type(self):

7237 """

7238 Getter method for ether_type, mapped from YANG variable /nsd/vnfd/security_group_rule/ether_type (enumeration)

7239

7240 YANG Description: Indicates the protocol carried over the Ethernet layer.

7241 Permitted values: IPV4, IPV6. Defaults to IPV4.

7242 """

7243 return self.__ether_type

7244

7245 def _set_ether_type(self, v, load=False):

7246 """

7247 Setter method for ether_type, mapped from YANG variable /nsd/vnfd/security_group_rule/ether_type (enumeration)

7248 If this variable is read-only (config: false) in the

7249 source YANG file, then _set_ether_type is considered as a private

7250 method. Backends looking to populate this variable should

7251 do so via calling thisObj._set_ether_type() directly.

7252

7253 YANG Description: Indicates the protocol carried over the Ethernet layer.

7254 Permitted values: IPV4, IPV6. Defaults to IPV4.

7255 """

7256 if hasattr(v, "_utype"):

7257 v = v._utype(v)

7258 try:

7259 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), default=str("ipv4"), is_leaf=True, yang_name="ether-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

7260 except (TypeError, ValueError):

7261 raise ValueError({

7262 'error-string': """ether_type must be of a type compatible with enumeration""",

7263 'defined-type': "etsi-nfv-nsd:enumeration",

7264 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), default=str("ipv4"), is_leaf=True, yang_name="ether-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)""",

7265 })

7266

7267 self.__ether_type = t

7268 if hasattr(self, '_set'):

7269 self._set()

7270

7271 def _unset_ether_type(self):

7272 self.__ether_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), default=str("ipv4"), is_leaf=True, yang_name="ether-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

7273

7274

7275 def _get_protocol(self):

7276 """

7277 Getter method for protocol, mapped from YANG variable /nsd/vnfd/security_group_rule/protocol (enumeration)

7278

7279 YANG Description: Indicates the protocol carried over the IP layer.

7280 Permitted values: any protocol defined in the IANA

7281 protocol registry, e.g. TCP, UDP, ICMP, etc. Defaults

7282 to TCP.

7283 """

7284 return self.__protocol

7285

7286 def _set_protocol(self, v, load=False):

7287 """

7288 Setter method for protocol, mapped from YANG variable /nsd/vnfd/security_group_rule/protocol (enumeration)

7289 If this variable is read-only (config: false) in the

7290 source YANG file, then _set_protocol is considered as a private

7291 method. Backends looking to populate this variable should

7292 do so via calling thisObj._set_protocol() directly.

7293

7294 YANG Description: Indicates the protocol carried over the IP layer.

7295 Permitted values: any protocol defined in the IANA

7296 protocol registry, e.g. TCP, UDP, ICMP, etc. Defaults

7297 to TCP.

7298 """

7299 if hasattr(v, "_utype"):

7300 v = v._utype(v)

7301 try:

7302 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'tcp': {}, 'udp': {}, 'icmp': {}},), default=str("tcp"), is_leaf=True, yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

7303 except (TypeError, ValueError):

7304 raise ValueError({

7305 'error-string': """protocol must be of a type compatible with enumeration""",

7306 'defined-type': "etsi-nfv-nsd:enumeration",

7307 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'tcp': {}, 'udp': {}, 'icmp': {}},), default=str("tcp"), is_leaf=True, yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)""",

7308 })

7309

7310 self.__protocol = t

7311 if hasattr(self, '_set'):

7312 self._set()

7313

7314 def _unset_protocol(self):

7315 self.__protocol = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'tcp': {}, 'udp': {}, 'icmp': {}},), default=str("tcp"), is_leaf=True, yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

7316

7317

7318 def _get_port_range_min(self):

7319 """

7320 Getter method for port_range_min, mapped from YANG variable /nsd/vnfd/security_group_rule/port_range_min (uint16)

7321

7322 YANG Description: Indicates minimum port number in the range that is

7323 matched by the security group rule. Defaults to 0.

7324 """

7325 return self.__port_range_min

7326

7327 def _set_port_range_min(self, v, load=False):

7328 """

7329 Setter method for port_range_min, mapped from YANG variable /nsd/vnfd/security_group_rule/port_range_min (uint16)

7330 If this variable is read-only (config: false) in the

7331 source YANG file, then _set_port_range_min is considered as a private

7332 method. Backends looking to populate this variable should

7333 do so via calling thisObj._set_port_range_min() directly.

7334

7335 YANG Description: Indicates minimum port number in the range that is

7336 matched by the security group rule. Defaults to 0.

7337 """

7338 if hasattr(v, "_utype"):

7339 v = v._utype(v)

7340 try:

7341 t = YANGDynClass(v,base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(0), is_leaf=True, yang_name="port-range-min", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

7342 except (TypeError, ValueError):

7343 raise ValueError({

7344 'error-string': """port_range_min must be of a type compatible with uint16""",

7345 'defined-type': "uint16",

7346 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(0), is_leaf=True, yang_name="port-range-min", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)""",

7347 })

7348

7349 self.__port_range_min = t

7350 if hasattr(self, '_set'):

7351 self._set()

7352

7353 def _unset_port_range_min(self):

7354 self.__port_range_min = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(0), is_leaf=True, yang_name="port-range-min", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

7355

7356

7357 def _get_port_range_max(self):

7358 """

7359 Getter method for port_range_max, mapped from YANG variable /nsd/vnfd/security_group_rule/port_range_max (uint16)

7360

7361 YANG Description: Indicates maximum port number in the range that is

7362 matched by the security group rule. Defaults to 65535.

7363 """

7364 return self.__port_range_max

7365

7366 def _set_port_range_max(self, v, load=False):

7367 """

7368 Setter method for port_range_max, mapped from YANG variable /nsd/vnfd/security_group_rule/port_range_max (uint16)

7369 If this variable is read-only (config: false) in the

7370 source YANG file, then _set_port_range_max is considered as a private

7371 method. Backends looking to populate this variable should

7372 do so via calling thisObj._set_port_range_max() directly.

7373

7374 YANG Description: Indicates maximum port number in the range that is

7375 matched by the security group rule. Defaults to 65535.

7376 """

7377 if hasattr(v, "_utype"):

7378 v = v._utype(v)

7379 try:

7380 t = YANGDynClass(v,base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(65535), is_leaf=True, yang_name="port-range-max", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

7381 except (TypeError, ValueError):

7382 raise ValueError({

7383 'error-string': """port_range_max must be of a type compatible with uint16""",

7384 'defined-type': "uint16",

7385 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(65535), is_leaf=True, yang_name="port-range-max", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)""",

7386 })

7387

7388 self.__port_range_max = t

7389 if hasattr(self, '_set'):

7390 self._set()

7391

7392 def _unset_port_range_max(self):

7393 self.__port_range_max = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(65535), is_leaf=True, yang_name="port-range-max", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

7394

7395 id = __builtin__.property(_get_id, _set_id)

7396 description = __builtin__.property(_get_description, _set_description)

7397 direction = __builtin__.property(_get_direction, _set_direction)

7398 ether_type = __builtin__.property(_get_ether_type, _set_ether_type)

7399 protocol = __builtin__.property(_get_protocol, _set_protocol)

7400 port_range_min = __builtin__.property(_get_port_range_min, _set_port_range_min)

7401 port_range_max = __builtin__.property(_get_port_range_max, _set_port_range_max)

7402

7403

7404 _pyangbind_elements = OrderedDict([('id', id), ('description', description), ('direction', direction), ('ether_type', ether_type), ('protocol', protocol), ('port_range_min', port_range_min), ('port_range_max', port_range_max), ])

7405

7406

7407 class yc_int_cpd_etsi_nfv_nsd__nsd_vnfd_ext_cpd_int_cpd(PybindBase):

7408 """

7409 This class was auto-generated by the PythonClass plugin for PYANG

7410 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/ext-cpd/int-cpd. Each member element of

7411 the container is represented as a class variable - with a specific

7412 YANG type.

7413 """

7414 __slots__ = ('_path_helper', '_extmethods', '__vdu_id','__cpd',)

7415

7416 _yang_name = 'int-cpd'

7417 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

7418

7419 _pybind_generated_by = 'container'

7420

7421 def __init__(self, *args, **kwargs):

7422

7423 self._path_helper = False

7424

7425 self._extmethods = False

7426 self.__vdu_id = YANGDynClass(base=str, is_leaf=True, yang_name="vdu-id", parent=self, choice=('cp-connection', 'int-cpd'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

7427 self.__cpd = YANGDynClass(base=str, is_leaf=True, yang_name="cpd", parent=self, choice=('cp-connection', 'int-cpd'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

7428

7429 load = kwargs.pop("load", None)

7430 if args:

7431 if len(args) > 1:

7432 raise TypeError("cannot create a YANG container with >1 argument")

7433 all_attr = True

7434 for e in self._pyangbind_elements:

7435 if not hasattr(args[0], e):

7436 all_attr = False

7437 break

7438 if not all_attr:

7439 raise ValueError("Supplied object did not have the correct attributes")

7440 for e in self._pyangbind_elements:

7441 nobj = getattr(args[0], e)

7442 if nobj._changed() is False:

7443 continue

7444 setmethod = getattr(self, "_set_%s" % e)

7445 if load is None:

7446 setmethod(getattr(args[0], e))

7447 else:

7448 setmethod(getattr(args[0], e), load=load)

7449

7450 def _path(self):

7451 if hasattr(self, "_parent"):

7452 return self._parent._path()+[self._yang_name]

7453 else:

7454 return ['nsd', 'vnfd', 'ext-cpd', 'int-cpd']

7455

7456 def _get_vdu_id(self):

7457 """

7458 Getter method for vdu_id, mapped from YANG variable /nsd/vnfd/ext_cpd/int_cpd/vdu_id (leafref)

7459 """

7460 return self.__vdu_id

7461

7462 def _set_vdu_id(self, v, load=False):

7463 """

7464 Setter method for vdu_id, mapped from YANG variable /nsd/vnfd/ext_cpd/int_cpd/vdu_id (leafref)

7465 If this variable is read-only (config: false) in the

7466 source YANG file, then _set_vdu_id is considered as a private

7467 method. Backends looking to populate this variable should

7468 do so via calling thisObj._set_vdu_id() directly.

7469 """

7470 if hasattr(v, "_utype"):

7471 v = v._utype(v)

7472 try:

7473 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="vdu-id", parent=self, choice=('cp-connection', 'int-cpd'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

7474 except (TypeError, ValueError):

7475 raise ValueError({

7476 'error-string': """vdu_id must be of a type compatible with leafref""",

7477 'defined-type': "leafref",

7478 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="vdu-id", parent=self, choice=('cp-connection', 'int-cpd'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

7479 })

7480

7481 self.__vdu_id = t

7482 if hasattr(self, '_set'):

7483 self._set()

7484

7485 def _unset_vdu_id(self):

7486 self.__vdu_id = YANGDynClass(base=str, is_leaf=True, yang_name="vdu-id", parent=self, choice=('cp-connection', 'int-cpd'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

7487

7488

7489 def _get_cpd(self):

7490 """

7491 Getter method for cpd, mapped from YANG variable /nsd/vnfd/ext_cpd/int_cpd/cpd (leafref)

7492 """

7493 return self.__cpd

7494

7495 def _set_cpd(self, v, load=False):

7496 """

7497 Setter method for cpd, mapped from YANG variable /nsd/vnfd/ext_cpd/int_cpd/cpd (leafref)

7498 If this variable is read-only (config: false) in the

7499 source YANG file, then _set_cpd is considered as a private

7500 method. Backends looking to populate this variable should

7501 do so via calling thisObj._set_cpd() directly.

7502 """

7503 if hasattr(v, "_utype"):

7504 v = v._utype(v)

7505 try:

7506 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="cpd", parent=self, choice=('cp-connection', 'int-cpd'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

7507 except (TypeError, ValueError):

7508 raise ValueError({

7509 'error-string': """cpd must be of a type compatible with leafref""",

7510 'defined-type': "leafref",

7511 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="cpd", parent=self, choice=('cp-connection', 'int-cpd'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

7512 })

7513

7514 self.__cpd = t

7515 if hasattr(self, '_set'):

7516 self._set()

7517

7518 def _unset_cpd(self):

7519 self.__cpd = YANGDynClass(base=str, is_leaf=True, yang_name="cpd", parent=self, choice=('cp-connection', 'int-cpd'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

7520

7521 vdu_id = __builtin__.property(_get_vdu_id, _set_vdu_id)

7522 cpd = __builtin__.property(_get_cpd, _set_cpd)

7523

7524 __choices__ = {'cp-connection': {'int-cpd': ['vdu_id', 'cpd']}}

7525 _pyangbind_elements = OrderedDict([('vdu_id', vdu_id), ('cpd', cpd), ])

7526

7527

7528 class yc_network_interface_requirements_etsi_nfv_nsd__nsd_vnfd_ext_cpd_virtual_network_interface_requirement_network_interface_requirements(PybindBase):

7529 """

7530 This class was auto-generated by the PythonClass plugin for PYANG

7531 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/ext-cpd/virtual-network-interface-requirement/network-interface-requirements. Each member element of

7532 the container is represented as a class variable - with a specific

7533 YANG type.

7534

7535 YANG Description: The network interface requirements. An element from an

7536 array of key-value pairs that articulate the network

7537 interface deployment requirements.

7538 """

7539 __slots__ = ('_path_helper', '_extmethods', '__key','__value',)

7540

7541 _yang_name = 'network-interface-requirements'

7542 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

7543

7544 _pybind_generated_by = 'container'

7545

7546 def __init__(self, *args, **kwargs):

7547

7548 self._path_helper = False

7549

7550 self._extmethods = False

7551 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

7552 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

7553

7554 load = kwargs.pop("load", None)

7555 if args:

7556 if len(args) > 1:

7557 raise TypeError("cannot create a YANG container with >1 argument")

7558 all_attr = True

7559 for e in self._pyangbind_elements:

7560 if not hasattr(args[0], e):

7561 all_attr = False

7562 break

7563 if not all_attr:

7564 raise ValueError("Supplied object did not have the correct attributes")

7565 for e in self._pyangbind_elements:

7566 nobj = getattr(args[0], e)

7567 if nobj._changed() is False:

7568 continue

7569 setmethod = getattr(self, "_set_%s" % e)

7570 if load is None:

7571 setmethod(getattr(args[0], e))

7572 else:

7573 setmethod(getattr(args[0], e), load=load)

7574

7575 def _path(self):

7576 if hasattr(self, "_parent"):

7577 return self._parent._path()+[self._yang_name]

7578 else:

7579 return ['nsd', 'vnfd', 'ext-cpd', 'virtual-network-interface-requirement', 'network-interface-requirements']

7580

7581 def _get_key(self):

7582 """

7583 Getter method for key, mapped from YANG variable /nsd/vnfd/ext_cpd/virtual_network_interface_requirement/network_interface_requirements/key (string)

7584 """

7585 return self.__key

7586

7587 def _set_key(self, v, load=False):

7588 """

7589 Setter method for key, mapped from YANG variable /nsd/vnfd/ext_cpd/virtual_network_interface_requirement/network_interface_requirements/key (string)

7590 If this variable is read-only (config: false) in the

7591 source YANG file, then _set_key is considered as a private

7592 method. Backends looking to populate this variable should

7593 do so via calling thisObj._set_key() directly.

7594 """

7595 parent = getattr(self, "_parent", None)

7596 if parent is not None and load is False:

7597 raise AttributeError("Cannot set keys directly when" +

7598 " within an instantiated list")

7599

7600 if hasattr(v, "_utype"):

7601 v = v._utype(v)

7602 try:

7603 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

7604 except (TypeError, ValueError):

7605 raise ValueError({

7606 'error-string': """key must be of a type compatible with string""",

7607 'defined-type': "string",

7608 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

7609 })

7610

7611 self.__key = t

7612 if hasattr(self, '_set'):

7613 self._set()

7614

7615 def _unset_key(self):

7616 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

7617

7618

7619 def _get_value(self):

7620 """

7621 Getter method for value, mapped from YANG variable /nsd/vnfd/ext_cpd/virtual_network_interface_requirement/network_interface_requirements/value (string)

7622 """

7623 return self.__value

7624

7625 def _set_value(self, v, load=False):

7626 """

7627 Setter method for value, mapped from YANG variable /nsd/vnfd/ext_cpd/virtual_network_interface_requirement/network_interface_requirements/value (string)

7628 If this variable is read-only (config: false) in the

7629 source YANG file, then _set_value is considered as a private

7630 method. Backends looking to populate this variable should

7631 do so via calling thisObj._set_value() directly.

7632 """

7633 if hasattr(v, "_utype"):

7634 v = v._utype(v)

7635 try:

7636 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

7637 except (TypeError, ValueError):

7638 raise ValueError({

7639 'error-string': """value must be of a type compatible with string""",

7640 'defined-type': "string",

7641 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

7642 })

7643

7644 self.__value = t

7645 if hasattr(self, '_set'):

7646 self._set()

7647

7648 def _unset_value(self):

7649 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

7650

7651 key = __builtin__.property(_get_key, _set_key)

7652 value = __builtin__.property(_get_value, _set_value)

7653

7654

7655 _pyangbind_elements = OrderedDict([('key', key), ('value', value), ])

7656

7657

7658 class yc_virtual_network_interface_requirement_etsi_nfv_nsd__nsd_vnfd_ext_cpd_virtual_network_interface_requirement(PybindBase):

7659 """

7660 This class was auto-generated by the PythonClass plugin for PYANG

7661 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/ext-cpd/virtual-network-interface-requirement. Each member element of

7662 the container is represented as a class variable - with a specific

7663 YANG type.

7664

7665 YANG Description: Specifies requirements on a virtual network interface

7666 realising the CPs instantiated from this CPD.

7667 """

7668 __slots__ = ('_path_helper', '_extmethods', '__name','__description','__support_mandatory','__network_interface_requirements',)

7669

7670 _yang_name = 'virtual-network-interface-requirement'

7671 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

7672

7673 _pybind_generated_by = 'container'

7674

7675 def __init__(self, *args, **kwargs):

7676

7677 self._path_helper = False

7678

7679 self._extmethods = False

7680 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

7681 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

7682 self.__support_mandatory = YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="support-mandatory", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

7683 self.__network_interface_requirements = YANGDynClass(base=YANGListType("key",yc_network_interface_requirements_etsi_nfv_nsd__nsd_vnfd_ext_cpd_virtual_network_interface_requirement_network_interface_requirements, yang_name="network-interface-requirements", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="network-interface-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

7684

7685 load = kwargs.pop("load", None)

7686 if args:

7687 if len(args) > 1:

7688 raise TypeError("cannot create a YANG container with >1 argument")

7689 all_attr = True

7690 for e in self._pyangbind_elements:

7691 if not hasattr(args[0], e):

7692 all_attr = False

7693 break

7694 if not all_attr:

7695 raise ValueError("Supplied object did not have the correct attributes")

7696 for e in self._pyangbind_elements:

7697 nobj = getattr(args[0], e)

7698 if nobj._changed() is False:

7699 continue

7700 setmethod = getattr(self, "_set_%s" % e)

7701 if load is None:

7702 setmethod(getattr(args[0], e))

7703 else:

7704 setmethod(getattr(args[0], e), load=load)

7705

7706 def _path(self):

7707 if hasattr(self, "_parent"):

7708 return self._parent._path()+[self._yang_name]

7709 else:

7710 return ['nsd', 'vnfd', 'ext-cpd', 'virtual-network-interface-requirement']

7711

7712 def _get_name(self):

7713 """

7714 Getter method for name, mapped from YANG variable /nsd/vnfd/ext_cpd/virtual_network_interface_requirement/name (string)

7715

7716 YANG Description: Provides a human readable name for the requirement.

7717 """

7718 return self.__name

7719

7720 def _set_name(self, v, load=False):

7721 """

7722 Setter method for name, mapped from YANG variable /nsd/vnfd/ext_cpd/virtual_network_interface_requirement/name (string)

7723 If this variable is read-only (config: false) in the

7724 source YANG file, then _set_name is considered as a private

7725 method. Backends looking to populate this variable should

7726 do so via calling thisObj._set_name() directly.

7727

7728 YANG Description: Provides a human readable name for the requirement.

7729 """

7730 parent = getattr(self, "_parent", None)

7731 if parent is not None and load is False:

7732 raise AttributeError("Cannot set keys directly when" +

7733 " within an instantiated list")

7734

7735 if hasattr(v, "_utype"):

7736 v = v._utype(v)

7737 try:

7738 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

7739 except (TypeError, ValueError):

7740 raise ValueError({

7741 'error-string': """name must be of a type compatible with string""",

7742 'defined-type': "string",

7743 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

7744 })

7745

7746 self.__name = t

7747 if hasattr(self, '_set'):

7748 self._set()

7749

7750 def _unset_name(self):

7751 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

7752

7753

7754 def _get_description(self):

7755 """

7756 Getter method for description, mapped from YANG variable /nsd/vnfd/ext_cpd/virtual_network_interface_requirement/description (string)

7757

7758 YANG Description: Provides a human readable description of the requirement.

7759 """

7760 return self.__description

7761

7762 def _set_description(self, v, load=False):

7763 """

7764 Setter method for description, mapped from YANG variable /nsd/vnfd/ext_cpd/virtual_network_interface_requirement/description (string)

7765 If this variable is read-only (config: false) in the

7766 source YANG file, then _set_description is considered as a private

7767 method. Backends looking to populate this variable should

7768 do so via calling thisObj._set_description() directly.

7769

7770 YANG Description: Provides a human readable description of the requirement.

7771 """

7772 if hasattr(v, "_utype"):

7773 v = v._utype(v)

7774 try:

7775 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

7776 except (TypeError, ValueError):

7777 raise ValueError({

7778 'error-string': """description must be of a type compatible with string""",

7779 'defined-type': "string",

7780 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

7781 })

7782

7783 self.__description = t

7784 if hasattr(self, '_set'):

7785 self._set()

7786

7787 def _unset_description(self):

7788 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

7789

7790

7791 def _get_support_mandatory(self):

7792 """

7793 Getter method for support_mandatory, mapped from YANG variable /nsd/vnfd/ext_cpd/virtual_network_interface_requirement/support_mandatory (boolean)

7794

7795 YANG Description: Indicates whether fulfilling the constraint is

7796 mandatory (true) for successful operation or desirable

7797(false).

7798 """

7799 return self.__support_mandatory

7800

7801 def _set_support_mandatory(self, v, load=False):

7802 """

7803 Setter method for support_mandatory, mapped from YANG variable /nsd/vnfd/ext_cpd/virtual_network_interface_requirement/support_mandatory (boolean)

7804 If this variable is read-only (config: false) in the

7805 source YANG file, then _set_support_mandatory is considered as a private

7806 method. Backends looking to populate this variable should

7807 do so via calling thisObj._set_support_mandatory() directly.

7808

7809 YANG Description: Indicates whether fulfilling the constraint is

7810 mandatory (true) for successful operation or desirable

7811(false).

7812 """

7813 if hasattr(v, "_utype"):

7814 v = v._utype(v)

7815 try:

7816 t = YANGDynClass(v,base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="support-mandatory", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

7817 except (TypeError, ValueError):

7818 raise ValueError({

7819 'error-string': """support_mandatory must be of a type compatible with boolean""",

7820 'defined-type': "boolean",

7821 'generated-type': """YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="support-mandatory", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)""",

7822 })

7823

7824 self.__support_mandatory = t

7825 if hasattr(self, '_set'):

7826 self._set()

7827

7828 def _unset_support_mandatory(self):

7829 self.__support_mandatory = YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="support-mandatory", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

7830

7831

7832 def _get_network_interface_requirements(self):

7833 """

7834 Getter method for network_interface_requirements, mapped from YANG variable /nsd/vnfd/ext_cpd/virtual_network_interface_requirement/network_interface_requirements (list)

7835

7836 YANG Description: The network interface requirements. An element from an

7837 array of key-value pairs that articulate the network

7838 interface deployment requirements.

7839 """

7840 return self.__network_interface_requirements

7841

7842 def _set_network_interface_requirements(self, v, load=False):

7843 """

7844 Setter method for network_interface_requirements, mapped from YANG variable /nsd/vnfd/ext_cpd/virtual_network_interface_requirement/network_interface_requirements (list)

7845 If this variable is read-only (config: false) in the

7846 source YANG file, then _set_network_interface_requirements is considered as a private

7847 method. Backends looking to populate this variable should

7848 do so via calling thisObj._set_network_interface_requirements() directly.

7849

7850 YANG Description: The network interface requirements. An element from an

7851 array of key-value pairs that articulate the network

7852 interface deployment requirements.

7853 """

7854 if hasattr(v, "_utype"):

7855 v = v._utype(v)

7856 try:

7857 t = YANGDynClass(v,base=YANGListType("key",yc_network_interface_requirements_etsi_nfv_nsd__nsd_vnfd_ext_cpd_virtual_network_interface_requirement_network_interface_requirements, yang_name="network-interface-requirements", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="network-interface-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

7858 except (TypeError, ValueError):

7859 raise ValueError({

7860 'error-string': """network_interface_requirements must be of a type compatible with list""",

7861 'defined-type': "list",

7862 'generated-type': """YANGDynClass(base=YANGListType("key",yc_network_interface_requirements_etsi_nfv_nsd__nsd_vnfd_ext_cpd_virtual_network_interface_requirement_network_interface_requirements, yang_name="network-interface-requirements", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="network-interface-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

7863 })

7864

7865 self.__network_interface_requirements = t

7866 if hasattr(self, '_set'):

7867 self._set()

7868

7869 def _unset_network_interface_requirements(self):

7870 self.__network_interface_requirements = YANGDynClass(base=YANGListType("key",yc_network_interface_requirements_etsi_nfv_nsd__nsd_vnfd_ext_cpd_virtual_network_interface_requirement_network_interface_requirements, yang_name="network-interface-requirements", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="network-interface-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

7871

7872 name = __builtin__.property(_get_name, _set_name)

7873 description = __builtin__.property(_get_description, _set_description)

7874 support_mandatory = __builtin__.property(_get_support_mandatory, _set_support_mandatory)

7875 network_interface_requirements = __builtin__.property(_get_network_interface_requirements, _set_network_interface_requirements)

7876

7877

7878 _pyangbind_elements = OrderedDict([('name', name), ('description', description), ('support_mandatory', support_mandatory), ('network_interface_requirements', network_interface_requirements), ])

7879

7880

7881 class yc_l2_address_data_etsi_nfv_nsd__nsd_vnfd_ext_cpd_protocol_address_data_l2_address_data(PybindBase):

7882 """

7883 This class was auto-generated by the PythonClass plugin for PYANG

7884 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/ext-cpd/protocol/address-data/l2-address-data. Each member element of

7885 the container is represented as a class variable - with a specific

7886 YANG type.

7887

7888 YANG Description: Provides the information on the MAC addresses to be

7889 assigned to the CP(s) instantiated from the parent CPD.

7890 Shall be present when the addressType is MAC address.

7891 """

7892 __slots__ = ('_path_helper', '_extmethods', '__mac_address_assignment',)

7893

7894 _yang_name = 'l2-address-data'

7895 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

7896

7897 _pybind_generated_by = 'container'

7898

7899 def __init__(self, *args, **kwargs):

7900

7901 self._path_helper = False

7902

7903 self._extmethods = False

7904 self.__mac_address_assignment = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="mac-address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

7905

7906 load = kwargs.pop("load", None)

7907 if args:

7908 if len(args) > 1:

7909 raise TypeError("cannot create a YANG container with >1 argument")

7910 all_attr = True

7911 for e in self._pyangbind_elements:

7912 if not hasattr(args[0], e):

7913 all_attr = False

7914 break

7915 if not all_attr:

7916 raise ValueError("Supplied object did not have the correct attributes")

7917 for e in self._pyangbind_elements:

7918 nobj = getattr(args[0], e)

7919 if nobj._changed() is False:

7920 continue

7921 setmethod = getattr(self, "_set_%s" % e)

7922 if load is None:

7923 setmethod(getattr(args[0], e))

7924 else:

7925 setmethod(getattr(args[0], e), load=load)

7926

7927 def _path(self):

7928 if hasattr(self, "_parent"):

7929 return self._parent._path()+[self._yang_name]

7930 else:

7931 return ['nsd', 'vnfd', 'ext-cpd', 'protocol', 'address-data', 'l2-address-data']

7932

7933 def _get_mac_address_assignment(self):

7934 """

7935 Getter method for mac_address_assignment, mapped from YANG variable /nsd/vnfd/ext_cpd/protocol/address_data/l2_address_data/mac_address_assignment (boolean)

7936

7937 YANG Description: Specify if the MAC address assignment is the

7938 responsibility of management and orchestration function

7939 or not. If it is set to True, it is the management and

7940 orchestration function responsibility. If it is set to

7941 False, it will be provided by an external entity,

7942 e.g. OSS/BSS.

7943 """

7944 return self.__mac_address_assignment

7945

7946 def _set_mac_address_assignment(self, v, load=False):

7947 """

7948 Setter method for mac_address_assignment, mapped from YANG variable /nsd/vnfd/ext_cpd/protocol/address_data/l2_address_data/mac_address_assignment (boolean)

7949 If this variable is read-only (config: false) in the

7950 source YANG file, then _set_mac_address_assignment is considered as a private

7951 method. Backends looking to populate this variable should

7952 do so via calling thisObj._set_mac_address_assignment() directly.

7953

7954 YANG Description: Specify if the MAC address assignment is the

7955 responsibility of management and orchestration function

7956 or not. If it is set to True, it is the management and

7957 orchestration function responsibility. If it is set to

7958 False, it will be provided by an external entity,

7959 e.g. OSS/BSS.

7960 """

7961 if hasattr(v, "_utype"):

7962 v = v._utype(v)

7963 try:

7964 t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="mac-address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

7965 except (TypeError, ValueError):

7966 raise ValueError({

7967 'error-string': """mac_address_assignment must be of a type compatible with boolean""",

7968 'defined-type': "boolean",

7969 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="mac-address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)""",

7970 })

7971

7972 self.__mac_address_assignment = t

7973 if hasattr(self, '_set'):

7974 self._set()

7975

7976 def _unset_mac_address_assignment(self):

7977 self.__mac_address_assignment = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="mac-address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

7978

7979 mac_address_assignment = __builtin__.property(_get_mac_address_assignment, _set_mac_address_assignment)

7980

7981

7982 _pyangbind_elements = OrderedDict([('mac_address_assignment', mac_address_assignment), ])

7983

7984

7985 class yc_l3_address_data_etsi_nfv_nsd__nsd_vnfd_ext_cpd_protocol_address_data_l3_address_data(PybindBase):

7986 """

7987 This class was auto-generated by the PythonClass plugin for PYANG

7988 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/ext-cpd/protocol/address-data/l3-address-data. Each member element of

7989 the container is represented as a class variable - with a specific

7990 YANG type.

7991 """

7992 __slots__ = ('_path_helper', '_extmethods', '__ip_address_assignment','__floating_ip_activated','__ip_address_type','__number_of_ip_addresses',)

7993

7994 _yang_name = 'l3-address-data'

7995 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

7996

7997 _pybind_generated_by = 'container'

7998

7999 def __init__(self, *args, **kwargs):

8000

8001 self._path_helper = False

8002

8003 self._extmethods = False

8004 self.__ip_address_assignment = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="ip-address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

8005 self.__floating_ip_activated = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="floating-ip-activated", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

8006 self.__ip_address_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), is_leaf=True, yang_name="ip-address-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

8007 self.__number_of_ip_addresses = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="number-of-ip-addresses", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

8008

8009 load = kwargs.pop("load", None)

8010 if args:

8011 if len(args) > 1:

8012 raise TypeError("cannot create a YANG container with >1 argument")

8013 all_attr = True

8014 for e in self._pyangbind_elements:

8015 if not hasattr(args[0], e):

8016 all_attr = False

8017 break

8018 if not all_attr:

8019 raise ValueError("Supplied object did not have the correct attributes")

8020 for e in self._pyangbind_elements:

8021 nobj = getattr(args[0], e)

8022 if nobj._changed() is False:

8023 continue

8024 setmethod = getattr(self, "_set_%s" % e)

8025 if load is None:

8026 setmethod(getattr(args[0], e))

8027 else:

8028 setmethod(getattr(args[0], e), load=load)

8029

8030 def _path(self):

8031 if hasattr(self, "_parent"):

8032 return self._parent._path()+[self._yang_name]

8033 else:

8034 return ['nsd', 'vnfd', 'ext-cpd', 'protocol', 'address-data', 'l3-address-data']

8035

8036 def _get_ip_address_assignment(self):

8037 """

8038 Getter method for ip_address_assignment, mapped from YANG variable /nsd/vnfd/ext_cpd/protocol/address_data/l3_address_data/ip_address_assignment (boolean)

8039

8040 YANG Description: Specify if the address assignment is the responsibility

8041 of management and orchestration function or not. If it

8042 is set to True, it is the management and orchestration

8043 function responsibility.

8044 """

8045 return self.__ip_address_assignment

8046

8047 def _set_ip_address_assignment(self, v, load=False):

8048 """

8049 Setter method for ip_address_assignment, mapped from YANG variable /nsd/vnfd/ext_cpd/protocol/address_data/l3_address_data/ip_address_assignment (boolean)

8050 If this variable is read-only (config: false) in the

8051 source YANG file, then _set_ip_address_assignment is considered as a private

8052 method. Backends looking to populate this variable should

8053 do so via calling thisObj._set_ip_address_assignment() directly.

8054

8055 YANG Description: Specify if the address assignment is the responsibility

8056 of management and orchestration function or not. If it

8057 is set to True, it is the management and orchestration

8058 function responsibility.

8059 """

8060 if hasattr(v, "_utype"):

8061 v = v._utype(v)

8062 try:

8063 t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="ip-address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

8064 except (TypeError, ValueError):

8065 raise ValueError({

8066 'error-string': """ip_address_assignment must be of a type compatible with boolean""",

8067 'defined-type': "boolean",

8068 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="ip-address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)""",

8069 })

8070

8071 self.__ip_address_assignment = t

8072 if hasattr(self, '_set'):

8073 self._set()

8074

8075 def _unset_ip_address_assignment(self):

8076 self.__ip_address_assignment = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="ip-address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

8077

8078

8079 def _get_floating_ip_activated(self):

8080 """

8081 Getter method for floating_ip_activated, mapped from YANG variable /nsd/vnfd/ext_cpd/protocol/address_data/l3_address_data/floating_ip_activated (boolean)

8082

8083 YANG Description: Specify if the floating IP scheme is activated on the CP

8084 or not.

8085 """

8086 return self.__floating_ip_activated

8087

8088 def _set_floating_ip_activated(self, v, load=False):

8089 """

8090 Setter method for floating_ip_activated, mapped from YANG variable /nsd/vnfd/ext_cpd/protocol/address_data/l3_address_data/floating_ip_activated (boolean)

8091 If this variable is read-only (config: false) in the

8092 source YANG file, then _set_floating_ip_activated is considered as a private

8093 method. Backends looking to populate this variable should

8094 do so via calling thisObj._set_floating_ip_activated() directly.

8095

8096 YANG Description: Specify if the floating IP scheme is activated on the CP

8097 or not.

8098 """

8099 if hasattr(v, "_utype"):

8100 v = v._utype(v)

8101 try:

8102 t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="floating-ip-activated", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

8103 except (TypeError, ValueError):

8104 raise ValueError({

8105 'error-string': """floating_ip_activated must be of a type compatible with boolean""",

8106 'defined-type': "boolean",

8107 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="floating-ip-activated", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)""",

8108 })

8109

8110 self.__floating_ip_activated = t

8111 if hasattr(self, '_set'):

8112 self._set()

8113

8114 def _unset_floating_ip_activated(self):

8115 self.__floating_ip_activated = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="floating-ip-activated", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

8116

8117

8118 def _get_ip_address_type(self):

8119 """

8120 Getter method for ip_address_type, mapped from YANG variable /nsd/vnfd/ext_cpd/protocol/address_data/l3_address_data/ip_address_type (enumeration)

8121

8122 YANG Description: Define address type. The address type should be aligned

8123 with the address type supported by the layerProtocol

8124 attribute of the parent VnfExtCpd.

8125 """

8126 return self.__ip_address_type

8127

8128 def _set_ip_address_type(self, v, load=False):

8129 """

8130 Setter method for ip_address_type, mapped from YANG variable /nsd/vnfd/ext_cpd/protocol/address_data/l3_address_data/ip_address_type (enumeration)

8131 If this variable is read-only (config: false) in the

8132 source YANG file, then _set_ip_address_type is considered as a private

8133 method. Backends looking to populate this variable should

8134 do so via calling thisObj._set_ip_address_type() directly.

8135

8136 YANG Description: Define address type. The address type should be aligned

8137 with the address type supported by the layerProtocol

8138 attribute of the parent VnfExtCpd.

8139 """

8140 if hasattr(v, "_utype"):

8141 v = v._utype(v)

8142 try:

8143 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), is_leaf=True, yang_name="ip-address-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

8144 except (TypeError, ValueError):

8145 raise ValueError({

8146 'error-string': """ip_address_type must be of a type compatible with enumeration""",

8147 'defined-type': "etsi-nfv-nsd:enumeration",

8148 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), is_leaf=True, yang_name="ip-address-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)""",

8149 })

8150

8151 self.__ip_address_type = t

8152 if hasattr(self, '_set'):

8153 self._set()

8154

8155 def _unset_ip_address_type(self):

8156 self.__ip_address_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), is_leaf=True, yang_name="ip-address-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

8157

8158

8159 def _get_number_of_ip_addresses(self):

8160 """

8161 Getter method for number_of_ip_addresses, mapped from YANG variable /nsd/vnfd/ext_cpd/protocol/address_data/l3_address_data/number_of_ip_addresses (uint32)

8162

8163 YANG Description: Minimum number of IP addresses to be assigned based on

8164 this L3AddressData information element.

8165 """

8166 return self.__number_of_ip_addresses

8167

8168 def _set_number_of_ip_addresses(self, v, load=False):

8169 """

8170 Setter method for number_of_ip_addresses, mapped from YANG variable /nsd/vnfd/ext_cpd/protocol/address_data/l3_address_data/number_of_ip_addresses (uint32)

8171 If this variable is read-only (config: false) in the

8172 source YANG file, then _set_number_of_ip_addresses is considered as a private

8173 method. Backends looking to populate this variable should

8174 do so via calling thisObj._set_number_of_ip_addresses() directly.

8175

8176 YANG Description: Minimum number of IP addresses to be assigned based on

8177 this L3AddressData information element.

8178 """

8179 if hasattr(v, "_utype"):

8180 v = v._utype(v)

8181 try:

8182 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="number-of-ip-addresses", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

8183 except (TypeError, ValueError):

8184 raise ValueError({

8185 'error-string': """number_of_ip_addresses must be of a type compatible with uint32""",

8186 'defined-type': "uint32",

8187 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="number-of-ip-addresses", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)""",

8188 })

8189

8190 self.__number_of_ip_addresses = t

8191 if hasattr(self, '_set'):

8192 self._set()

8193

8194 def _unset_number_of_ip_addresses(self):

8195 self.__number_of_ip_addresses = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="number-of-ip-addresses", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

8196

8197 ip_address_assignment = __builtin__.property(_get_ip_address_assignment, _set_ip_address_assignment)

8198 floating_ip_activated = __builtin__.property(_get_floating_ip_activated, _set_floating_ip_activated)

8199 ip_address_type = __builtin__.property(_get_ip_address_type, _set_ip_address_type)

8200 number_of_ip_addresses = __builtin__.property(_get_number_of_ip_addresses, _set_number_of_ip_addresses)

8201

8202

8203 _pyangbind_elements = OrderedDict([('ip_address_assignment', ip_address_assignment), ('floating_ip_activated', floating_ip_activated), ('ip_address_type', ip_address_type), ('number_of_ip_addresses', number_of_ip_addresses), ])

8204

8205

8206 class yc_address_data_etsi_nfv_nsd__nsd_vnfd_ext_cpd_protocol_address_data(PybindBase):

8207 """

8208 This class was auto-generated by the PythonClass plugin for PYANG

8209 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/ext-cpd/protocol/address-data. Each member element of

8210 the container is represented as a class variable - with a specific

8211 YANG type.

8212

8213 YANG Description: Provides information on the addresses to be assigned to the

8214 CP(s) instantiated from the CPD.

8215 """

8216 __slots__ = ('_path_helper', '_extmethods', '__type','__l2_address_data','__l3_address_data',)

8217

8218 _yang_name = 'address-data'

8219 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

8220

8221 _pybind_generated_by = 'container'

8222

8223 def __init__(self, *args, **kwargs):

8224

8225 self._path_helper = False

8226

8227 self._extmethods = False

8228 self.__type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

8229 self.__l2_address_data = YANGDynClass(base=yc_l2_address_data_etsi_nfv_nsd__nsd_vnfd_ext_cpd_protocol_address_data_l2_address_data, is_container='container', yang_name="l2-address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

8230 self.__l3_address_data = YANGDynClass(base=yc_l3_address_data_etsi_nfv_nsd__nsd_vnfd_ext_cpd_protocol_address_data_l3_address_data, is_container='container', yang_name="l3-address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

8231

8232 load = kwargs.pop("load", None)

8233 if args:

8234 if len(args) > 1:

8235 raise TypeError("cannot create a YANG container with >1 argument")

8236 all_attr = True

8237 for e in self._pyangbind_elements:

8238 if not hasattr(args[0], e):

8239 all_attr = False

8240 break

8241 if not all_attr:

8242 raise ValueError("Supplied object did not have the correct attributes")

8243 for e in self._pyangbind_elements:

8244 nobj = getattr(args[0], e)

8245 if nobj._changed() is False:

8246 continue

8247 setmethod = getattr(self, "_set_%s" % e)

8248 if load is None:

8249 setmethod(getattr(args[0], e))

8250 else:

8251 setmethod(getattr(args[0], e), load=load)

8252

8253 def _path(self):

8254 if hasattr(self, "_parent"):

8255 return self._parent._path()+[self._yang_name]

8256 else:

8257 return ['nsd', 'vnfd', 'ext-cpd', 'protocol', 'address-data']

8258

8259 def _get_type(self):

8260 """

8261 Getter method for type, mapped from YANG variable /nsd/vnfd/ext_cpd/protocol/address_data/type (identityref)

8262

8263 YANG Description: Describes the type of the address to be assigned to the

8264 CP instantiated from the parent CPD.

8265 Value:

8266 • MAC address.

8267 • IP address.

8268 • Etc.

8269 The content type shall be aligned with the address type

8270 supported by the layerProtocol attribute of the parent

8271 CPD.

8272 """

8273 return self.__type

8274

8275 def _set_type(self, v, load=False):

8276 """

8277 Setter method for type, mapped from YANG variable /nsd/vnfd/ext_cpd/protocol/address_data/type (identityref)

8278 If this variable is read-only (config: false) in the

8279 source YANG file, then _set_type is considered as a private

8280 method. Backends looking to populate this variable should

8281 do so via calling thisObj._set_type() directly.

8282

8283 YANG Description: Describes the type of the address to be assigned to the

8284 CP instantiated from the parent CPD.

8285 Value:

8286 • MAC address.

8287 • IP address.

8288 • Etc.

8289 The content type shall be aligned with the address type

8290 supported by the layerProtocol attribute of the parent

8291 CPD.

8292 """

8293 parent = getattr(self, "_parent", None)

8294 if parent is not None and load is False:

8295 raise AttributeError("Cannot set keys directly when" +

8296 " within an instantiated list")

8297

8298 if hasattr(v, "_utype"):

8299 v = v._utype(v)

8300 try:

8301 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

8302 except (TypeError, ValueError):

8303 raise ValueError({

8304 'error-string': """type must be of a type compatible with identityref""",

8305 'defined-type': "etsi-nfv-nsd:identityref",

8306 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)""",

8307 })

8308

8309 self.__type = t

8310 if hasattr(self, '_set'):

8311 self._set()

8312

8313 def _unset_type(self):

8314 self.__type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

8315

8316

8317 def _get_l2_address_data(self):

8318 """

8319 Getter method for l2_address_data, mapped from YANG variable /nsd/vnfd/ext_cpd/protocol/address_data/l2_address_data (container)

8320

8321 YANG Description: Provides the information on the MAC addresses to be

8322 assigned to the CP(s) instantiated from the parent CPD.

8323 Shall be present when the addressType is MAC address.

8324 """

8325 return self.__l2_address_data

8326

8327 def _set_l2_address_data(self, v, load=False):

8328 """

8329 Setter method for l2_address_data, mapped from YANG variable /nsd/vnfd/ext_cpd/protocol/address_data/l2_address_data (container)

8330 If this variable is read-only (config: false) in the

8331 source YANG file, then _set_l2_address_data is considered as a private

8332 method. Backends looking to populate this variable should

8333 do so via calling thisObj._set_l2_address_data() directly.

8334

8335 YANG Description: Provides the information on the MAC addresses to be

8336 assigned to the CP(s) instantiated from the parent CPD.

8337 Shall be present when the addressType is MAC address.

8338 """

8339 if hasattr(v, "_utype"):

8340 v = v._utype(v)

8341 try:

8342 t = YANGDynClass(v,base=yc_l2_address_data_etsi_nfv_nsd__nsd_vnfd_ext_cpd_protocol_address_data_l2_address_data, is_container='container', yang_name="l2-address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

8343 except (TypeError, ValueError):

8344 raise ValueError({

8345 'error-string': """l2_address_data must be of a type compatible with container""",

8346 'defined-type': "container",

8347 'generated-type': """YANGDynClass(base=yc_l2_address_data_etsi_nfv_nsd__nsd_vnfd_ext_cpd_protocol_address_data_l2_address_data, is_container='container', yang_name="l2-address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

8348 })

8349

8350 self.__l2_address_data = t

8351 if hasattr(self, '_set'):

8352 self._set()

8353

8354 def _unset_l2_address_data(self):

8355 self.__l2_address_data = YANGDynClass(base=yc_l2_address_data_etsi_nfv_nsd__nsd_vnfd_ext_cpd_protocol_address_data_l2_address_data, is_container='container', yang_name="l2-address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

8356

8357

8358 def _get_l3_address_data(self):

8359 """

8360 Getter method for l3_address_data, mapped from YANG variable /nsd/vnfd/ext_cpd/protocol/address_data/l3_address_data (container)

8361 """

8362 return self.__l3_address_data

8363

8364 def _set_l3_address_data(self, v, load=False):

8365 """

8366 Setter method for l3_address_data, mapped from YANG variable /nsd/vnfd/ext_cpd/protocol/address_data/l3_address_data (container)

8367 If this variable is read-only (config: false) in the

8368 source YANG file, then _set_l3_address_data is considered as a private

8369 method. Backends looking to populate this variable should

8370 do so via calling thisObj._set_l3_address_data() directly.

8371 """

8372 if hasattr(v, "_utype"):

8373 v = v._utype(v)

8374 try:

8375 t = YANGDynClass(v,base=yc_l3_address_data_etsi_nfv_nsd__nsd_vnfd_ext_cpd_protocol_address_data_l3_address_data, is_container='container', yang_name="l3-address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

8376 except (TypeError, ValueError):

8377 raise ValueError({

8378 'error-string': """l3_address_data must be of a type compatible with container""",

8379 'defined-type': "container",

8380 'generated-type': """YANGDynClass(base=yc_l3_address_data_etsi_nfv_nsd__nsd_vnfd_ext_cpd_protocol_address_data_l3_address_data, is_container='container', yang_name="l3-address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

8381 })

8382

8383 self.__l3_address_data = t

8384 if hasattr(self, '_set'):

8385 self._set()

8386

8387 def _unset_l3_address_data(self):

8388 self.__l3_address_data = YANGDynClass(base=yc_l3_address_data_etsi_nfv_nsd__nsd_vnfd_ext_cpd_protocol_address_data_l3_address_data, is_container='container', yang_name="l3-address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

8389

8390 type = __builtin__.property(_get_type, _set_type)

8391 l2_address_data = __builtin__.property(_get_l2_address_data, _set_l2_address_data)

8392 l3_address_data = __builtin__.property(_get_l3_address_data, _set_l3_address_data)

8393

8394

8395 _pyangbind_elements = OrderedDict([('type', type), ('l2_address_data', l2_address_data), ('l3_address_data', l3_address_data), ])

8396

8397

8398 class yc_protocol_etsi_nfv_nsd__nsd_vnfd_ext_cpd_protocol(PybindBase):

8399 """

8400 This class was auto-generated by the PythonClass plugin for PYANG

8401 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/ext-cpd/protocol. Each member element of

8402 the container is represented as a class variable - with a specific

8403 YANG type.

8404

8405 YANG Description: Identifies the protocol layering information the CP uses for

8406 connectivity purposes and associated information. There shall

8407 be one cpProtocol for each layer protocol as indicated by the

8408 attribute layerProtocol. When a PnfExtCpd as defined in ETSI

8409 GS NFV-IFA 014 [i.8] is inherited from this Cpd, the

8410 cardinality is set to 0.

8411 """

8412 __slots__ = ('_path_helper', '_extmethods', '__associated_layer_protocol','__address_data',)

8413

8414 _yang_name = 'protocol'

8415 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

8416

8417 _pybind_generated_by = 'container'

8418

8419 def __init__(self, *args, **kwargs):

8420

8421 self._path_helper = False

8422

8423 self._extmethods = False

8424 self.__associated_layer_protocol = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="associated-layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

8425 self.__address_data = YANGDynClass(base=YANGListType("type",yc_address_data_etsi_nfv_nsd__nsd_vnfd_ext_cpd_protocol_address_data, yang_name="address-data", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='type', extensions=None), is_container='list', yang_name="address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

8426

8427 load = kwargs.pop("load", None)

8428 if args:

8429 if len(args) > 1:

8430 raise TypeError("cannot create a YANG container with >1 argument")

8431 all_attr = True

8432 for e in self._pyangbind_elements:

8433 if not hasattr(args[0], e):

8434 all_attr = False

8435 break

8436 if not all_attr:

8437 raise ValueError("Supplied object did not have the correct attributes")

8438 for e in self._pyangbind_elements:

8439 nobj = getattr(args[0], e)

8440 if nobj._changed() is False:

8441 continue

8442 setmethod = getattr(self, "_set_%s" % e)

8443 if load is None:

8444 setmethod(getattr(args[0], e))

8445 else:

8446 setmethod(getattr(args[0], e), load=load)

8447

8448 def _path(self):

8449 if hasattr(self, "_parent"):

8450 return self._parent._path()+[self._yang_name]

8451 else:

8452 return ['nsd', 'vnfd', 'ext-cpd', 'protocol']

8453

8454 def _get_associated_layer_protocol(self):

8455 """

8456 Getter method for associated_layer_protocol, mapped from YANG variable /nsd/vnfd/ext_cpd/protocol/associated_layer_protocol (identityref)

8457

8458 YANG Description: One of the values of the attribute layerProtocol of the Cpd

8459 IE.

8460 """

8461 return self.__associated_layer_protocol

8462

8463 def _set_associated_layer_protocol(self, v, load=False):

8464 """

8465 Setter method for associated_layer_protocol, mapped from YANG variable /nsd/vnfd/ext_cpd/protocol/associated_layer_protocol (identityref)

8466 If this variable is read-only (config: false) in the

8467 source YANG file, then _set_associated_layer_protocol is considered as a private

8468 method. Backends looking to populate this variable should

8469 do so via calling thisObj._set_associated_layer_protocol() directly.

8470

8471 YANG Description: One of the values of the attribute layerProtocol of the Cpd

8472 IE.

8473 """

8474 parent = getattr(self, "_parent", None)

8475 if parent is not None and load is False:

8476 raise AttributeError("Cannot set keys directly when" +

8477 " within an instantiated list")

8478

8479 if hasattr(v, "_utype"):

8480 v = v._utype(v)

8481 try:

8482 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="associated-layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

8483 except (TypeError, ValueError):

8484 raise ValueError({

8485 'error-string': """associated_layer_protocol must be of a type compatible with identityref""",

8486 'defined-type': "etsi-nfv-nsd:identityref",

8487 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="associated-layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)""",

8488 })

8489

8490 self.__associated_layer_protocol = t

8491 if hasattr(self, '_set'):

8492 self._set()

8493

8494 def _unset_associated_layer_protocol(self):

8495 self.__associated_layer_protocol = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="associated-layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

8496

8497

8498 def _get_address_data(self):

8499 """

8500 Getter method for address_data, mapped from YANG variable /nsd/vnfd/ext_cpd/protocol/address_data (list)

8501

8502 YANG Description: Provides information on the addresses to be assigned to the

8503 CP(s) instantiated from the CPD.

8504 """

8505 return self.__address_data

8506

8507 def _set_address_data(self, v, load=False):

8508 """

8509 Setter method for address_data, mapped from YANG variable /nsd/vnfd/ext_cpd/protocol/address_data (list)

8510 If this variable is read-only (config: false) in the

8511 source YANG file, then _set_address_data is considered as a private

8512 method. Backends looking to populate this variable should

8513 do so via calling thisObj._set_address_data() directly.

8514

8515 YANG Description: Provides information on the addresses to be assigned to the

8516 CP(s) instantiated from the CPD.

8517 """

8518 if hasattr(v, "_utype"):

8519 v = v._utype(v)

8520 try:

8521 t = YANGDynClass(v,base=YANGListType("type",yc_address_data_etsi_nfv_nsd__nsd_vnfd_ext_cpd_protocol_address_data, yang_name="address-data", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='type', extensions=None), is_container='list', yang_name="address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

8522 except (TypeError, ValueError):

8523 raise ValueError({

8524 'error-string': """address_data must be of a type compatible with list""",

8525 'defined-type': "list",

8526 'generated-type': """YANGDynClass(base=YANGListType("type",yc_address_data_etsi_nfv_nsd__nsd_vnfd_ext_cpd_protocol_address_data, yang_name="address-data", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='type', extensions=None), is_container='list', yang_name="address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

8527 })

8528

8529 self.__address_data = t

8530 if hasattr(self, '_set'):

8531 self._set()

8532

8533 def _unset_address_data(self):

8534 self.__address_data = YANGDynClass(base=YANGListType("type",yc_address_data_etsi_nfv_nsd__nsd_vnfd_ext_cpd_protocol_address_data, yang_name="address-data", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='type', extensions=None), is_container='list', yang_name="address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

8535

8536 associated_layer_protocol = __builtin__.property(_get_associated_layer_protocol, _set_associated_layer_protocol)

8537 address_data = __builtin__.property(_get_address_data, _set_address_data)

8538

8539

8540 _pyangbind_elements = OrderedDict([('associated_layer_protocol', associated_layer_protocol), ('address_data', address_data), ])

8541

8542

8543 class yc_ext_cpd_etsi_nfv_nsd__nsd_vnfd_ext_cpd(PybindBase):

8544 """

8545 This class was auto-generated by the PythonClass plugin for PYANG

8546 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/ext-cpd. Each member element of

8547 the container is represented as a class variable - with a specific

8548 YANG type.

8549

8550 YANG Description: Describes an external interface exposed by this VNF enabling

8551 connection with a Virual Link

8552 """

8553 __slots__ = ('_path_helper', '_extmethods', '__int_virtual_link_desc','__int_cpd','__virtual_network_interface_requirement','__nicio_requirements','__id','__layer_protocol','__role','__description','__protocol','__trunk_mode','__security_group_rule_id',)

8554

8555 _yang_name = 'ext-cpd'

8556 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

8557

8558 _pybind_generated_by = 'container'

8559

8560 def __init__(self, *args, **kwargs):

8561

8562 self._path_helper = False

8563

8564 self._extmethods = False

8565 self.__int_virtual_link_desc = YANGDynClass(base=str, is_leaf=True, yang_name="int-virtual-link-desc", parent=self, choice=('cp-connection', 'int-virtual-link-desc'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

8566 self.__int_cpd = YANGDynClass(base=yc_int_cpd_etsi_nfv_nsd__nsd_vnfd_ext_cpd_int_cpd, is_container='container', yang_name="int-cpd", parent=self, choice=('cp-connection', 'int-cpd'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

8567 self.__virtual_network_interface_requirement = YANGDynClass(base=YANGListType("name",yc_virtual_network_interface_requirement_etsi_nfv_nsd__nsd_vnfd_ext_cpd_virtual_network_interface_requirement, yang_name="virtual-network-interface-requirement", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="virtual-network-interface-requirement", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

8568 self.__nicio_requirements = YANGDynClass(base=str, is_leaf=True, yang_name="nicio-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

8569 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

8570 self.__layer_protocol = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},)), default=str("ethernet"), is_leaf=False, yang_name="layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

8571 self.__role = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="role", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

8572 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

8573 self.__protocol = YANGDynClass(base=YANGListType("associated_layer_protocol",yc_protocol_etsi_nfv_nsd__nsd_vnfd_ext_cpd_protocol, yang_name="protocol", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='associated-layer-protocol', extensions=None), is_container='list', yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

8574 self.__trunk_mode = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="trunk-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

8575 self.__security_group_rule_id = YANGDynClass(base=str, is_leaf=True, yang_name="security-group-rule-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

8576

8577 load = kwargs.pop("load", None)

8578 if args:

8579 if len(args) > 1:

8580 raise TypeError("cannot create a YANG container with >1 argument")

8581 all_attr = True

8582 for e in self._pyangbind_elements:

8583 if not hasattr(args[0], e):

8584 all_attr = False

8585 break

8586 if not all_attr:

8587 raise ValueError("Supplied object did not have the correct attributes")

8588 for e in self._pyangbind_elements:

8589 nobj = getattr(args[0], e)

8590 if nobj._changed() is False:

8591 continue

8592 setmethod = getattr(self, "_set_%s" % e)

8593 if load is None:

8594 setmethod(getattr(args[0], e))

8595 else:

8596 setmethod(getattr(args[0], e), load=load)

8597

8598 def _path(self):

8599 if hasattr(self, "_parent"):

8600 return self._parent._path()+[self._yang_name]

8601 else:

8602 return ['nsd', 'vnfd', 'ext-cpd']

8603

8604 def _get_int_virtual_link_desc(self):

8605 """

8606 Getter method for int_virtual_link_desc, mapped from YANG variable /nsd/vnfd/ext_cpd/int_virtual_link_desc (leafref)

8607

8608 YANG Description: Reference to the internal Virtual Link Descriptor (VLD)

8609 to which CPs instantiated from this external CP

8610 Descriptor (CPD) connect. Either intVirtualLinkDesc or

8611 intCpd shall be present.

8612 """

8613 return self.__int_virtual_link_desc

8614

8615 def _set_int_virtual_link_desc(self, v, load=False):

8616 """

8617 Setter method for int_virtual_link_desc, mapped from YANG variable /nsd/vnfd/ext_cpd/int_virtual_link_desc (leafref)

8618 If this variable is read-only (config: false) in the

8619 source YANG file, then _set_int_virtual_link_desc is considered as a private

8620 method. Backends looking to populate this variable should

8621 do so via calling thisObj._set_int_virtual_link_desc() directly.

8622

8623 YANG Description: Reference to the internal Virtual Link Descriptor (VLD)

8624 to which CPs instantiated from this external CP

8625 Descriptor (CPD) connect. Either intVirtualLinkDesc or

8626 intCpd shall be present.

8627 """

8628 if hasattr(v, "_utype"):

8629 v = v._utype(v)

8630 try:

8631 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="int-virtual-link-desc", parent=self, choice=('cp-connection', 'int-virtual-link-desc'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

8632 except (TypeError, ValueError):

8633 raise ValueError({

8634 'error-string': """int_virtual_link_desc must be of a type compatible with leafref""",

8635 'defined-type': "leafref",

8636 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="int-virtual-link-desc", parent=self, choice=('cp-connection', 'int-virtual-link-desc'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

8637 })

8638

8639 self.__int_virtual_link_desc = t

8640 if hasattr(self, '_set'):

8641 self._set()

8642

8643 def _unset_int_virtual_link_desc(self):

8644 self.__int_virtual_link_desc = YANGDynClass(base=str, is_leaf=True, yang_name="int-virtual-link-desc", parent=self, choice=('cp-connection', 'int-virtual-link-desc'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

8645

8646

8647 def _get_int_cpd(self):

8648 """

8649 Getter method for int_cpd, mapped from YANG variable /nsd/vnfd/ext_cpd/int_cpd (container)

8650 """

8651 return self.__int_cpd

8652

8653 def _set_int_cpd(self, v, load=False):

8654 """

8655 Setter method for int_cpd, mapped from YANG variable /nsd/vnfd/ext_cpd/int_cpd (container)

8656 If this variable is read-only (config: false) in the

8657 source YANG file, then _set_int_cpd is considered as a private

8658 method. Backends looking to populate this variable should

8659 do so via calling thisObj._set_int_cpd() directly.

8660 """

8661 if hasattr(v, "_utype"):

8662 v = v._utype(v)

8663 try:

8664 t = YANGDynClass(v,base=yc_int_cpd_etsi_nfv_nsd__nsd_vnfd_ext_cpd_int_cpd, is_container='container', yang_name="int-cpd", parent=self, choice=('cp-connection', 'int-cpd'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

8665 except (TypeError, ValueError):

8666 raise ValueError({

8667 'error-string': """int_cpd must be of a type compatible with container""",

8668 'defined-type': "container",

8669 'generated-type': """YANGDynClass(base=yc_int_cpd_etsi_nfv_nsd__nsd_vnfd_ext_cpd_int_cpd, is_container='container', yang_name="int-cpd", parent=self, choice=('cp-connection', 'int-cpd'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

8670 })

8671

8672 self.__int_cpd = t

8673 if hasattr(self, '_set'):

8674 self._set()

8675

8676 def _unset_int_cpd(self):

8677 self.__int_cpd = YANGDynClass(base=yc_int_cpd_etsi_nfv_nsd__nsd_vnfd_ext_cpd_int_cpd, is_container='container', yang_name="int-cpd", parent=self, choice=('cp-connection', 'int-cpd'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

8678

8679

8680 def _get_virtual_network_interface_requirement(self):

8681 """

8682 Getter method for virtual_network_interface_requirement, mapped from YANG variable /nsd/vnfd/ext_cpd/virtual_network_interface_requirement (list)

8683

8684 YANG Description: Specifies requirements on a virtual network interface

8685 realising the CPs instantiated from this CPD.

8686 """

8687 return self.__virtual_network_interface_requirement

8688

8689 def _set_virtual_network_interface_requirement(self, v, load=False):

8690 """

8691 Setter method for virtual_network_interface_requirement, mapped from YANG variable /nsd/vnfd/ext_cpd/virtual_network_interface_requirement (list)

8692 If this variable is read-only (config: false) in the

8693 source YANG file, then _set_virtual_network_interface_requirement is considered as a private

8694 method. Backends looking to populate this variable should

8695 do so via calling thisObj._set_virtual_network_interface_requirement() directly.

8696

8697 YANG Description: Specifies requirements on a virtual network interface

8698 realising the CPs instantiated from this CPD.

8699 """

8700 if hasattr(v, "_utype"):

8701 v = v._utype(v)

8702 try:

8703 t = YANGDynClass(v,base=YANGListType("name",yc_virtual_network_interface_requirement_etsi_nfv_nsd__nsd_vnfd_ext_cpd_virtual_network_interface_requirement, yang_name="virtual-network-interface-requirement", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="virtual-network-interface-requirement", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

8704 except (TypeError, ValueError):

8705 raise ValueError({

8706 'error-string': """virtual_network_interface_requirement must be of a type compatible with list""",

8707 'defined-type': "list",

8708 'generated-type': """YANGDynClass(base=YANGListType("name",yc_virtual_network_interface_requirement_etsi_nfv_nsd__nsd_vnfd_ext_cpd_virtual_network_interface_requirement, yang_name="virtual-network-interface-requirement", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="virtual-network-interface-requirement", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

8709 })

8710

8711 self.__virtual_network_interface_requirement = t

8712 if hasattr(self, '_set'):

8713 self._set()

8714

8715 def _unset_virtual_network_interface_requirement(self):

8716 self.__virtual_network_interface_requirement = YANGDynClass(base=YANGListType("name",yc_virtual_network_interface_requirement_etsi_nfv_nsd__nsd_vnfd_ext_cpd_virtual_network_interface_requirement, yang_name="virtual-network-interface-requirement", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="virtual-network-interface-requirement", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

8717

8718

8719 def _get_nicio_requirements(self):

8720 """

8721 Getter method for nicio_requirements, mapped from YANG variable /nsd/vnfd/ext_cpd/nicio_requirements (leafref)

8722

8723 YANG Description: This references (couples) the CPD with any logical node I/O

8724 requirements (for network devices) that may have been

8725 created. Linking these attributes is necessary so that so

8726 that I/O requirements that need to be articulated at the

8727 logical node level can be associated with the network

8728 interface requirements associated with the CPD.

8729 """

8730 return self.__nicio_requirements

8731

8732 def _set_nicio_requirements(self, v, load=False):

8733 """

8734 Setter method for nicio_requirements, mapped from YANG variable /nsd/vnfd/ext_cpd/nicio_requirements (leafref)

8735 If this variable is read-only (config: false) in the

8736 source YANG file, then _set_nicio_requirements is considered as a private

8737 method. Backends looking to populate this variable should

8738 do so via calling thisObj._set_nicio_requirements() directly.

8739

8740 YANG Description: This references (couples) the CPD with any logical node I/O

8741 requirements (for network devices) that may have been

8742 created. Linking these attributes is necessary so that so

8743 that I/O requirements that need to be articulated at the

8744 logical node level can be associated with the network

8745 interface requirements associated with the CPD.

8746 """

8747 if hasattr(v, "_utype"):

8748 v = v._utype(v)

8749 try:

8750 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="nicio-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

8751 except (TypeError, ValueError):

8752 raise ValueError({

8753 'error-string': """nicio_requirements must be of a type compatible with leafref""",

8754 'defined-type': "leafref",

8755 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="nicio-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

8756 })

8757

8758 self.__nicio_requirements = t

8759 if hasattr(self, '_set'):

8760 self._set()

8761

8762 def _unset_nicio_requirements(self):

8763 self.__nicio_requirements = YANGDynClass(base=str, is_leaf=True, yang_name="nicio-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

8764

8765

8766 def _get_id(self):

8767 """

8768 Getter method for id, mapped from YANG variable /nsd/vnfd/ext_cpd/id (string)

8769

8770 YANG Description: Identifier of this Cpd information element.

8771 """

8772 return self.__id

8773

8774 def _set_id(self, v, load=False):

8775 """

8776 Setter method for id, mapped from YANG variable /nsd/vnfd/ext_cpd/id (string)

8777 If this variable is read-only (config: false) in the

8778 source YANG file, then _set_id is considered as a private

8779 method. Backends looking to populate this variable should

8780 do so via calling thisObj._set_id() directly.

8781

8782 YANG Description: Identifier of this Cpd information element.

8783 """

8784 parent = getattr(self, "_parent", None)

8785 if parent is not None and load is False:

8786 raise AttributeError("Cannot set keys directly when" +

8787 " within an instantiated list")

8788

8789 if hasattr(v, "_utype"):

8790 v = v._utype(v)

8791 try:

8792 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

8793 except (TypeError, ValueError):

8794 raise ValueError({

8795 'error-string': """id must be of a type compatible with string""",

8796 'defined-type': "string",

8797 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

8798 })

8799

8800 self.__id = t

8801 if hasattr(self, '_set'):

8802 self._set()

8803

8804 def _unset_id(self):

8805 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

8806

8807

8808 def _get_layer_protocol(self):

8809 """

8810 Getter method for layer_protocol, mapped from YANG variable /nsd/vnfd/ext_cpd/layer_protocol (identityref)

8811

8812 YANG Description: Identifies a protocol that the connection points

8813 corresponding to the CPD support for connectivity purposes

8814(e.g. Ethernet, MPLS, ODU2, IPV4, IPV6, Pseudo-Wire, etc.).

8815 """

8816 return self.__layer_protocol

8817

8818 def _set_layer_protocol(self, v, load=False):

8819 """

8820 Setter method for layer_protocol, mapped from YANG variable /nsd/vnfd/ext_cpd/layer_protocol (identityref)

8821 If this variable is read-only (config: false) in the

8822 source YANG file, then _set_layer_protocol is considered as a private

8823 method. Backends looking to populate this variable should

8824 do so via calling thisObj._set_layer_protocol() directly.

8825

8826 YANG Description: Identifies a protocol that the connection points

8827 corresponding to the CPD support for connectivity purposes

8828(e.g. Ethernet, MPLS, ODU2, IPV4, IPV6, Pseudo-Wire, etc.).

8829 """

8830 if hasattr(v, "_utype"):

8831 v = v._utype(v)

8832 try:

8833 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},)), default=str("ethernet"), is_leaf=False, yang_name="layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

8834 except (TypeError, ValueError):

8835 raise ValueError({

8836 'error-string': """layer_protocol must be of a type compatible with identityref""",

8837 'defined-type': "etsi-nfv-nsd:identityref",

8838 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},)), default=str("ethernet"), is_leaf=False, yang_name="layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)""",

8839 })

8840

8841 self.__layer_protocol = t

8842 if hasattr(self, '_set'):

8843 self._set()

8844

8845 def _unset_layer_protocol(self):

8846 self.__layer_protocol = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},)), default=str("ethernet"), is_leaf=False, yang_name="layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

8847

8848

8849 def _get_role(self):

8850 """

8851 Getter method for role, mapped from YANG variable /nsd/vnfd/ext_cpd/role (identityref)

8852

8853 YANG Description: Identifies the role of the connection points

8854 corresponding to the CPD in the context of the traffic

8855 flow patterns in the VNF, PNF or NS. For example an NS with

8856 a tree flow pattern within the NS will have legal cpRoles

8857 of ROOT and LEAF.

8858 """

8859 return self.__role

8860

8861 def _set_role(self, v, load=False):

8862 """

8863 Setter method for role, mapped from YANG variable /nsd/vnfd/ext_cpd/role (identityref)

8864 If this variable is read-only (config: false) in the

8865 source YANG file, then _set_role is considered as a private

8866 method. Backends looking to populate this variable should

8867 do so via calling thisObj._set_role() directly.

8868

8869 YANG Description: Identifies the role of the connection points

8870 corresponding to the CPD in the context of the traffic

8871 flow patterns in the VNF, PNF or NS. For example an NS with

8872 a tree flow pattern within the NS will have legal cpRoles

8873 of ROOT and LEAF.

8874 """

8875 if hasattr(v, "_utype"):

8876 v = v._utype(v)

8877 try:

8878 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="role", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

8879 except (TypeError, ValueError):

8880 raise ValueError({

8881 'error-string': """role must be of a type compatible with identityref""",

8882 'defined-type': "etsi-nfv-nsd:identityref",

8883 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="role", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)""",

8884 })

8885

8886 self.__role = t

8887 if hasattr(self, '_set'):

8888 self._set()

8889

8890 def _unset_role(self):

8891 self.__role = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="role", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

8892

8893

8894 def _get_description(self):

8895 """

8896 Getter method for description, mapped from YANG variable /nsd/vnfd/ext_cpd/description (string)

8897

8898 YANG Description: Provides human-readable information on the purpose of the

8899 connection point (e.g. connection point for control plane

8900 traffic).

8901 """

8902 return self.__description

8903

8904 def _set_description(self, v, load=False):

8905 """

8906 Setter method for description, mapped from YANG variable /nsd/vnfd/ext_cpd/description (string)

8907 If this variable is read-only (config: false) in the

8908 source YANG file, then _set_description is considered as a private

8909 method. Backends looking to populate this variable should

8910 do so via calling thisObj._set_description() directly.

8911

8912 YANG Description: Provides human-readable information on the purpose of the

8913 connection point (e.g. connection point for control plane

8914 traffic).

8915 """

8916 if hasattr(v, "_utype"):

8917 v = v._utype(v)

8918 try:

8919 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

8920 except (TypeError, ValueError):

8921 raise ValueError({

8922 'error-string': """description must be of a type compatible with string""",

8923 'defined-type': "string",

8924 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

8925 })

8926

8927 self.__description = t

8928 if hasattr(self, '_set'):

8929 self._set()

8930

8931 def _unset_description(self):

8932 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

8933

8934

8935 def _get_protocol(self):

8936 """

8937 Getter method for protocol, mapped from YANG variable /nsd/vnfd/ext_cpd/protocol (list)

8938

8939 YANG Description: Identifies the protocol layering information the CP uses for

8940 connectivity purposes and associated information. There shall

8941 be one cpProtocol for each layer protocol as indicated by the

8942 attribute layerProtocol. When a PnfExtCpd as defined in ETSI

8943 GS NFV-IFA 014 [i.8] is inherited from this Cpd, the

8944 cardinality is set to 0.

8945 """

8946 return self.__protocol

8947

8948 def _set_protocol(self, v, load=False):

8949 """

8950 Setter method for protocol, mapped from YANG variable /nsd/vnfd/ext_cpd/protocol (list)

8951 If this variable is read-only (config: false) in the

8952 source YANG file, then _set_protocol is considered as a private

8953 method. Backends looking to populate this variable should

8954 do so via calling thisObj._set_protocol() directly.

8955

8956 YANG Description: Identifies the protocol layering information the CP uses for

8957 connectivity purposes and associated information. There shall

8958 be one cpProtocol for each layer protocol as indicated by the

8959 attribute layerProtocol. When a PnfExtCpd as defined in ETSI

8960 GS NFV-IFA 014 [i.8] is inherited from this Cpd, the

8961 cardinality is set to 0.

8962 """

8963 if hasattr(v, "_utype"):

8964 v = v._utype(v)

8965 try:

8966 t = YANGDynClass(v,base=YANGListType("associated_layer_protocol",yc_protocol_etsi_nfv_nsd__nsd_vnfd_ext_cpd_protocol, yang_name="protocol", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='associated-layer-protocol', extensions=None), is_container='list', yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

8967 except (TypeError, ValueError):

8968 raise ValueError({

8969 'error-string': """protocol must be of a type compatible with list""",

8970 'defined-type': "list",

8971 'generated-type': """YANGDynClass(base=YANGListType("associated_layer_protocol",yc_protocol_etsi_nfv_nsd__nsd_vnfd_ext_cpd_protocol, yang_name="protocol", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='associated-layer-protocol', extensions=None), is_container='list', yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

8972 })

8973

8974 self.__protocol = t

8975 if hasattr(self, '_set'):

8976 self._set()

8977

8978 def _unset_protocol(self):

8979 self.__protocol = YANGDynClass(base=YANGListType("associated_layer_protocol",yc_protocol_etsi_nfv_nsd__nsd_vnfd_ext_cpd_protocol, yang_name="protocol", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='associated-layer-protocol', extensions=None), is_container='list', yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

8980

8981

8982 def _get_trunk_mode(self):

8983 """

8984 Getter method for trunk_mode, mapped from YANG variable /nsd/vnfd/ext_cpd/trunk_mode (boolean)

8985

8986 YANG Description: Information about whether the Cp instantiated from this CPD

8987 is in Trunk mode (802.1Q or other). When operating in

8988'trunk mode', the Cp is capable of carrying traffic for

8989 several VLANs. A cardinality of 0 implies that trunkMode

8990 is not configured for the Cp i.e. It is equivalent to

8991 Boolean value 'false'.

8992 """

8993 return self.__trunk_mode

8994

8995 def _set_trunk_mode(self, v, load=False):

8996 """

8997 Setter method for trunk_mode, mapped from YANG variable /nsd/vnfd/ext_cpd/trunk_mode (boolean)

8998 If this variable is read-only (config: false) in the

8999 source YANG file, then _set_trunk_mode is considered as a private

9000 method. Backends looking to populate this variable should

9001 do so via calling thisObj._set_trunk_mode() directly.

9002

9003 YANG Description: Information about whether the Cp instantiated from this CPD

9004 is in Trunk mode (802.1Q or other). When operating in

9005'trunk mode', the Cp is capable of carrying traffic for

9006 several VLANs. A cardinality of 0 implies that trunkMode

9007 is not configured for the Cp i.e. It is equivalent to

9008 Boolean value 'false'.

9009 """

9010 if hasattr(v, "_utype"):

9011 v = v._utype(v)

9012 try:

9013 t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="trunk-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

9014 except (TypeError, ValueError):

9015 raise ValueError({

9016 'error-string': """trunk_mode must be of a type compatible with boolean""",

9017 'defined-type': "boolean",

9018 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="trunk-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)""",

9019 })

9020

9021 self.__trunk_mode = t

9022 if hasattr(self, '_set'):

9023 self._set()

9024

9025 def _unset_trunk_mode(self):

9026 self.__trunk_mode = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="trunk-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

9027

9028

9029 def _get_security_group_rule_id(self):

9030 """

9031 Getter method for security_group_rule_id, mapped from YANG variable /nsd/vnfd/ext_cpd/security_group_rule_id (leafref)

9032

9033 YANG Description: Reference of the security group rules bound to this

9034 CPD.

9035 """

9036 return self.__security_group_rule_id

9037

9038 def _set_security_group_rule_id(self, v, load=False):

9039 """

9040 Setter method for security_group_rule_id, mapped from YANG variable /nsd/vnfd/ext_cpd/security_group_rule_id (leafref)

9041 If this variable is read-only (config: false) in the

9042 source YANG file, then _set_security_group_rule_id is considered as a private

9043 method. Backends looking to populate this variable should

9044 do so via calling thisObj._set_security_group_rule_id() directly.

9045

9046 YANG Description: Reference of the security group rules bound to this

9047 CPD.

9048 """

9049 if hasattr(v, "_utype"):

9050 v = v._utype(v)

9051 try:

9052 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="security-group-rule-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

9053 except (TypeError, ValueError):

9054 raise ValueError({

9055 'error-string': """security_group_rule_id must be of a type compatible with leafref""",

9056 'defined-type': "leafref",

9057 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="security-group-rule-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

9058 })

9059

9060 self.__security_group_rule_id = t

9061 if hasattr(self, '_set'):

9062 self._set()

9063

9064 def _unset_security_group_rule_id(self):

9065 self.__security_group_rule_id = YANGDynClass(base=str, is_leaf=True, yang_name="security-group-rule-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

9066

9067 int_virtual_link_desc = __builtin__.property(_get_int_virtual_link_desc, _set_int_virtual_link_desc)

9068 int_cpd = __builtin__.property(_get_int_cpd, _set_int_cpd)

9069 virtual_network_interface_requirement = __builtin__.property(_get_virtual_network_interface_requirement, _set_virtual_network_interface_requirement)

9070 nicio_requirements = __builtin__.property(_get_nicio_requirements, _set_nicio_requirements)

9071 id = __builtin__.property(_get_id, _set_id)

9072 layer_protocol = __builtin__.property(_get_layer_protocol, _set_layer_protocol)

9073 role = __builtin__.property(_get_role, _set_role)

9074 description = __builtin__.property(_get_description, _set_description)

9075 protocol = __builtin__.property(_get_protocol, _set_protocol)

9076 trunk_mode = __builtin__.property(_get_trunk_mode, _set_trunk_mode)

9077 security_group_rule_id = __builtin__.property(_get_security_group_rule_id, _set_security_group_rule_id)

9078

9079 __choices__ = {'cp-connection': {'int-virtual-link-desc': ['int_virtual_link_desc'], 'int-cpd': ['int_cpd']}}

9080 _pyangbind_elements = OrderedDict([('int_virtual_link_desc', int_virtual_link_desc), ('int_cpd', int_cpd), ('virtual_network_interface_requirement', virtual_network_interface_requirement), ('nicio_requirements', nicio_requirements), ('id', id), ('layer_protocol', layer_protocol), ('role', role), ('description', description), ('protocol', protocol), ('trunk_mode', trunk_mode), ('security_group_rule_id', security_group_rule_id), ])

9081

9082

9083 class yc_local_affinity_or_anti_affinity_rule_etsi_nfv_nsd__nsd_vnfd_df_vdu_profile_local_affinity_or_anti_affinity_rule(PybindBase):

9084 """

9085 This class was auto-generated by the PythonClass plugin for PYANG

9086 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/vdu-profile/local-affinity-or-anti-affinity-rule. Each member element of

9087 the container is represented as a class variable - with a specific

9088 YANG type.

9089 """

9090 __slots__ = ('_path_helper', '_extmethods', '__affinity_type','__affinity_scope',)

9091

9092 _yang_name = 'local-affinity-or-anti-affinity-rule'

9093 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

9094

9095 _pybind_generated_by = 'container'

9096

9097 def __init__(self, *args, **kwargs):

9098

9099 self._path_helper = False

9100

9101 self._extmethods = False

9102 self.__affinity_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'affinity': {}, 'anti-affinity': {}},), is_leaf=True, yang_name="affinity-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-type', is_config=True)

9103 self.__affinity_scope = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'nfvi-node': {}, 'zone-group': {}, 'zone': {}, 'nfvi-pop': {}},), is_leaf=True, yang_name="affinity-scope", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-scope', is_config=True)

9104

9105 load = kwargs.pop("load", None)

9106 if args:

9107 if len(args) > 1:

9108 raise TypeError("cannot create a YANG container with >1 argument")

9109 all_attr = True

9110 for e in self._pyangbind_elements:

9111 if not hasattr(args[0], e):

9112 all_attr = False

9113 break

9114 if not all_attr:

9115 raise ValueError("Supplied object did not have the correct attributes")

9116 for e in self._pyangbind_elements:

9117 nobj = getattr(args[0], e)

9118 if nobj._changed() is False:

9119 continue

9120 setmethod = getattr(self, "_set_%s" % e)

9121 if load is None:

9122 setmethod(getattr(args[0], e))

9123 else:

9124 setmethod(getattr(args[0], e), load=load)

9125

9126 def _path(self):

9127 if hasattr(self, "_parent"):

9128 return self._parent._path()+[self._yang_name]

9129 else:

9130 return ['nsd', 'vnfd', 'df', 'vdu-profile', 'local-affinity-or-anti-affinity-rule']

9131

9132 def _get_affinity_type(self):

9133 """

9134 Getter method for affinity_type, mapped from YANG variable /nsd/vnfd/df/vdu_profile/local_affinity_or_anti_affinity_rule/affinity_type (affinity-type)

9135

9136 YANG Description: Specifies whether the rule is an affinity rule or an

9137 anti-affinity rule.

9138 """

9139 return self.__affinity_type

9140

9141 def _set_affinity_type(self, v, load=False):

9142 """

9143 Setter method for affinity_type, mapped from YANG variable /nsd/vnfd/df/vdu_profile/local_affinity_or_anti_affinity_rule/affinity_type (affinity-type)

9144 If this variable is read-only (config: false) in the

9145 source YANG file, then _set_affinity_type is considered as a private

9146 method. Backends looking to populate this variable should

9147 do so via calling thisObj._set_affinity_type() directly.

9148

9149 YANG Description: Specifies whether the rule is an affinity rule or an

9150 anti-affinity rule.

9151 """

9152 parent = getattr(self, "_parent", None)

9153 if parent is not None and load is False:

9154 raise AttributeError("Cannot set keys directly when" +

9155 " within an instantiated list")

9156

9157 if hasattr(v, "_utype"):

9158 v = v._utype(v)

9159 try:

9160 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'affinity': {}, 'anti-affinity': {}},), is_leaf=True, yang_name="affinity-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-type', is_config=True)

9161 except (TypeError, ValueError):

9162 raise ValueError({

9163 'error-string': """affinity_type must be of a type compatible with affinity-type""",

9164 'defined-type': "etsi-nfv-nsd:affinity-type",

9165 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'affinity': {}, 'anti-affinity': {}},), is_leaf=True, yang_name="affinity-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-type', is_config=True)""",

9166 })

9167

9168 self.__affinity_type = t

9169 if hasattr(self, '_set'):

9170 self._set()

9171

9172 def _unset_affinity_type(self):

9173 self.__affinity_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'affinity': {}, 'anti-affinity': {}},), is_leaf=True, yang_name="affinity-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-type', is_config=True)

9174

9175

9176 def _get_affinity_scope(self):

9177 """

9178 Getter method for affinity_scope, mapped from YANG variable /nsd/vnfd/df/vdu_profile/local_affinity_or_anti_affinity_rule/affinity_scope (affinity-scope)

9179

9180 YANG Description: Specifies the scope of the rule, possible values are

9181'NFVI-PoP', 'Zone', 'ZoneGroup', 'NFVI-node'.

9182 """

9183 return self.__affinity_scope

9184

9185 def _set_affinity_scope(self, v, load=False):

9186 """

9187 Setter method for affinity_scope, mapped from YANG variable /nsd/vnfd/df/vdu_profile/local_affinity_or_anti_affinity_rule/affinity_scope (affinity-scope)

9188 If this variable is read-only (config: false) in the

9189 source YANG file, then _set_affinity_scope is considered as a private

9190 method. Backends looking to populate this variable should

9191 do so via calling thisObj._set_affinity_scope() directly.

9192

9193 YANG Description: Specifies the scope of the rule, possible values are

9194'NFVI-PoP', 'Zone', 'ZoneGroup', 'NFVI-node'.

9195 """

9196 parent = getattr(self, "_parent", None)

9197 if parent is not None and load is False:

9198 raise AttributeError("Cannot set keys directly when" +

9199 " within an instantiated list")

9200

9201 if hasattr(v, "_utype"):

9202 v = v._utype(v)

9203 try:

9204 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'nfvi-node': {}, 'zone-group': {}, 'zone': {}, 'nfvi-pop': {}},), is_leaf=True, yang_name="affinity-scope", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-scope', is_config=True)

9205 except (TypeError, ValueError):

9206 raise ValueError({

9207 'error-string': """affinity_scope must be of a type compatible with affinity-scope""",

9208 'defined-type': "etsi-nfv-nsd:affinity-scope",

9209 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'nfvi-node': {}, 'zone-group': {}, 'zone': {}, 'nfvi-pop': {}},), is_leaf=True, yang_name="affinity-scope", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-scope', is_config=True)""",

9210 })

9211

9212 self.__affinity_scope = t

9213 if hasattr(self, '_set'):

9214 self._set()

9215

9216 def _unset_affinity_scope(self):

9217 self.__affinity_scope = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'nfvi-node': {}, 'zone-group': {}, 'zone': {}, 'nfvi-pop': {}},), is_leaf=True, yang_name="affinity-scope", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-scope', is_config=True)

9218

9219 affinity_type = __builtin__.property(_get_affinity_type, _set_affinity_type)

9220 affinity_scope = __builtin__.property(_get_affinity_scope, _set_affinity_scope)

9221

9222

9223 _pyangbind_elements = OrderedDict([('affinity_type', affinity_type), ('affinity_scope', affinity_scope), ])

9224

9225

9226 class yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_vnfd_df_vdu_profile_affinity_or_anti_affinity_group(PybindBase):

9227 """

9228 This class was auto-generated by the PythonClass plugin for PYANG

9229 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/vdu-profile/affinity-or-anti-affinity-group. Each member element of

9230 the container is represented as a class variable - with a specific

9231 YANG type.

9232

9233 YANG Description: Identifier(s) of the affinity or anti-affinity

9234 group(s) the VDU belongs to.

9235 """

9236 __slots__ = ('_path_helper', '_extmethods', '__id',)

9237

9238 _yang_name = 'affinity-or-anti-affinity-group'

9239 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

9240

9241 _pybind_generated_by = 'container'

9242

9243 def __init__(self, *args, **kwargs):

9244

9245 self._path_helper = False

9246

9247 self._extmethods = False

9248 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

9249

9250 load = kwargs.pop("load", None)

9251 if args:

9252 if len(args) > 1:

9253 raise TypeError("cannot create a YANG container with >1 argument")

9254 all_attr = True

9255 for e in self._pyangbind_elements:

9256 if not hasattr(args[0], e):

9257 all_attr = False

9258 break

9259 if not all_attr:

9260 raise ValueError("Supplied object did not have the correct attributes")

9261 for e in self._pyangbind_elements:

9262 nobj = getattr(args[0], e)

9263 if nobj._changed() is False:

9264 continue

9265 setmethod = getattr(self, "_set_%s" % e)

9266 if load is None:

9267 setmethod(getattr(args[0], e))

9268 else:

9269 setmethod(getattr(args[0], e), load=load)

9270

9271 def _path(self):

9272 if hasattr(self, "_parent"):

9273 return self._parent._path()+[self._yang_name]

9274 else:

9275 return ['nsd', 'vnfd', 'df', 'vdu-profile', 'affinity-or-anti-affinity-group']

9276

9277 def _get_id(self):

9278 """

9279 Getter method for id, mapped from YANG variable /nsd/vnfd/df/vdu_profile/affinity_or_anti_affinity_group/id (leafref)

9280

9281 YANG Description: Identifies an affinity or anti-affinity group to

9282 which the affinity or anti-affinity rule applies.

9283 """

9284 return self.__id

9285

9286 def _set_id(self, v, load=False):

9287 """

9288 Setter method for id, mapped from YANG variable /nsd/vnfd/df/vdu_profile/affinity_or_anti_affinity_group/id (leafref)

9289 If this variable is read-only (config: false) in the

9290 source YANG file, then _set_id is considered as a private

9291 method. Backends looking to populate this variable should

9292 do so via calling thisObj._set_id() directly.

9293

9294 YANG Description: Identifies an affinity or anti-affinity group to

9295 which the affinity or anti-affinity rule applies.

9296 """

9297 parent = getattr(self, "_parent", None)

9298 if parent is not None and load is False:

9299 raise AttributeError("Cannot set keys directly when" +

9300 " within an instantiated list")

9301

9302 if hasattr(v, "_utype"):

9303 v = v._utype(v)

9304 try:

9305 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

9306 except (TypeError, ValueError):

9307 raise ValueError({

9308 'error-string': """id must be of a type compatible with leafref""",

9309 'defined-type': "leafref",

9310 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

9311 })

9312

9313 self.__id = t

9314 if hasattr(self, '_set'):

9315 self._set()

9316

9317 def _unset_id(self):

9318 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

9319

9320 id = __builtin__.property(_get_id, _set_id)

9321

9322

9323 _pyangbind_elements = OrderedDict([('id', id), ])

9324

9325

9326 class yc_vdu_profile_etsi_nfv_nsd__nsd_vnfd_df_vdu_profile(PybindBase):

9327 """

9328 This class was auto-generated by the PythonClass plugin for PYANG

9329 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/vdu-profile. Each member element of

9330 the container is represented as a class variable - with a specific

9331 YANG type.

9332

9333 YANG Description: The Vduprofile describes additional instantiation data for

9334 a given VDU used in a deployment flavour.

9335 """

9336 __slots__ = ('_path_helper', '_extmethods', '__id','__min_number_of_instances','__max_number_of_instances','__local_affinity_or_anti_affinity_rule','__affinity_or_anti_affinity_group',)

9337

9338 _yang_name = 'vdu-profile'

9339 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

9340

9341 _pybind_generated_by = 'container'

9342

9343 def __init__(self, *args, **kwargs):

9344

9345 self._path_helper = False

9346

9347 self._extmethods = False

9348 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

9349 self.__min_number_of_instances = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="min-number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

9350 self.__max_number_of_instances = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="max-number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

9351 self.__local_affinity_or_anti_affinity_rule = YANGDynClass(base=YANGListType("affinity_type affinity_scope",yc_local_affinity_or_anti_affinity_rule_etsi_nfv_nsd__nsd_vnfd_df_vdu_profile_local_affinity_or_anti_affinity_rule, yang_name="local-affinity-or-anti-affinity-rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='affinity-type affinity-scope', extensions=None), is_container='list', yang_name="local-affinity-or-anti-affinity-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

9352 self.__affinity_or_anti_affinity_group = YANGDynClass(base=YANGListType("id",yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_vnfd_df_vdu_profile_affinity_or_anti_affinity_group, yang_name="affinity-or-anti-affinity-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

9353

9354 load = kwargs.pop("load", None)

9355 if args:

9356 if len(args) > 1:

9357 raise TypeError("cannot create a YANG container with >1 argument")

9358 all_attr = True

9359 for e in self._pyangbind_elements:

9360 if not hasattr(args[0], e):

9361 all_attr = False

9362 break

9363 if not all_attr:

9364 raise ValueError("Supplied object did not have the correct attributes")

9365 for e in self._pyangbind_elements:

9366 nobj = getattr(args[0], e)

9367 if nobj._changed() is False:

9368 continue

9369 setmethod = getattr(self, "_set_%s" % e)

9370 if load is None:

9371 setmethod(getattr(args[0], e))

9372 else:

9373 setmethod(getattr(args[0], e), load=load)

9374

9375 def _path(self):

9376 if hasattr(self, "_parent"):

9377 return self._parent._path()+[self._yang_name]

9378 else:

9379 return ['nsd', 'vnfd', 'df', 'vdu-profile']

9380

9381 def _get_id(self):

9382 """

9383 Getter method for id, mapped from YANG variable /nsd/vnfd/df/vdu_profile/id (leafref)

9384 """

9385 return self.__id

9386

9387 def _set_id(self, v, load=False):

9388 """

9389 Setter method for id, mapped from YANG variable /nsd/vnfd/df/vdu_profile/id (leafref)

9390 If this variable is read-only (config: false) in the

9391 source YANG file, then _set_id is considered as a private

9392 method. Backends looking to populate this variable should

9393 do so via calling thisObj._set_id() directly.

9394 """

9395 parent = getattr(self, "_parent", None)

9396 if parent is not None and load is False:

9397 raise AttributeError("Cannot set keys directly when" +

9398 " within an instantiated list")

9399

9400 if hasattr(v, "_utype"):

9401 v = v._utype(v)

9402 try:

9403 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

9404 except (TypeError, ValueError):

9405 raise ValueError({

9406 'error-string': """id must be of a type compatible with leafref""",

9407 'defined-type': "leafref",

9408 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

9409 })

9410

9411 self.__id = t

9412 if hasattr(self, '_set'):

9413 self._set()

9414

9415 def _unset_id(self):

9416 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

9417

9418

9419 def _get_min_number_of_instances(self):

9420 """

9421 Getter method for min_number_of_instances, mapped from YANG variable /nsd/vnfd/df/vdu_profile/min_number_of_instances (uint16)

9422

9423 YANG Description: Minimum number of instances of the VNFC based on this

9424 VDU that is permitted to exist for this flavour.

9425 """

9426 return self.__min_number_of_instances

9427

9428 def _set_min_number_of_instances(self, v, load=False):

9429 """

9430 Setter method for min_number_of_instances, mapped from YANG variable /nsd/vnfd/df/vdu_profile/min_number_of_instances (uint16)

9431 If this variable is read-only (config: false) in the

9432 source YANG file, then _set_min_number_of_instances is considered as a private

9433 method. Backends looking to populate this variable should

9434 do so via calling thisObj._set_min_number_of_instances() directly.

9435

9436 YANG Description: Minimum number of instances of the VNFC based on this

9437 VDU that is permitted to exist for this flavour.

9438 """

9439 if hasattr(v, "_utype"):

9440 v = v._utype(v)

9441 try:

9442 t = YANGDynClass(v,base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="min-number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

9443 except (TypeError, ValueError):

9444 raise ValueError({

9445 'error-string': """min_number_of_instances must be of a type compatible with uint16""",

9446 'defined-type': "uint16",

9447 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="min-number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)""",

9448 })

9449

9450 self.__min_number_of_instances = t

9451 if hasattr(self, '_set'):

9452 self._set()

9453

9454 def _unset_min_number_of_instances(self):

9455 self.__min_number_of_instances = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="min-number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

9456

9457

9458 def _get_max_number_of_instances(self):

9459 """

9460 Getter method for max_number_of_instances, mapped from YANG variable /nsd/vnfd/df/vdu_profile/max_number_of_instances (uint16)

9461 """

9462 return self.__max_number_of_instances

9463

9464 def _set_max_number_of_instances(self, v, load=False):

9465 """

9466 Setter method for max_number_of_instances, mapped from YANG variable /nsd/vnfd/df/vdu_profile/max_number_of_instances (uint16)

9467 If this variable is read-only (config: false) in the

9468 source YANG file, then _set_max_number_of_instances is considered as a private

9469 method. Backends looking to populate this variable should

9470 do so via calling thisObj._set_max_number_of_instances() directly.

9471 """

9472 if hasattr(v, "_utype"):

9473 v = v._utype(v)

9474 try:

9475 t = YANGDynClass(v,base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="max-number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

9476 except (TypeError, ValueError):

9477 raise ValueError({

9478 'error-string': """max_number_of_instances must be of a type compatible with uint16""",

9479 'defined-type': "uint16",

9480 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="max-number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)""",

9481 })

9482

9483 self.__max_number_of_instances = t

9484 if hasattr(self, '_set'):

9485 self._set()

9486

9487 def _unset_max_number_of_instances(self):

9488 self.__max_number_of_instances = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="max-number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

9489

9490

9491 def _get_local_affinity_or_anti_affinity_rule(self):

9492 """

9493 Getter method for local_affinity_or_anti_affinity_rule, mapped from YANG variable /nsd/vnfd/df/vdu_profile/local_affinity_or_anti_affinity_rule (list)

9494 """

9495 return self.__local_affinity_or_anti_affinity_rule

9496

9497 def _set_local_affinity_or_anti_affinity_rule(self, v, load=False):

9498 """

9499 Setter method for local_affinity_or_anti_affinity_rule, mapped from YANG variable /nsd/vnfd/df/vdu_profile/local_affinity_or_anti_affinity_rule (list)

9500 If this variable is read-only (config: false) in the

9501 source YANG file, then _set_local_affinity_or_anti_affinity_rule is considered as a private

9502 method. Backends looking to populate this variable should

9503 do so via calling thisObj._set_local_affinity_or_anti_affinity_rule() directly.

9504 """

9505 if hasattr(v, "_utype"):

9506 v = v._utype(v)

9507 try:

9508 t = YANGDynClass(v,base=YANGListType("affinity_type affinity_scope",yc_local_affinity_or_anti_affinity_rule_etsi_nfv_nsd__nsd_vnfd_df_vdu_profile_local_affinity_or_anti_affinity_rule, yang_name="local-affinity-or-anti-affinity-rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='affinity-type affinity-scope', extensions=None), is_container='list', yang_name="local-affinity-or-anti-affinity-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

9509 except (TypeError, ValueError):

9510 raise ValueError({

9511 'error-string': """local_affinity_or_anti_affinity_rule must be of a type compatible with list""",

9512 'defined-type': "list",

9513 'generated-type': """YANGDynClass(base=YANGListType("affinity_type affinity_scope",yc_local_affinity_or_anti_affinity_rule_etsi_nfv_nsd__nsd_vnfd_df_vdu_profile_local_affinity_or_anti_affinity_rule, yang_name="local-affinity-or-anti-affinity-rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='affinity-type affinity-scope', extensions=None), is_container='list', yang_name="local-affinity-or-anti-affinity-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

9514 })

9515

9516 self.__local_affinity_or_anti_affinity_rule = t

9517 if hasattr(self, '_set'):

9518 self._set()

9519

9520 def _unset_local_affinity_or_anti_affinity_rule(self):

9521 self.__local_affinity_or_anti_affinity_rule = YANGDynClass(base=YANGListType("affinity_type affinity_scope",yc_local_affinity_or_anti_affinity_rule_etsi_nfv_nsd__nsd_vnfd_df_vdu_profile_local_affinity_or_anti_affinity_rule, yang_name="local-affinity-or-anti-affinity-rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='affinity-type affinity-scope', extensions=None), is_container='list', yang_name="local-affinity-or-anti-affinity-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

9522

9523

9524 def _get_affinity_or_anti_affinity_group(self):

9525 """

9526 Getter method for affinity_or_anti_affinity_group, mapped from YANG variable /nsd/vnfd/df/vdu_profile/affinity_or_anti_affinity_group (list)

9527

9528 YANG Description: Identifier(s) of the affinity or anti-affinity

9529 group(s) the VDU belongs to.

9530 """

9531 return self.__affinity_or_anti_affinity_group

9532

9533 def _set_affinity_or_anti_affinity_group(self, v, load=False):

9534 """

9535 Setter method for affinity_or_anti_affinity_group, mapped from YANG variable /nsd/vnfd/df/vdu_profile/affinity_or_anti_affinity_group (list)

9536 If this variable is read-only (config: false) in the

9537 source YANG file, then _set_affinity_or_anti_affinity_group is considered as a private

9538 method. Backends looking to populate this variable should

9539 do so via calling thisObj._set_affinity_or_anti_affinity_group() directly.

9540

9541 YANG Description: Identifier(s) of the affinity or anti-affinity

9542 group(s) the VDU belongs to.

9543 """

9544 if hasattr(v, "_utype"):

9545 v = v._utype(v)

9546 try:

9547 t = YANGDynClass(v,base=YANGListType("id",yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_vnfd_df_vdu_profile_affinity_or_anti_affinity_group, yang_name="affinity-or-anti-affinity-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

9548 except (TypeError, ValueError):

9549 raise ValueError({

9550 'error-string': """affinity_or_anti_affinity_group must be of a type compatible with list""",

9551 'defined-type': "list",

9552 'generated-type': """YANGDynClass(base=YANGListType("id",yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_vnfd_df_vdu_profile_affinity_or_anti_affinity_group, yang_name="affinity-or-anti-affinity-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

9553 })

9554

9555 self.__affinity_or_anti_affinity_group = t

9556 if hasattr(self, '_set'):

9557 self._set()

9558

9559 def _unset_affinity_or_anti_affinity_group(self):

9560 self.__affinity_or_anti_affinity_group = YANGDynClass(base=YANGListType("id",yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_vnfd_df_vdu_profile_affinity_or_anti_affinity_group, yang_name="affinity-or-anti-affinity-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

9561

9562 id = __builtin__.property(_get_id, _set_id)

9563 min_number_of_instances = __builtin__.property(_get_min_number_of_instances, _set_min_number_of_instances)

9564 max_number_of_instances = __builtin__.property(_get_max_number_of_instances, _set_max_number_of_instances)

9565 local_affinity_or_anti_affinity_rule = __builtin__.property(_get_local_affinity_or_anti_affinity_rule, _set_local_affinity_or_anti_affinity_rule)

9566 affinity_or_anti_affinity_group = __builtin__.property(_get_affinity_or_anti_affinity_group, _set_affinity_or_anti_affinity_group)

9567

9568

9569 _pyangbind_elements = OrderedDict([('id', id), ('min_number_of_instances', min_number_of_instances), ('max_number_of_instances', max_number_of_instances), ('local_affinity_or_anti_affinity_rule', local_affinity_or_anti_affinity_rule), ('affinity_or_anti_affinity_group', affinity_or_anti_affinity_group), ])

9570

9571

9572 class yc_local_affinity_or_anti_affinity_rule_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_local_affinity_or_anti_affinity_rule(PybindBase):

9573 """

9574 This class was auto-generated by the PythonClass plugin for PYANG

9575 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/virtual-link-profile/local-affinity-or-anti-affinity-rule. Each member element of

9576 the container is represented as a class variable - with a specific

9577 YANG type.

9578 """

9579 __slots__ = ('_path_helper', '_extmethods', '__affinity_type','__affinity_scope',)

9580

9581 _yang_name = 'local-affinity-or-anti-affinity-rule'

9582 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

9583

9584 _pybind_generated_by = 'container'

9585

9586 def __init__(self, *args, **kwargs):

9587

9588 self._path_helper = False

9589

9590 self._extmethods = False

9591 self.__affinity_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'affinity': {}, 'anti-affinity': {}},), is_leaf=True, yang_name="affinity-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-type', is_config=True)

9592 self.__affinity_scope = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'nfvi-node': {}, 'zone-group': {}, 'zone': {}, 'nfvi-pop': {}},), is_leaf=True, yang_name="affinity-scope", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-scope', is_config=True)

9593

9594 load = kwargs.pop("load", None)

9595 if args:

9596 if len(args) > 1:

9597 raise TypeError("cannot create a YANG container with >1 argument")

9598 all_attr = True

9599 for e in self._pyangbind_elements:

9600 if not hasattr(args[0], e):

9601 all_attr = False

9602 break

9603 if not all_attr:

9604 raise ValueError("Supplied object did not have the correct attributes")

9605 for e in self._pyangbind_elements:

9606 nobj = getattr(args[0], e)

9607 if nobj._changed() is False:

9608 continue

9609 setmethod = getattr(self, "_set_%s" % e)

9610 if load is None:

9611 setmethod(getattr(args[0], e))

9612 else:

9613 setmethod(getattr(args[0], e), load=load)

9614

9615 def _path(self):

9616 if hasattr(self, "_parent"):

9617 return self._parent._path()+[self._yang_name]

9618 else:

9619 return ['nsd', 'vnfd', 'df', 'virtual-link-profile', 'local-affinity-or-anti-affinity-rule']

9620

9621 def _get_affinity_type(self):

9622 """

9623 Getter method for affinity_type, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/local_affinity_or_anti_affinity_rule/affinity_type (affinity-type)

9624

9625 YANG Description: Specifies whether the rule is an affinity rule or an

9626 anti-affinity rule.

9627 """

9628 return self.__affinity_type

9629

9630 def _set_affinity_type(self, v, load=False):

9631 """

9632 Setter method for affinity_type, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/local_affinity_or_anti_affinity_rule/affinity_type (affinity-type)

9633 If this variable is read-only (config: false) in the

9634 source YANG file, then _set_affinity_type is considered as a private

9635 method. Backends looking to populate this variable should

9636 do so via calling thisObj._set_affinity_type() directly.

9637

9638 YANG Description: Specifies whether the rule is an affinity rule or an

9639 anti-affinity rule.

9640 """

9641 parent = getattr(self, "_parent", None)

9642 if parent is not None and load is False:

9643 raise AttributeError("Cannot set keys directly when" +

9644 " within an instantiated list")

9645

9646 if hasattr(v, "_utype"):

9647 v = v._utype(v)

9648 try:

9649 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'affinity': {}, 'anti-affinity': {}},), is_leaf=True, yang_name="affinity-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-type', is_config=True)

9650 except (TypeError, ValueError):

9651 raise ValueError({

9652 'error-string': """affinity_type must be of a type compatible with affinity-type""",

9653 'defined-type': "etsi-nfv-nsd:affinity-type",

9654 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'affinity': {}, 'anti-affinity': {}},), is_leaf=True, yang_name="affinity-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-type', is_config=True)""",

9655 })

9656

9657 self.__affinity_type = t

9658 if hasattr(self, '_set'):

9659 self._set()

9660

9661 def _unset_affinity_type(self):

9662 self.__affinity_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'affinity': {}, 'anti-affinity': {}},), is_leaf=True, yang_name="affinity-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-type', is_config=True)

9663

9664

9665 def _get_affinity_scope(self):

9666 """

9667 Getter method for affinity_scope, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/local_affinity_or_anti_affinity_rule/affinity_scope (affinity-scope)

9668

9669 YANG Description: Specifies the scope of the rule, possible values are

9670'NFVI-PoP', 'Zone', 'ZoneGroup', 'NFVI-node'.

9671 """

9672 return self.__affinity_scope

9673

9674 def _set_affinity_scope(self, v, load=False):

9675 """

9676 Setter method for affinity_scope, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/local_affinity_or_anti_affinity_rule/affinity_scope (affinity-scope)

9677 If this variable is read-only (config: false) in the

9678 source YANG file, then _set_affinity_scope is considered as a private

9679 method. Backends looking to populate this variable should

9680 do so via calling thisObj._set_affinity_scope() directly.

9681

9682 YANG Description: Specifies the scope of the rule, possible values are

9683'NFVI-PoP', 'Zone', 'ZoneGroup', 'NFVI-node'.

9684 """

9685 parent = getattr(self, "_parent", None)

9686 if parent is not None and load is False:

9687 raise AttributeError("Cannot set keys directly when" +

9688 " within an instantiated list")

9689

9690 if hasattr(v, "_utype"):

9691 v = v._utype(v)

9692 try:

9693 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'nfvi-node': {}, 'zone-group': {}, 'zone': {}, 'nfvi-pop': {}},), is_leaf=True, yang_name="affinity-scope", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-scope', is_config=True)

9694 except (TypeError, ValueError):

9695 raise ValueError({

9696 'error-string': """affinity_scope must be of a type compatible with affinity-scope""",

9697 'defined-type': "etsi-nfv-nsd:affinity-scope",

9698 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'nfvi-node': {}, 'zone-group': {}, 'zone': {}, 'nfvi-pop': {}},), is_leaf=True, yang_name="affinity-scope", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-scope', is_config=True)""",

9699 })

9700

9701 self.__affinity_scope = t

9702 if hasattr(self, '_set'):

9703 self._set()

9704

9705 def _unset_affinity_scope(self):

9706 self.__affinity_scope = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'nfvi-node': {}, 'zone-group': {}, 'zone': {}, 'nfvi-pop': {}},), is_leaf=True, yang_name="affinity-scope", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-scope', is_config=True)

9707

9708 affinity_type = __builtin__.property(_get_affinity_type, _set_affinity_type)

9709 affinity_scope = __builtin__.property(_get_affinity_scope, _set_affinity_scope)

9710

9711

9712 _pyangbind_elements = OrderedDict([('affinity_type', affinity_type), ('affinity_scope', affinity_scope), ])

9713

9714

9715 class yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_affinity_or_anti_affinity_group(PybindBase):

9716 """

9717 This class was auto-generated by the PythonClass plugin for PYANG

9718 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/virtual-link-profile/affinity-or-anti-affinity-group. Each member element of

9719 the container is represented as a class variable - with a specific

9720 YANG type.

9721

9722 YANG Description: Identifier(s) of the affinity or anti-affinity

9723 group(s) the VnfVirtualLinkDesc belongs to.

9724 """

9725 __slots__ = ('_path_helper', '_extmethods', '__id',)

9726

9727 _yang_name = 'affinity-or-anti-affinity-group'

9728 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

9729

9730 _pybind_generated_by = 'container'

9731

9732 def __init__(self, *args, **kwargs):

9733

9734 self._path_helper = False

9735

9736 self._extmethods = False

9737 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

9738

9739 load = kwargs.pop("load", None)

9740 if args:

9741 if len(args) > 1:

9742 raise TypeError("cannot create a YANG container with >1 argument")

9743 all_attr = True

9744 for e in self._pyangbind_elements:

9745 if not hasattr(args[0], e):

9746 all_attr = False

9747 break

9748 if not all_attr:

9749 raise ValueError("Supplied object did not have the correct attributes")

9750 for e in self._pyangbind_elements:

9751 nobj = getattr(args[0], e)

9752 if nobj._changed() is False:

9753 continue

9754 setmethod = getattr(self, "_set_%s" % e)

9755 if load is None:

9756 setmethod(getattr(args[0], e))

9757 else:

9758 setmethod(getattr(args[0], e), load=load)

9759

9760 def _path(self):

9761 if hasattr(self, "_parent"):

9762 return self._parent._path()+[self._yang_name]

9763 else:

9764 return ['nsd', 'vnfd', 'df', 'virtual-link-profile', 'affinity-or-anti-affinity-group']

9765

9766 def _get_id(self):

9767 """

9768 Getter method for id, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/affinity_or_anti_affinity_group/id (leafref)

9769 """

9770 return self.__id

9771

9772 def _set_id(self, v, load=False):

9773 """

9774 Setter method for id, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/affinity_or_anti_affinity_group/id (leafref)

9775 If this variable is read-only (config: false) in the

9776 source YANG file, then _set_id is considered as a private

9777 method. Backends looking to populate this variable should

9778 do so via calling thisObj._set_id() directly.

9779 """

9780 parent = getattr(self, "_parent", None)

9781 if parent is not None and load is False:

9782 raise AttributeError("Cannot set keys directly when" +

9783 " within an instantiated list")

9784

9785 if hasattr(v, "_utype"):

9786 v = v._utype(v)

9787 try:

9788 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

9789 except (TypeError, ValueError):

9790 raise ValueError({

9791 'error-string': """id must be of a type compatible with leafref""",

9792 'defined-type': "leafref",

9793 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

9794 })

9795

9796 self.__id = t

9797 if hasattr(self, '_set'):

9798 self._set()

9799

9800 def _unset_id(self):

9801 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

9802

9803 id = __builtin__.property(_get_id, _set_id)

9804

9805

9806 _pyangbind_elements = OrderedDict([('id', id), ])

9807

9808

9809 class yc_max_bit_rate_requirements_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_max_bit_rate_requirements(PybindBase):

9810 """

9811 This class was auto-generated by the PythonClass plugin for PYANG

9812 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/virtual-link-profile/max-bit-rate-requirements. Each member element of

9813 the container is represented as a class variable - with a specific

9814 YANG type.

9815

9816 YANG Description: Specifies the maximum bitrate requirements for a VL

9817 instantiated according to this profile.

9818 """

9819 __slots__ = ('_path_helper', '_extmethods', '__root','__leaf',)

9820

9821 _yang_name = 'max-bit-rate-requirements'

9822 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

9823

9824 _pybind_generated_by = 'container'

9825

9826 def __init__(self, *args, **kwargs):

9827

9828 self._path_helper = False

9829

9830 self._extmethods = False

9831 self.__root = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="root", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

9832 self.__leaf = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="leaf", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

9833

9834 load = kwargs.pop("load", None)

9835 if args:

9836 if len(args) > 1:

9837 raise TypeError("cannot create a YANG container with >1 argument")

9838 all_attr = True

9839 for e in self._pyangbind_elements:

9840 if not hasattr(args[0], e):

9841 all_attr = False

9842 break

9843 if not all_attr:

9844 raise ValueError("Supplied object did not have the correct attributes")

9845 for e in self._pyangbind_elements:

9846 nobj = getattr(args[0], e)

9847 if nobj._changed() is False:

9848 continue

9849 setmethod = getattr(self, "_set_%s" % e)

9850 if load is None:

9851 setmethod(getattr(args[0], e))

9852 else:

9853 setmethod(getattr(args[0], e), load=load)

9854

9855 def _path(self):

9856 if hasattr(self, "_parent"):

9857 return self._parent._path()+[self._yang_name]

9858 else:

9859 return ['nsd', 'vnfd', 'df', 'virtual-link-profile', 'max-bit-rate-requirements']

9860

9861 def _get_root(self):

9862 """

9863 Getter method for root, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/max_bit_rate_requirements/root (uint32)

9864

9865 YANG Description: Throughput requirement of the link (e.g. bitrate of

9866 E-Line, root bitrate of E-Tree, aggregate capacity

9867 of E-LAN).

9868 """

9869 return self.__root

9870

9871 def _set_root(self, v, load=False):

9872 """

9873 Setter method for root, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/max_bit_rate_requirements/root (uint32)

9874 If this variable is read-only (config: false) in the

9875 source YANG file, then _set_root is considered as a private

9876 method. Backends looking to populate this variable should

9877 do so via calling thisObj._set_root() directly.

9878

9879 YANG Description: Throughput requirement of the link (e.g. bitrate of

9880 E-Line, root bitrate of E-Tree, aggregate capacity

9881 of E-LAN).

9882 """

9883 if hasattr(v, "_utype"):

9884 v = v._utype(v)

9885 try:

9886 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="root", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

9887 except (TypeError, ValueError):

9888 raise ValueError({

9889 'error-string': """root must be of a type compatible with uint32""",

9890 'defined-type': "uint32",

9891 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="root", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)""",

9892 })

9893

9894 self.__root = t

9895 if hasattr(self, '_set'):

9896 self._set()

9897

9898 def _unset_root(self):

9899 self.__root = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="root", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

9900

9901

9902 def _get_leaf(self):

9903 """

9904 Getter method for leaf, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/max_bit_rate_requirements/leaf (uint32)

9905

9906 YANG Description: Throughput requirement of leaf connections to the

9907 link when applicable to the connectivity type

9908(e.g. for E-Tree and E-LAN branches).

9909 """

9910 return self.__leaf

9911

9912 def _set_leaf(self, v, load=False):

9913 """

9914 Setter method for leaf, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/max_bit_rate_requirements/leaf (uint32)

9915 If this variable is read-only (config: false) in the

9916 source YANG file, then _set_leaf is considered as a private

9917 method. Backends looking to populate this variable should

9918 do so via calling thisObj._set_leaf() directly.

9919

9920 YANG Description: Throughput requirement of leaf connections to the

9921 link when applicable to the connectivity type

9922(e.g. for E-Tree and E-LAN branches).

9923 """

9924 if hasattr(v, "_utype"):

9925 v = v._utype(v)

9926 try:

9927 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="leaf", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

9928 except (TypeError, ValueError):

9929 raise ValueError({

9930 'error-string': """leaf must be of a type compatible with uint32""",

9931 'defined-type': "uint32",

9932 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="leaf", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)""",

9933 })

9934

9935 self.__leaf = t

9936 if hasattr(self, '_set'):

9937 self._set()

9938

9939 def _unset_leaf(self):

9940 self.__leaf = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="leaf", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

9941

9942 root = __builtin__.property(_get_root, _set_root)

9943 leaf = __builtin__.property(_get_leaf, _set_leaf)

9944

9945

9946 _pyangbind_elements = OrderedDict([('root', root), ('leaf', leaf), ])

9947

9948

9949 class yc_min_bit_rate_requirements_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_min_bit_rate_requirements(PybindBase):

9950 """

9951 This class was auto-generated by the PythonClass plugin for PYANG

9952 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/virtual-link-profile/min-bit-rate-requirements. Each member element of

9953 the container is represented as a class variable - with a specific

9954 YANG type.

9955

9956 YANG Description: Specifies the minimum bitrate requirements for a VL

9957 instantiated according to this profile.

9958 """

9959 __slots__ = ('_path_helper', '_extmethods', '__root','__leaf',)

9960

9961 _yang_name = 'min-bit-rate-requirements'

9962 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

9963

9964 _pybind_generated_by = 'container'

9965

9966 def __init__(self, *args, **kwargs):

9967

9968 self._path_helper = False

9969

9970 self._extmethods = False

9971 self.__root = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="root", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

9972 self.__leaf = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="leaf", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

9973

9974 load = kwargs.pop("load", None)

9975 if args:

9976 if len(args) > 1:

9977 raise TypeError("cannot create a YANG container with >1 argument")

9978 all_attr = True

9979 for e in self._pyangbind_elements:

9980 if not hasattr(args[0], e):

9981 all_attr = False

9982 break

9983 if not all_attr:

9984 raise ValueError("Supplied object did not have the correct attributes")

9985 for e in self._pyangbind_elements:

9986 nobj = getattr(args[0], e)

9987 if nobj._changed() is False:

9988 continue

9989 setmethod = getattr(self, "_set_%s" % e)

9990 if load is None:

9991 setmethod(getattr(args[0], e))

9992 else:

9993 setmethod(getattr(args[0], e), load=load)

9994

9995 def _path(self):

9996 if hasattr(self, "_parent"):

9997 return self._parent._path()+[self._yang_name]

9998 else:

9999 return ['nsd', 'vnfd', 'df', 'virtual-link-profile', 'min-bit-rate-requirements']

10000

10001 def _get_root(self):

10002 """

10003 Getter method for root, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/min_bit_rate_requirements/root (uint32)

10004

10005 YANG Description: Throughput requirement of the link (e.g. bitrate of

10006 E-Line, root bitrate of E-Tree, aggregate capacity

10007 of E-LAN).

10008 """

10009 return self.__root

10010

10011 def _set_root(self, v, load=False):

10012 """

10013 Setter method for root, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/min_bit_rate_requirements/root (uint32)

10014 If this variable is read-only (config: false) in the

10015 source YANG file, then _set_root is considered as a private

10016 method. Backends looking to populate this variable should

10017 do so via calling thisObj._set_root() directly.

10018

10019 YANG Description: Throughput requirement of the link (e.g. bitrate of

10020 E-Line, root bitrate of E-Tree, aggregate capacity

10021 of E-LAN).

10022 """

10023 if hasattr(v, "_utype"):

10024 v = v._utype(v)

10025 try:

10026 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="root", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

10027 except (TypeError, ValueError):

10028 raise ValueError({

10029 'error-string': """root must be of a type compatible with uint32""",

10030 'defined-type': "uint32",

10031 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="root", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)""",

10032 })

10033

10034 self.__root = t

10035 if hasattr(self, '_set'):

10036 self._set()

10037

10038 def _unset_root(self):

10039 self.__root = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="root", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

10040

10041

10042 def _get_leaf(self):

10043 """

10044 Getter method for leaf, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/min_bit_rate_requirements/leaf (uint32)

10045

10046 YANG Description: Throughput requirement of leaf connections to the

10047 link when applicable to the connectivity type

10048(e.g. for E-Tree and E-LAN branches).

10049 """

10050 return self.__leaf

10051

10052 def _set_leaf(self, v, load=False):

10053 """

10054 Setter method for leaf, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/min_bit_rate_requirements/leaf (uint32)

10055 If this variable is read-only (config: false) in the

10056 source YANG file, then _set_leaf is considered as a private

10057 method. Backends looking to populate this variable should

10058 do so via calling thisObj._set_leaf() directly.

10059

10060 YANG Description: Throughput requirement of leaf connections to the

10061 link when applicable to the connectivity type

10062(e.g. for E-Tree and E-LAN branches).

10063 """

10064 if hasattr(v, "_utype"):

10065 v = v._utype(v)

10066 try:

10067 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="leaf", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

10068 except (TypeError, ValueError):

10069 raise ValueError({

10070 'error-string': """leaf must be of a type compatible with uint32""",

10071 'defined-type': "uint32",

10072 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="leaf", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)""",

10073 })

10074

10075 self.__leaf = t

10076 if hasattr(self, '_set'):

10077 self._set()

10078

10079 def _unset_leaf(self):

10080 self.__leaf = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="leaf", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

10081

10082 root = __builtin__.property(_get_root, _set_root)

10083 leaf = __builtin__.property(_get_leaf, _set_leaf)

10084

10085

10086 _pyangbind_elements = OrderedDict([('root', root), ('leaf', leaf), ])

10087

10088

10089 class yc_l2_protocol_data_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_virtual_link_protocol_data_l2_protocol_data(PybindBase):

10090 """

10091 This class was auto-generated by the PythonClass plugin for PYANG

10092 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/virtual-link-profile/virtual-link-protocol-data/l2-protocol-data. Each member element of

10093 the container is represented as a class variable - with a specific

10094 YANG type.

10095

10096 YANG Description: Specifies the L2 protocol data for this virtual link.

10097 Shall be present when the associatedLayerProtocol

10098 attribute indicates a L2 protocol and shall be absent

10099 otherwise.

10100 """

10101 __slots__ = ('_path_helper', '_extmethods', '__name','__network_type','__vlan_transparent','__mtu',)

10102

10103 _yang_name = 'l2-protocol-data'

10104 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

10105

10106 _pybind_generated_by = 'container'

10107

10108 def __init__(self, *args, **kwargs):

10109

10110 self._path_helper = False

10111

10112 self._extmethods = False

10113 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

10114 self.__network_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'flat': {}, 'vlan': {}, 'vxlan': {}, 'gre': {}},), is_leaf=True, yang_name="network-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

10115 self.__vlan_transparent = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="vlan-transparent", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

10116 self.__mtu = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), is_leaf=True, yang_name="mtu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

10117

10118 load = kwargs.pop("load", None)

10119 if args:

10120 if len(args) > 1:

10121 raise TypeError("cannot create a YANG container with >1 argument")

10122 all_attr = True

10123 for e in self._pyangbind_elements:

10124 if not hasattr(args[0], e):

10125 all_attr = False

10126 break

10127 if not all_attr:

10128 raise ValueError("Supplied object did not have the correct attributes")

10129 for e in self._pyangbind_elements:

10130 nobj = getattr(args[0], e)

10131 if nobj._changed() is False:

10132 continue

10133 setmethod = getattr(self, "_set_%s" % e)

10134 if load is None:

10135 setmethod(getattr(args[0], e))

10136 else:

10137 setmethod(getattr(args[0], e), load=load)

10138

10139 def _path(self):

10140 if hasattr(self, "_parent"):

10141 return self._parent._path()+[self._yang_name]

10142 else:

10143 return ['nsd', 'vnfd', 'df', 'virtual-link-profile', 'virtual-link-protocol-data', 'l2-protocol-data']

10144

10145 def _get_name(self):

10146 """

10147 Getter method for name, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l2_protocol_data/name (string)

10148

10149 YANG Description: Network name associated with this L2 protocol.

10150 """

10151 return self.__name

10152

10153 def _set_name(self, v, load=False):

10154 """

10155 Setter method for name, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l2_protocol_data/name (string)

10156 If this variable is read-only (config: false) in the

10157 source YANG file, then _set_name is considered as a private

10158 method. Backends looking to populate this variable should

10159 do so via calling thisObj._set_name() directly.

10160

10161 YANG Description: Network name associated with this L2 protocol.

10162 """

10163 if hasattr(v, "_utype"):

10164 v = v._utype(v)

10165 try:

10166 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

10167 except (TypeError, ValueError):

10168 raise ValueError({

10169 'error-string': """name must be of a type compatible with string""",

10170 'defined-type': "string",

10171 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

10172 })

10173

10174 self.__name = t

10175 if hasattr(self, '_set'):

10176 self._set()

10177

10178 def _unset_name(self):

10179 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

10180

10181

10182 def _get_network_type(self):

10183 """

10184 Getter method for network_type, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l2_protocol_data/network_type (enumeration)

10185

10186 YANG Description: Specifies the network type for this L2 protocol.

10187 Possible values: FLAT, VLAN, VXLAN, GRE.

10188 """

10189 return self.__network_type

10190

10191 def _set_network_type(self, v, load=False):

10192 """

10193 Setter method for network_type, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l2_protocol_data/network_type (enumeration)

10194 If this variable is read-only (config: false) in the

10195 source YANG file, then _set_network_type is considered as a private

10196 method. Backends looking to populate this variable should

10197 do so via calling thisObj._set_network_type() directly.

10198

10199 YANG Description: Specifies the network type for this L2 protocol.

10200 Possible values: FLAT, VLAN, VXLAN, GRE.

10201 """

10202 if hasattr(v, "_utype"):

10203 v = v._utype(v)

10204 try:

10205 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'flat': {}, 'vlan': {}, 'vxlan': {}, 'gre': {}},), is_leaf=True, yang_name="network-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

10206 except (TypeError, ValueError):

10207 raise ValueError({

10208 'error-string': """network_type must be of a type compatible with enumeration""",

10209 'defined-type': "etsi-nfv-nsd:enumeration",

10210 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'flat': {}, 'vlan': {}, 'vxlan': {}, 'gre': {}},), is_leaf=True, yang_name="network-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)""",

10211 })

10212

10213 self.__network_type = t

10214 if hasattr(self, '_set'):

10215 self._set()

10216

10217 def _unset_network_type(self):

10218 self.__network_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'flat': {}, 'vlan': {}, 'vxlan': {}, 'gre': {}},), is_leaf=True, yang_name="network-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

10219

10220

10221 def _get_vlan_transparent(self):

10222 """

10223 Getter method for vlan_transparent, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l2_protocol_data/vlan_transparent (boolean)

10224

10225 YANG Description: Specifies whether to support VLAN transparency for

10226 this L2 protocol or not.

10227 """

10228 return self.__vlan_transparent

10229

10230 def _set_vlan_transparent(self, v, load=False):

10231 """

10232 Setter method for vlan_transparent, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l2_protocol_data/vlan_transparent (boolean)

10233 If this variable is read-only (config: false) in the

10234 source YANG file, then _set_vlan_transparent is considered as a private

10235 method. Backends looking to populate this variable should

10236 do so via calling thisObj._set_vlan_transparent() directly.

10237

10238 YANG Description: Specifies whether to support VLAN transparency for

10239 this L2 protocol or not.

10240 """

10241 if hasattr(v, "_utype"):

10242 v = v._utype(v)

10243 try:

10244 t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="vlan-transparent", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

10245 except (TypeError, ValueError):

10246 raise ValueError({

10247 'error-string': """vlan_transparent must be of a type compatible with boolean""",

10248 'defined-type': "boolean",

10249 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="vlan-transparent", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)""",

10250 })

10251

10252 self.__vlan_transparent = t

10253 if hasattr(self, '_set'):

10254 self._set()

10255

10256 def _unset_vlan_transparent(self):

10257 self.__vlan_transparent = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="vlan-transparent", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

10258

10259

10260 def _get_mtu(self):

10261 """

10262 Getter method for mtu, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l2_protocol_data/mtu (uint16)

10263

10264 YANG Description: Specifies the maximum transmission unit (MTU) value

10265 for this L2 protocol.

10266 """

10267 return self.__mtu

10268

10269 def _set_mtu(self, v, load=False):

10270 """

10271 Setter method for mtu, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l2_protocol_data/mtu (uint16)

10272 If this variable is read-only (config: false) in the

10273 source YANG file, then _set_mtu is considered as a private

10274 method. Backends looking to populate this variable should

10275 do so via calling thisObj._set_mtu() directly.

10276

10277 YANG Description: Specifies the maximum transmission unit (MTU) value

10278 for this L2 protocol.

10279 """

10280 if hasattr(v, "_utype"):

10281 v = v._utype(v)

10282 try:

10283 t = YANGDynClass(v,base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), is_leaf=True, yang_name="mtu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

10284 except (TypeError, ValueError):

10285 raise ValueError({

10286 'error-string': """mtu must be of a type compatible with uint16""",

10287 'defined-type': "uint16",

10288 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), is_leaf=True, yang_name="mtu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)""",

10289 })

10290

10291 self.__mtu = t

10292 if hasattr(self, '_set'):

10293 self._set()

10294

10295 def _unset_mtu(self):

10296 self.__mtu = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), is_leaf=True, yang_name="mtu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

10297

10298 name = __builtin__.property(_get_name, _set_name)

10299 network_type = __builtin__.property(_get_network_type, _set_network_type)

10300 vlan_transparent = __builtin__.property(_get_vlan_transparent, _set_vlan_transparent)

10301 mtu = __builtin__.property(_get_mtu, _set_mtu)

10302

10303

10304 _pyangbind_elements = OrderedDict([('name', name), ('network_type', network_type), ('vlan_transparent', vlan_transparent), ('mtu', mtu), ])

10305

10306

10307 class yc_l3_protocol_data_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_virtual_link_protocol_data_l3_protocol_data(PybindBase):

10308 """

10309 This class was auto-generated by the PythonClass plugin for PYANG

10310 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/virtual-link-profile/virtual-link-protocol-data/l3-protocol-data. Each member element of

10311 the container is represented as a class variable - with a specific

10312 YANG type.

10313

10314 YANG Description: Specifies the L3 protocol data for this virtual link.

10315 Shall be present when the associatedLayerProtocol

10316 attribute indicates a L3 protocol and shall be absent

10317 otherwise.

10318 """

10319 __slots__ = ('_path_helper', '_extmethods', '__name','__ip_version','__cidr','__ip_allocation_pools','__gateway_ip','__dhcp_enabled','__ipv6_address_mode',)

10320

10321 _yang_name = 'l3-protocol-data'

10322 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

10323

10324 _pybind_generated_by = 'container'

10325

10326 def __init__(self, *args, **kwargs):

10327

10328 self._path_helper = False

10329

10330 self._extmethods = False

10331 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

10332 self.__ip_version = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), default=str("ipv4"), is_leaf=True, yang_name="ip-version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

10333 self.__cidr = YANGDynClass(base=str, is_leaf=True, yang_name="cidr", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

10334 self.__ip_allocation_pools = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="ip-allocation-pools", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

10335 self.__gateway_ip = YANGDynClass(base=[RestrictedClassType(base_type=str, restriction_dict={'pattern': '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\\p{N}\\p{L}]+)?'}),RestrictedClassType(base_type=str, restriction_dict={'pattern': '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))(%[\\p{N}\\p{L}]+)?'}),], is_leaf=True, yang_name="gateway-ip", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='inet:ip-address', is_config=True)

10336 self.__dhcp_enabled = YANGDynClass(base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="dhcp-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

10337 self.__ipv6_address_mode = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'slaac': {}, 'dhcpv6-stateful': {}, 'dhcpv6-stateless': {}},), is_leaf=True, yang_name="ipv6-address-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

10338

10339 load = kwargs.pop("load", None)

10340 if args:

10341 if len(args) > 1:

10342 raise TypeError("cannot create a YANG container with >1 argument")

10343 all_attr = True

10344 for e in self._pyangbind_elements:

10345 if not hasattr(args[0], e):

10346 all_attr = False

10347 break

10348 if not all_attr:

10349 raise ValueError("Supplied object did not have the correct attributes")

10350 for e in self._pyangbind_elements:

10351 nobj = getattr(args[0], e)

10352 if nobj._changed() is False:

10353 continue

10354 setmethod = getattr(self, "_set_%s" % e)

10355 if load is None:

10356 setmethod(getattr(args[0], e))

10357 else:

10358 setmethod(getattr(args[0], e), load=load)

10359

10360 def _path(self):

10361 if hasattr(self, "_parent"):

10362 return self._parent._path()+[self._yang_name]

10363 else:

10364 return ['nsd', 'vnfd', 'df', 'virtual-link-profile', 'virtual-link-protocol-data', 'l3-protocol-data']

10365

10366 def _get_name(self):

10367 """

10368 Getter method for name, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/name (string)

10369

10370 YANG Description: Network name associated with this L3 protocol.

10371 """

10372 return self.__name

10373

10374 def _set_name(self, v, load=False):

10375 """

10376 Setter method for name, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/name (string)

10377 If this variable is read-only (config: false) in the

10378 source YANG file, then _set_name is considered as a private

10379 method. Backends looking to populate this variable should

10380 do so via calling thisObj._set_name() directly.

10381

10382 YANG Description: Network name associated with this L3 protocol.

10383 """

10384 if hasattr(v, "_utype"):

10385 v = v._utype(v)

10386 try:

10387 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

10388 except (TypeError, ValueError):

10389 raise ValueError({

10390 'error-string': """name must be of a type compatible with string""",

10391 'defined-type': "string",

10392 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

10393 })

10394

10395 self.__name = t

10396 if hasattr(self, '_set'):

10397 self._set()

10398

10399 def _unset_name(self):

10400 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

10401

10402

10403 def _get_ip_version(self):

10404 """

10405 Getter method for ip_version, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/ip_version (enumeration)

10406

10407 YANG Description: Specifies IP version of this L3 protocol.

10408 Value:

10409• IPV4.

10410• IPV6.

10411 """

10412 return self.__ip_version

10413

10414 def _set_ip_version(self, v, load=False):

10415 """

10416 Setter method for ip_version, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/ip_version (enumeration)

10417 If this variable is read-only (config: false) in the

10418 source YANG file, then _set_ip_version is considered as a private

10419 method. Backends looking to populate this variable should

10420 do so via calling thisObj._set_ip_version() directly.

10421

10422 YANG Description: Specifies IP version of this L3 protocol.

10423 Value:

10424• IPV4.

10425• IPV6.

10426 """

10427 if hasattr(v, "_utype"):

10428 v = v._utype(v)

10429 try:

10430 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), default=str("ipv4"), is_leaf=True, yang_name="ip-version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

10431 except (TypeError, ValueError):

10432 raise ValueError({

10433 'error-string': """ip_version must be of a type compatible with enumeration""",

10434 'defined-type': "etsi-nfv-nsd:enumeration",

10435 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), default=str("ipv4"), is_leaf=True, yang_name="ip-version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)""",

10436 })

10437

10438 self.__ip_version = t

10439 if hasattr(self, '_set'):

10440 self._set()

10441

10442 def _unset_ip_version(self):

10443 self.__ip_version = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), default=str("ipv4"), is_leaf=True, yang_name="ip-version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

10444

10445

10446 def _get_cidr(self):

10447 """

10448 Getter method for cidr, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/cidr (string)

10449

10450 YANG Description: Specifies the CIDR (Classless InterDomain Routing)

10451 of this L3 protocol.

10452 """

10453 return self.__cidr

10454

10455 def _set_cidr(self, v, load=False):

10456 """

10457 Setter method for cidr, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/cidr (string)

10458 If this variable is read-only (config: false) in the

10459 source YANG file, then _set_cidr is considered as a private

10460 method. Backends looking to populate this variable should

10461 do so via calling thisObj._set_cidr() directly.

10462

10463 YANG Description: Specifies the CIDR (Classless InterDomain Routing)

10464 of this L3 protocol.

10465 """

10466 if hasattr(v, "_utype"):

10467 v = v._utype(v)

10468 try:

10469 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="cidr", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

10470 except (TypeError, ValueError):

10471 raise ValueError({

10472 'error-string': """cidr must be of a type compatible with string""",

10473 'defined-type': "string",

10474 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="cidr", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

10475 })

10476

10477 self.__cidr = t

10478 if hasattr(self, '_set'):

10479 self._set()

10480

10481 def _unset_cidr(self):

10482 self.__cidr = YANGDynClass(base=str, is_leaf=True, yang_name="cidr", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

10483

10484

10485 def _get_ip_allocation_pools(self):

10486 """

10487 Getter method for ip_allocation_pools, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/ip_allocation_pools (string)

10488

10489 YANG Description: Specifies the allocation pools with start and end

10490 IP addresses for this L3 protocol.

10491 """

10492 return self.__ip_allocation_pools

10493

10494 def _set_ip_allocation_pools(self, v, load=False):

10495 """

10496 Setter method for ip_allocation_pools, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/ip_allocation_pools (string)

10497 If this variable is read-only (config: false) in the

10498 source YANG file, then _set_ip_allocation_pools is considered as a private

10499 method. Backends looking to populate this variable should

10500 do so via calling thisObj._set_ip_allocation_pools() directly.

10501

10502 YANG Description: Specifies the allocation pools with start and end

10503 IP addresses for this L3 protocol.

10504 """

10505 if hasattr(v, "_utype"):

10506 v = v._utype(v)

10507 try:

10508 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="ip-allocation-pools", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

10509 except (TypeError, ValueError):

10510 raise ValueError({

10511 'error-string': """ip_allocation_pools must be of a type compatible with string""",

10512 'defined-type': "string",

10513 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="ip-allocation-pools", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

10514 })

10515

10516 self.__ip_allocation_pools = t

10517 if hasattr(self, '_set'):

10518 self._set()

10519

10520 def _unset_ip_allocation_pools(self):

10521 self.__ip_allocation_pools = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="ip-allocation-pools", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

10522

10523

10524 def _get_gateway_ip(self):

10525 """

10526 Getter method for gateway_ip, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/gateway_ip (inet:ip-address)

10527

10528 YANG Description: Specifies the gateway IP address for this L3

10529 protocol.

10530 """

10531 return self.__gateway_ip

10532

10533 def _set_gateway_ip(self, v, load=False):

10534 """

10535 Setter method for gateway_ip, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/gateway_ip (inet:ip-address)

10536 If this variable is read-only (config: false) in the

10537 source YANG file, then _set_gateway_ip is considered as a private

10538 method. Backends looking to populate this variable should

10539 do so via calling thisObj._set_gateway_ip() directly.

10540

10541 YANG Description: Specifies the gateway IP address for this L3

10542 protocol.

10543 """

10544 if hasattr(v, "_utype"):

10545 v = v._utype(v)

10546 try:

10547 t = YANGDynClass(v,base=[RestrictedClassType(base_type=str, restriction_dict={'pattern': '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\\p{N}\\p{L}]+)?'}),RestrictedClassType(base_type=str, restriction_dict={'pattern': '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))(%[\\p{N}\\p{L}]+)?'}),], is_leaf=True, yang_name="gateway-ip", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='inet:ip-address', is_config=True)

10548 except (TypeError, ValueError):

10549 raise ValueError({

10550 'error-string': """gateway_ip must be of a type compatible with inet:ip-address""",

10551 'defined-type': "inet:ip-address",

10552 'generated-type': """YANGDynClass(base=[RestrictedClassType(base_type=str, restriction_dict={'pattern': '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\\p{N}\\p{L}]+)?'}),RestrictedClassType(base_type=str, restriction_dict={'pattern': '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))(%[\\p{N}\\p{L}]+)?'}),], is_leaf=True, yang_name="gateway-ip", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='inet:ip-address', is_config=True)""",

10553 })

10554

10555 self.__gateway_ip = t

10556 if hasattr(self, '_set'):

10557 self._set()

10558

10559 def _unset_gateway_ip(self):

10560 self.__gateway_ip = YANGDynClass(base=[RestrictedClassType(base_type=str, restriction_dict={'pattern': '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\\p{N}\\p{L}]+)?'}),RestrictedClassType(base_type=str, restriction_dict={'pattern': '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))(%[\\p{N}\\p{L}]+)?'}),], is_leaf=True, yang_name="gateway-ip", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='inet:ip-address', is_config=True)

10561

10562

10563 def _get_dhcp_enabled(self):

10564 """

10565 Getter method for dhcp_enabled, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/dhcp_enabled (boolean)

10566

10567 YANG Description: Indicates whether DHCP (Dynamic Host Configuration

10568 Protocol) is enabled or disabled for this L3

10569 protocol.

10570 """

10571 return self.__dhcp_enabled

10572

10573 def _set_dhcp_enabled(self, v, load=False):

10574 """

10575 Setter method for dhcp_enabled, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/dhcp_enabled (boolean)

10576 If this variable is read-only (config: false) in the

10577 source YANG file, then _set_dhcp_enabled is considered as a private

10578 method. Backends looking to populate this variable should

10579 do so via calling thisObj._set_dhcp_enabled() directly.

10580

10581 YANG Description: Indicates whether DHCP (Dynamic Host Configuration

10582 Protocol) is enabled or disabled for this L3

10583 protocol.

10584 """

10585 if hasattr(v, "_utype"):

10586 v = v._utype(v)

10587 try:

10588 t = YANGDynClass(v,base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="dhcp-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

10589 except (TypeError, ValueError):

10590 raise ValueError({

10591 'error-string': """dhcp_enabled must be of a type compatible with boolean""",

10592 'defined-type': "boolean",

10593 'generated-type': """YANGDynClass(base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="dhcp-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)""",

10594 })

10595

10596 self.__dhcp_enabled = t

10597 if hasattr(self, '_set'):

10598 self._set()

10599

10600 def _unset_dhcp_enabled(self):

10601 self.__dhcp_enabled = YANGDynClass(base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="dhcp-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

10602

10603

10604 def _get_ipv6_address_mode(self):

10605 """

10606 Getter method for ipv6_address_mode, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/ipv6_address_mode (enumeration)

10607

10608 YANG Description: Specifies IPv6 address mode. Possible values:

10609• SLAAC.

10610• DHCPV6-STATEFUL.

10611• DHCPV6-STATELESS.

10612 May be present when the value of the ipVersion

10613 attribute is 'IPV6' and shall be absent otherwise.

10614 """

10615 return self.__ipv6_address_mode

10616

10617 def _set_ipv6_address_mode(self, v, load=False):

10618 """

10619 Setter method for ipv6_address_mode, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/ipv6_address_mode (enumeration)

10620 If this variable is read-only (config: false) in the

10621 source YANG file, then _set_ipv6_address_mode is considered as a private

10622 method. Backends looking to populate this variable should

10623 do so via calling thisObj._set_ipv6_address_mode() directly.

10624

10625 YANG Description: Specifies IPv6 address mode. Possible values:

10626• SLAAC.

10627• DHCPV6-STATEFUL.

10628• DHCPV6-STATELESS.

10629 May be present when the value of the ipVersion

10630 attribute is 'IPV6' and shall be absent otherwise.

10631 """

10632 if hasattr(v, "_utype"):

10633 v = v._utype(v)

10634 try:

10635 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'slaac': {}, 'dhcpv6-stateful': {}, 'dhcpv6-stateless': {}},), is_leaf=True, yang_name="ipv6-address-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

10636 except (TypeError, ValueError):

10637 raise ValueError({

10638 'error-string': """ipv6_address_mode must be of a type compatible with enumeration""",

10639 'defined-type': "etsi-nfv-nsd:enumeration",

10640 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'slaac': {}, 'dhcpv6-stateful': {}, 'dhcpv6-stateless': {}},), is_leaf=True, yang_name="ipv6-address-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)""",

10641 })

10642

10643 self.__ipv6_address_mode = t

10644 if hasattr(self, '_set'):

10645 self._set()

10646

10647 def _unset_ipv6_address_mode(self):

10648 self.__ipv6_address_mode = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'slaac': {}, 'dhcpv6-stateful': {}, 'dhcpv6-stateless': {}},), is_leaf=True, yang_name="ipv6-address-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

10649

10650 name = __builtin__.property(_get_name, _set_name)

10651 ip_version = __builtin__.property(_get_ip_version, _set_ip_version)

10652 cidr = __builtin__.property(_get_cidr, _set_cidr)

10653 ip_allocation_pools = __builtin__.property(_get_ip_allocation_pools, _set_ip_allocation_pools)

10654 gateway_ip = __builtin__.property(_get_gateway_ip, _set_gateway_ip)

10655 dhcp_enabled = __builtin__.property(_get_dhcp_enabled, _set_dhcp_enabled)

10656 ipv6_address_mode = __builtin__.property(_get_ipv6_address_mode, _set_ipv6_address_mode)

10657

10658

10659 _pyangbind_elements = OrderedDict([('name', name), ('ip_version', ip_version), ('cidr', cidr), ('ip_allocation_pools', ip_allocation_pools), ('gateway_ip', gateway_ip), ('dhcp_enabled', dhcp_enabled), ('ipv6_address_mode', ipv6_address_mode), ])

10660

10661

10662 class yc_virtual_link_protocol_data_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_virtual_link_protocol_data(PybindBase):

10663 """

10664 This class was auto-generated by the PythonClass plugin for PYANG

10665 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/virtual-link-profile/virtual-link-protocol-data. Each member element of

10666 the container is represented as a class variable - with a specific

10667 YANG type.

10668

10669 YANG Description: Specifies the protocol data for a VL instantiated

10670 according to this profile. Cardinality 0 is used when

10671 no protocol data needs to be specified.

10672 """

10673 __slots__ = ('_path_helper', '_extmethods', '__associated_layer_protocol','__l2_protocol_data','__l3_protocol_data',)

10674

10675 _yang_name = 'virtual-link-protocol-data'

10676 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

10677

10678 _pybind_generated_by = 'container'

10679

10680 def __init__(self, *args, **kwargs):

10681

10682 self._path_helper = False

10683

10684 self._extmethods = False

10685 self.__associated_layer_protocol = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="associated-layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

10686 self.__l2_protocol_data = YANGDynClass(base=yc_l2_protocol_data_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_virtual_link_protocol_data_l2_protocol_data, is_container='container', yang_name="l2-protocol-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

10687 self.__l3_protocol_data = YANGDynClass(base=yc_l3_protocol_data_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_virtual_link_protocol_data_l3_protocol_data, is_container='container', yang_name="l3-protocol-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

10688

10689 load = kwargs.pop("load", None)

10690 if args:

10691 if len(args) > 1:

10692 raise TypeError("cannot create a YANG container with >1 argument")

10693 all_attr = True

10694 for e in self._pyangbind_elements:

10695 if not hasattr(args[0], e):

10696 all_attr = False

10697 break

10698 if not all_attr:

10699 raise ValueError("Supplied object did not have the correct attributes")

10700 for e in self._pyangbind_elements:

10701 nobj = getattr(args[0], e)

10702 if nobj._changed() is False:

10703 continue

10704 setmethod = getattr(self, "_set_%s" % e)

10705 if load is None:

10706 setmethod(getattr(args[0], e))

10707 else:

10708 setmethod(getattr(args[0], e), load=load)

10709

10710 def _path(self):

10711 if hasattr(self, "_parent"):

10712 return self._parent._path()+[self._yang_name]

10713 else:

10714 return ['nsd', 'vnfd', 'df', 'virtual-link-profile', 'virtual-link-protocol-data']

10715

10716 def _get_associated_layer_protocol(self):

10717 """

10718 Getter method for associated_layer_protocol, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/associated_layer_protocol (identityref)

10719

10720 YANG Description: One of the values of the attribute layerProtocol of

10721 the ConnectivityType IE.

10722 """

10723 return self.__associated_layer_protocol

10724

10725 def _set_associated_layer_protocol(self, v, load=False):

10726 """

10727 Setter method for associated_layer_protocol, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/associated_layer_protocol (identityref)

10728 If this variable is read-only (config: false) in the

10729 source YANG file, then _set_associated_layer_protocol is considered as a private

10730 method. Backends looking to populate this variable should

10731 do so via calling thisObj._set_associated_layer_protocol() directly.

10732

10733 YANG Description: One of the values of the attribute layerProtocol of

10734 the ConnectivityType IE.

10735 """

10736 if hasattr(v, "_utype"):

10737 v = v._utype(v)

10738 try:

10739 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="associated-layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

10740 except (TypeError, ValueError):

10741 raise ValueError({

10742 'error-string': """associated_layer_protocol must be of a type compatible with identityref""",

10743 'defined-type': "etsi-nfv-nsd:identityref",

10744 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="associated-layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)""",

10745 })

10746

10747 self.__associated_layer_protocol = t

10748 if hasattr(self, '_set'):

10749 self._set()

10750

10751 def _unset_associated_layer_protocol(self):

10752 self.__associated_layer_protocol = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="associated-layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

10753

10754

10755 def _get_l2_protocol_data(self):

10756 """

10757 Getter method for l2_protocol_data, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l2_protocol_data (container)

10758

10759 YANG Description: Specifies the L2 protocol data for this virtual link.

10760 Shall be present when the associatedLayerProtocol

10761 attribute indicates a L2 protocol and shall be absent

10762 otherwise.

10763 """

10764 return self.__l2_protocol_data

10765

10766 def _set_l2_protocol_data(self, v, load=False):

10767 """

10768 Setter method for l2_protocol_data, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l2_protocol_data (container)

10769 If this variable is read-only (config: false) in the

10770 source YANG file, then _set_l2_protocol_data is considered as a private

10771 method. Backends looking to populate this variable should

10772 do so via calling thisObj._set_l2_protocol_data() directly.

10773

10774 YANG Description: Specifies the L2 protocol data for this virtual link.

10775 Shall be present when the associatedLayerProtocol

10776 attribute indicates a L2 protocol and shall be absent

10777 otherwise.

10778 """

10779 if hasattr(v, "_utype"):

10780 v = v._utype(v)

10781 try:

10782 t = YANGDynClass(v,base=yc_l2_protocol_data_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_virtual_link_protocol_data_l2_protocol_data, is_container='container', yang_name="l2-protocol-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

10783 except (TypeError, ValueError):

10784 raise ValueError({

10785 'error-string': """l2_protocol_data must be of a type compatible with container""",

10786 'defined-type': "container",

10787 'generated-type': """YANGDynClass(base=yc_l2_protocol_data_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_virtual_link_protocol_data_l2_protocol_data, is_container='container', yang_name="l2-protocol-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

10788 })

10789

10790 self.__l2_protocol_data = t

10791 if hasattr(self, '_set'):

10792 self._set()

10793

10794 def _unset_l2_protocol_data(self):

10795 self.__l2_protocol_data = YANGDynClass(base=yc_l2_protocol_data_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_virtual_link_protocol_data_l2_protocol_data, is_container='container', yang_name="l2-protocol-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

10796

10797

10798 def _get_l3_protocol_data(self):

10799 """

10800 Getter method for l3_protocol_data, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data (container)

10801

10802 YANG Description: Specifies the L3 protocol data for this virtual link.

10803 Shall be present when the associatedLayerProtocol

10804 attribute indicates a L3 protocol and shall be absent

10805 otherwise.

10806 """

10807 return self.__l3_protocol_data

10808

10809 def _set_l3_protocol_data(self, v, load=False):

10810 """

10811 Setter method for l3_protocol_data, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data (container)

10812 If this variable is read-only (config: false) in the

10813 source YANG file, then _set_l3_protocol_data is considered as a private

10814 method. Backends looking to populate this variable should

10815 do so via calling thisObj._set_l3_protocol_data() directly.

10816

10817 YANG Description: Specifies the L3 protocol data for this virtual link.

10818 Shall be present when the associatedLayerProtocol

10819 attribute indicates a L3 protocol and shall be absent

10820 otherwise.

10821 """

10822 if hasattr(v, "_utype"):

10823 v = v._utype(v)

10824 try:

10825 t = YANGDynClass(v,base=yc_l3_protocol_data_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_virtual_link_protocol_data_l3_protocol_data, is_container='container', yang_name="l3-protocol-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

10826 except (TypeError, ValueError):

10827 raise ValueError({

10828 'error-string': """l3_protocol_data must be of a type compatible with container""",

10829 'defined-type': "container",

10830 'generated-type': """YANGDynClass(base=yc_l3_protocol_data_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_virtual_link_protocol_data_l3_protocol_data, is_container='container', yang_name="l3-protocol-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

10831 })

10832

10833 self.__l3_protocol_data = t

10834 if hasattr(self, '_set'):

10835 self._set()

10836

10837 def _unset_l3_protocol_data(self):

10838 self.__l3_protocol_data = YANGDynClass(base=yc_l3_protocol_data_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_virtual_link_protocol_data_l3_protocol_data, is_container='container', yang_name="l3-protocol-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

10839

10840 associated_layer_protocol = __builtin__.property(_get_associated_layer_protocol, _set_associated_layer_protocol)

10841 l2_protocol_data = __builtin__.property(_get_l2_protocol_data, _set_l2_protocol_data)

10842 l3_protocol_data = __builtin__.property(_get_l3_protocol_data, _set_l3_protocol_data)

10843

10844

10845 _pyangbind_elements = OrderedDict([('associated_layer_protocol', associated_layer_protocol), ('l2_protocol_data', l2_protocol_data), ('l3_protocol_data', l3_protocol_data), ])

10846

10847

10848 class yc_virtual_link_profile_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile(PybindBase):

10849 """

10850 This class was auto-generated by the PythonClass plugin for PYANG

10851 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/virtual-link-profile. Each member element of

10852 the container is represented as a class variable - with a specific

10853 YANG type.

10854

10855 YANG Description: Defines the internal VLD along with additional data which

10856 is used in this DF.

10857 """

10858 __slots__ = ('_path_helper', '_extmethods', '__id','__flavour','__local_affinity_or_anti_affinity_rule','__affinity_or_anti_affinity_group','__max_bit_rate_requirements','__min_bit_rate_requirements','__virtual_link_protocol_data',)

10859

10860 _yang_name = 'virtual-link-profile'

10861 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

10862

10863 _pybind_generated_by = 'container'

10864

10865 def __init__(self, *args, **kwargs):

10866

10867 self._path_helper = False

10868

10869 self._extmethods = False

10870 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

10871 self.__flavour = YANGDynClass(base=str, is_leaf=True, yang_name="flavour", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

10872 self.__local_affinity_or_anti_affinity_rule = YANGDynClass(base=YANGListType("affinity_type affinity_scope",yc_local_affinity_or_anti_affinity_rule_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_local_affinity_or_anti_affinity_rule, yang_name="local-affinity-or-anti-affinity-rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='affinity-type affinity-scope', extensions=None), is_container='list', yang_name="local-affinity-or-anti-affinity-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

10873 self.__affinity_or_anti_affinity_group = YANGDynClass(base=YANGListType("id",yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_affinity_or_anti_affinity_group, yang_name="affinity-or-anti-affinity-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

10874 self.__max_bit_rate_requirements = YANGDynClass(base=yc_max_bit_rate_requirements_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_max_bit_rate_requirements, is_container='container', yang_name="max-bit-rate-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

10875 self.__min_bit_rate_requirements = YANGDynClass(base=yc_min_bit_rate_requirements_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_min_bit_rate_requirements, is_container='container', yang_name="min-bit-rate-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

10876 self.__virtual_link_protocol_data = YANGDynClass(base=yc_virtual_link_protocol_data_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_virtual_link_protocol_data, is_container='container', yang_name="virtual-link-protocol-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

10877

10878 load = kwargs.pop("load", None)

10879 if args:

10880 if len(args) > 1:

10881 raise TypeError("cannot create a YANG container with >1 argument")

10882 all_attr = True

10883 for e in self._pyangbind_elements:

10884 if not hasattr(args[0], e):

10885 all_attr = False

10886 break

10887 if not all_attr:

10888 raise ValueError("Supplied object did not have the correct attributes")

10889 for e in self._pyangbind_elements:

10890 nobj = getattr(args[0], e)

10891 if nobj._changed() is False:

10892 continue

10893 setmethod = getattr(self, "_set_%s" % e)

10894 if load is None:

10895 setmethod(getattr(args[0], e))

10896 else:

10897 setmethod(getattr(args[0], e), load=load)

10898

10899 def _path(self):

10900 if hasattr(self, "_parent"):

10901 return self._parent._path()+[self._yang_name]

10902 else:

10903 return ['nsd', 'vnfd', 'df', 'virtual-link-profile']

10904

10905 def _get_id(self):

10906 """

10907 Getter method for id, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/id (leafref)

10908

10909 YANG Description: Uniquely identifies a Vnf VLD.

10910 """

10911 return self.__id

10912

10913 def _set_id(self, v, load=False):

10914 """

10915 Setter method for id, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/id (leafref)

10916 If this variable is read-only (config: false) in the

10917 source YANG file, then _set_id is considered as a private

10918 method. Backends looking to populate this variable should

10919 do so via calling thisObj._set_id() directly.

10920

10921 YANG Description: Uniquely identifies a Vnf VLD.

10922 """

10923 parent = getattr(self, "_parent", None)

10924 if parent is not None and load is False:

10925 raise AttributeError("Cannot set keys directly when" +

10926 " within an instantiated list")

10927

10928 if hasattr(v, "_utype"):

10929 v = v._utype(v)

10930 try:

10931 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

10932 except (TypeError, ValueError):

10933 raise ValueError({

10934 'error-string': """id must be of a type compatible with leafref""",

10935 'defined-type': "leafref",

10936 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

10937 })

10938

10939 self.__id = t

10940 if hasattr(self, '_set'):

10941 self._set()

10942

10943 def _unset_id(self):

10944 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

10945

10946

10947 def _get_flavour(self):

10948 """

10949 Getter method for flavour, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/flavour (leafref)

10950

10951 YANG Description: Identifies a flavour within the VnfVirtualLinkDesc.

10952 """

10953 return self.__flavour

10954

10955 def _set_flavour(self, v, load=False):

10956 """

10957 Setter method for flavour, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/flavour (leafref)

10958 If this variable is read-only (config: false) in the

10959 source YANG file, then _set_flavour is considered as a private

10960 method. Backends looking to populate this variable should

10961 do so via calling thisObj._set_flavour() directly.

10962

10963 YANG Description: Identifies a flavour within the VnfVirtualLinkDesc.

10964 """

10965 parent = getattr(self, "_parent", None)

10966 if parent is not None and load is False:

10967 raise AttributeError("Cannot set keys directly when" +

10968 " within an instantiated list")

10969

10970 if hasattr(v, "_utype"):

10971 v = v._utype(v)

10972 try:

10973 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="flavour", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

10974 except (TypeError, ValueError):

10975 raise ValueError({

10976 'error-string': """flavour must be of a type compatible with leafref""",

10977 'defined-type': "leafref",

10978 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="flavour", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

10979 })

10980

10981 self.__flavour = t

10982 if hasattr(self, '_set'):

10983 self._set()

10984

10985 def _unset_flavour(self):

10986 self.__flavour = YANGDynClass(base=str, is_leaf=True, yang_name="flavour", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

10987

10988

10989 def _get_local_affinity_or_anti_affinity_rule(self):

10990 """

10991 Getter method for local_affinity_or_anti_affinity_rule, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/local_affinity_or_anti_affinity_rule (list)

10992 """

10993 return self.__local_affinity_or_anti_affinity_rule

10994

10995 def _set_local_affinity_or_anti_affinity_rule(self, v, load=False):

10996 """

10997 Setter method for local_affinity_or_anti_affinity_rule, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/local_affinity_or_anti_affinity_rule (list)

10998 If this variable is read-only (config: false) in the

10999 source YANG file, then _set_local_affinity_or_anti_affinity_rule is considered as a private

11000 method. Backends looking to populate this variable should

11001 do so via calling thisObj._set_local_affinity_or_anti_affinity_rule() directly.

11002 """

11003 if hasattr(v, "_utype"):

11004 v = v._utype(v)

11005 try:

11006 t = YANGDynClass(v,base=YANGListType("affinity_type affinity_scope",yc_local_affinity_or_anti_affinity_rule_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_local_affinity_or_anti_affinity_rule, yang_name="local-affinity-or-anti-affinity-rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='affinity-type affinity-scope', extensions=None), is_container='list', yang_name="local-affinity-or-anti-affinity-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

11007 except (TypeError, ValueError):

11008 raise ValueError({

11009 'error-string': """local_affinity_or_anti_affinity_rule must be of a type compatible with list""",

11010 'defined-type': "list",

11011 'generated-type': """YANGDynClass(base=YANGListType("affinity_type affinity_scope",yc_local_affinity_or_anti_affinity_rule_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_local_affinity_or_anti_affinity_rule, yang_name="local-affinity-or-anti-affinity-rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='affinity-type affinity-scope', extensions=None), is_container='list', yang_name="local-affinity-or-anti-affinity-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

11012 })

11013

11014 self.__local_affinity_or_anti_affinity_rule = t

11015 if hasattr(self, '_set'):

11016 self._set()

11017

11018 def _unset_local_affinity_or_anti_affinity_rule(self):

11019 self.__local_affinity_or_anti_affinity_rule = YANGDynClass(base=YANGListType("affinity_type affinity_scope",yc_local_affinity_or_anti_affinity_rule_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_local_affinity_or_anti_affinity_rule, yang_name="local-affinity-or-anti-affinity-rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='affinity-type affinity-scope', extensions=None), is_container='list', yang_name="local-affinity-or-anti-affinity-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

11020

11021

11022 def _get_affinity_or_anti_affinity_group(self):

11023 """

11024 Getter method for affinity_or_anti_affinity_group, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/affinity_or_anti_affinity_group (list)

11025

11026 YANG Description: Identifier(s) of the affinity or anti-affinity

11027 group(s) the VnfVirtualLinkDesc belongs to.

11028 """

11029 return self.__affinity_or_anti_affinity_group

11030

11031 def _set_affinity_or_anti_affinity_group(self, v, load=False):

11032 """

11033 Setter method for affinity_or_anti_affinity_group, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/affinity_or_anti_affinity_group (list)

11034 If this variable is read-only (config: false) in the

11035 source YANG file, then _set_affinity_or_anti_affinity_group is considered as a private

11036 method. Backends looking to populate this variable should

11037 do so via calling thisObj._set_affinity_or_anti_affinity_group() directly.

11038

11039 YANG Description: Identifier(s) of the affinity or anti-affinity

11040 group(s) the VnfVirtualLinkDesc belongs to.

11041 """

11042 if hasattr(v, "_utype"):

11043 v = v._utype(v)

11044 try:

11045 t = YANGDynClass(v,base=YANGListType("id",yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_affinity_or_anti_affinity_group, yang_name="affinity-or-anti-affinity-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

11046 except (TypeError, ValueError):

11047 raise ValueError({

11048 'error-string': """affinity_or_anti_affinity_group must be of a type compatible with list""",

11049 'defined-type': "list",

11050 'generated-type': """YANGDynClass(base=YANGListType("id",yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_affinity_or_anti_affinity_group, yang_name="affinity-or-anti-affinity-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

11051 })

11052

11053 self.__affinity_or_anti_affinity_group = t

11054 if hasattr(self, '_set'):

11055 self._set()

11056

11057 def _unset_affinity_or_anti_affinity_group(self):

11058 self.__affinity_or_anti_affinity_group = YANGDynClass(base=YANGListType("id",yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_affinity_or_anti_affinity_group, yang_name="affinity-or-anti-affinity-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

11059

11060

11061 def _get_max_bit_rate_requirements(self):

11062 """

11063 Getter method for max_bit_rate_requirements, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/max_bit_rate_requirements (container)

11064

11065 YANG Description: Specifies the maximum bitrate requirements for a VL

11066 instantiated according to this profile.

11067 """

11068 return self.__max_bit_rate_requirements

11069

11070 def _set_max_bit_rate_requirements(self, v, load=False):

11071 """

11072 Setter method for max_bit_rate_requirements, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/max_bit_rate_requirements (container)

11073 If this variable is read-only (config: false) in the

11074 source YANG file, then _set_max_bit_rate_requirements is considered as a private

11075 method. Backends looking to populate this variable should

11076 do so via calling thisObj._set_max_bit_rate_requirements() directly.

11077

11078 YANG Description: Specifies the maximum bitrate requirements for a VL

11079 instantiated according to this profile.

11080 """

11081 if hasattr(v, "_utype"):

11082 v = v._utype(v)

11083 try:

11084 t = YANGDynClass(v,base=yc_max_bit_rate_requirements_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_max_bit_rate_requirements, is_container='container', yang_name="max-bit-rate-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

11085 except (TypeError, ValueError):

11086 raise ValueError({

11087 'error-string': """max_bit_rate_requirements must be of a type compatible with container""",

11088 'defined-type': "container",

11089 'generated-type': """YANGDynClass(base=yc_max_bit_rate_requirements_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_max_bit_rate_requirements, is_container='container', yang_name="max-bit-rate-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

11090 })

11091

11092 self.__max_bit_rate_requirements = t

11093 if hasattr(self, '_set'):

11094 self._set()

11095

11096 def _unset_max_bit_rate_requirements(self):

11097 self.__max_bit_rate_requirements = YANGDynClass(base=yc_max_bit_rate_requirements_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_max_bit_rate_requirements, is_container='container', yang_name="max-bit-rate-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

11098

11099

11100 def _get_min_bit_rate_requirements(self):

11101 """

11102 Getter method for min_bit_rate_requirements, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/min_bit_rate_requirements (container)

11103

11104 YANG Description: Specifies the minimum bitrate requirements for a VL

11105 instantiated according to this profile.

11106 """

11107 return self.__min_bit_rate_requirements

11108

11109 def _set_min_bit_rate_requirements(self, v, load=False):

11110 """

11111 Setter method for min_bit_rate_requirements, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/min_bit_rate_requirements (container)

11112 If this variable is read-only (config: false) in the

11113 source YANG file, then _set_min_bit_rate_requirements is considered as a private

11114 method. Backends looking to populate this variable should

11115 do so via calling thisObj._set_min_bit_rate_requirements() directly.

11116

11117 YANG Description: Specifies the minimum bitrate requirements for a VL

11118 instantiated according to this profile.

11119 """

11120 if hasattr(v, "_utype"):

11121 v = v._utype(v)

11122 try:

11123 t = YANGDynClass(v,base=yc_min_bit_rate_requirements_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_min_bit_rate_requirements, is_container='container', yang_name="min-bit-rate-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

11124 except (TypeError, ValueError):

11125 raise ValueError({

11126 'error-string': """min_bit_rate_requirements must be of a type compatible with container""",

11127 'defined-type': "container",

11128 'generated-type': """YANGDynClass(base=yc_min_bit_rate_requirements_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_min_bit_rate_requirements, is_container='container', yang_name="min-bit-rate-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

11129 })

11130

11131 self.__min_bit_rate_requirements = t

11132 if hasattr(self, '_set'):

11133 self._set()

11134

11135 def _unset_min_bit_rate_requirements(self):

11136 self.__min_bit_rate_requirements = YANGDynClass(base=yc_min_bit_rate_requirements_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_min_bit_rate_requirements, is_container='container', yang_name="min-bit-rate-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

11137

11138

11139 def _get_virtual_link_protocol_data(self):

11140 """

11141 Getter method for virtual_link_protocol_data, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data (container)

11142

11143 YANG Description: Specifies the protocol data for a VL instantiated

11144 according to this profile. Cardinality 0 is used when

11145 no protocol data needs to be specified.

11146 """

11147 return self.__virtual_link_protocol_data

11148

11149 def _set_virtual_link_protocol_data(self, v, load=False):

11150 """

11151 Setter method for virtual_link_protocol_data, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile/virtual_link_protocol_data (container)

11152 If this variable is read-only (config: false) in the

11153 source YANG file, then _set_virtual_link_protocol_data is considered as a private

11154 method. Backends looking to populate this variable should

11155 do so via calling thisObj._set_virtual_link_protocol_data() directly.

11156

11157 YANG Description: Specifies the protocol data for a VL instantiated

11158 according to this profile. Cardinality 0 is used when

11159 no protocol data needs to be specified.

11160 """

11161 if hasattr(v, "_utype"):

11162 v = v._utype(v)

11163 try:

11164 t = YANGDynClass(v,base=yc_virtual_link_protocol_data_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_virtual_link_protocol_data, is_container='container', yang_name="virtual-link-protocol-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

11165 except (TypeError, ValueError):

11166 raise ValueError({

11167 'error-string': """virtual_link_protocol_data must be of a type compatible with container""",

11168 'defined-type': "container",

11169 'generated-type': """YANGDynClass(base=yc_virtual_link_protocol_data_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_virtual_link_protocol_data, is_container='container', yang_name="virtual-link-protocol-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

11170 })

11171

11172 self.__virtual_link_protocol_data = t

11173 if hasattr(self, '_set'):

11174 self._set()

11175

11176 def _unset_virtual_link_protocol_data(self):

11177 self.__virtual_link_protocol_data = YANGDynClass(base=yc_virtual_link_protocol_data_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile_virtual_link_protocol_data, is_container='container', yang_name="virtual-link-protocol-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

11178

11179 id = __builtin__.property(_get_id, _set_id)

11180 flavour = __builtin__.property(_get_flavour, _set_flavour)

11181 local_affinity_or_anti_affinity_rule = __builtin__.property(_get_local_affinity_or_anti_affinity_rule, _set_local_affinity_or_anti_affinity_rule)

11182 affinity_or_anti_affinity_group = __builtin__.property(_get_affinity_or_anti_affinity_group, _set_affinity_or_anti_affinity_group)

11183 max_bit_rate_requirements = __builtin__.property(_get_max_bit_rate_requirements, _set_max_bit_rate_requirements)

11184 min_bit_rate_requirements = __builtin__.property(_get_min_bit_rate_requirements, _set_min_bit_rate_requirements)

11185 virtual_link_protocol_data = __builtin__.property(_get_virtual_link_protocol_data, _set_virtual_link_protocol_data)

11186

11187

11188 _pyangbind_elements = OrderedDict([('id', id), ('flavour', flavour), ('local_affinity_or_anti_affinity_rule', local_affinity_or_anti_affinity_rule), ('affinity_or_anti_affinity_group', affinity_or_anti_affinity_group), ('max_bit_rate_requirements', max_bit_rate_requirements), ('min_bit_rate_requirements', min_bit_rate_requirements), ('virtual_link_protocol_data', virtual_link_protocol_data), ])

11189

11190

11191 class yc_vdu_level_etsi_nfv_nsd__nsd_vnfd_df_instantiation_level_vdu_level(PybindBase):

11192 """

11193 This class was auto-generated by the PythonClass plugin for PYANG

11194 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/instantiation-level/vdu-level. Each member element of

11195 the container is represented as a class variable - with a specific

11196 YANG type.

11197

11198 YANG Description: Sets the number of instances for the VDU in this

11199 instantiation level.

11200 """

11201 __slots__ = ('_path_helper', '_extmethods', '__vdu_id','__number_of_instances',)

11202

11203 _yang_name = 'vdu-level'

11204 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

11205

11206 _pybind_generated_by = 'container'

11207

11208 def __init__(self, *args, **kwargs):

11209

11210 self._path_helper = False

11211

11212 self._extmethods = False

11213 self.__vdu_id = YANGDynClass(base=str, is_leaf=True, yang_name="vdu-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

11214 self.__number_of_instances = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

11215

11216 load = kwargs.pop("load", None)

11217 if args:

11218 if len(args) > 1:

11219 raise TypeError("cannot create a YANG container with >1 argument")

11220 all_attr = True

11221 for e in self._pyangbind_elements:

11222 if not hasattr(args[0], e):

11223 all_attr = False

11224 break

11225 if not all_attr:

11226 raise ValueError("Supplied object did not have the correct attributes")

11227 for e in self._pyangbind_elements:

11228 nobj = getattr(args[0], e)

11229 if nobj._changed() is False:

11230 continue

11231 setmethod = getattr(self, "_set_%s" % e)

11232 if load is None:

11233 setmethod(getattr(args[0], e))

11234 else:

11235 setmethod(getattr(args[0], e), load=load)

11236

11237 def _path(self):

11238 if hasattr(self, "_parent"):

11239 return self._parent._path()+[self._yang_name]

11240 else:

11241 return ['nsd', 'vnfd', 'df', 'instantiation-level', 'vdu-level']

11242

11243 def _get_vdu_id(self):

11244 """

11245 Getter method for vdu_id, mapped from YANG variable /nsd/vnfd/df/instantiation_level/vdu_level/vdu_id (leafref)

11246

11247 YANG Description: Uniquely identifies a VDU.

11248 """

11249 return self.__vdu_id

11250

11251 def _set_vdu_id(self, v, load=False):

11252 """

11253 Setter method for vdu_id, mapped from YANG variable /nsd/vnfd/df/instantiation_level/vdu_level/vdu_id (leafref)

11254 If this variable is read-only (config: false) in the

11255 source YANG file, then _set_vdu_id is considered as a private

11256 method. Backends looking to populate this variable should

11257 do so via calling thisObj._set_vdu_id() directly.

11258

11259 YANG Description: Uniquely identifies a VDU.

11260 """

11261 parent = getattr(self, "_parent", None)

11262 if parent is not None and load is False:

11263 raise AttributeError("Cannot set keys directly when" +

11264 " within an instantiated list")

11265

11266 if hasattr(v, "_utype"):

11267 v = v._utype(v)

11268 try:

11269 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="vdu-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

11270 except (TypeError, ValueError):

11271 raise ValueError({

11272 'error-string': """vdu_id must be of a type compatible with leafref""",

11273 'defined-type': "leafref",

11274 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="vdu-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

11275 })

11276

11277 self.__vdu_id = t

11278 if hasattr(self, '_set'):

11279 self._set()

11280

11281 def _unset_vdu_id(self):

11282 self.__vdu_id = YANGDynClass(base=str, is_leaf=True, yang_name="vdu-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

11283

11284

11285 def _get_number_of_instances(self):

11286 """

11287 Getter method for number_of_instances, mapped from YANG variable /nsd/vnfd/df/instantiation_level/vdu_level/number_of_instances (uint16)

11288

11289 YANG Description: Number of instances of VNFC based on this VDU to

11290 deploy for this level.

11291 """

11292 return self.__number_of_instances

11293

11294 def _set_number_of_instances(self, v, load=False):

11295 """

11296 Setter method for number_of_instances, mapped from YANG variable /nsd/vnfd/df/instantiation_level/vdu_level/number_of_instances (uint16)

11297 If this variable is read-only (config: false) in the

11298 source YANG file, then _set_number_of_instances is considered as a private

11299 method. Backends looking to populate this variable should

11300 do so via calling thisObj._set_number_of_instances() directly.

11301

11302 YANG Description: Number of instances of VNFC based on this VDU to

11303 deploy for this level.

11304 """

11305 if hasattr(v, "_utype"):

11306 v = v._utype(v)

11307 try:

11308 t = YANGDynClass(v,base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

11309 except (TypeError, ValueError):

11310 raise ValueError({

11311 'error-string': """number_of_instances must be of a type compatible with uint16""",

11312 'defined-type': "uint16",

11313 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)""",

11314 })

11315

11316 self.__number_of_instances = t

11317 if hasattr(self, '_set'):

11318 self._set()

11319

11320 def _unset_number_of_instances(self):

11321 self.__number_of_instances = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

11322

11323 vdu_id = __builtin__.property(_get_vdu_id, _set_vdu_id)

11324 number_of_instances = __builtin__.property(_get_number_of_instances, _set_number_of_instances)

11325

11326

11327 _pyangbind_elements = OrderedDict([('vdu_id', vdu_id), ('number_of_instances', number_of_instances), ])

11328

11329

11330 class yc_scaling_info_etsi_nfv_nsd__nsd_vnfd_df_instantiation_level_scaling_info(PybindBase):

11331 """

11332 This class was auto-generated by the PythonClass plugin for PYANG

11333 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/instantiation-level/scaling-info. Each member element of

11334 the container is represented as a class variable - with a specific

11335 YANG type.

11336

11337 YANG Description: The InstantiationLevel information element describes a

11338 given level of resources to be instantiated within a

11339 DF in term of the number of VNFC instances to be

11340 created from each VDU.

11341 """

11342 __slots__ = ('_path_helper', '_extmethods', '__scaling_aspect_id','__scale_level',)

11343

11344 _yang_name = 'scaling-info'

11345 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

11346

11347 _pybind_generated_by = 'container'

11348

11349 def __init__(self, *args, **kwargs):

11350

11351 self._path_helper = False

11352

11353 self._extmethods = False

11354 self.__scaling_aspect_id = YANGDynClass(base=str, is_leaf=True, yang_name="scaling-aspect-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

11355 self.__scale_level = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="scale-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

11356

11357 load = kwargs.pop("load", None)

11358 if args:

11359 if len(args) > 1:

11360 raise TypeError("cannot create a YANG container with >1 argument")

11361 all_attr = True

11362 for e in self._pyangbind_elements:

11363 if not hasattr(args[0], e):

11364 all_attr = False

11365 break

11366 if not all_attr:

11367 raise ValueError("Supplied object did not have the correct attributes")

11368 for e in self._pyangbind_elements:

11369 nobj = getattr(args[0], e)

11370 if nobj._changed() is False:

11371 continue

11372 setmethod = getattr(self, "_set_%s" % e)

11373 if load is None:

11374 setmethod(getattr(args[0], e))

11375 else:

11376 setmethod(getattr(args[0], e), load=load)

11377

11378 def _path(self):

11379 if hasattr(self, "_parent"):

11380 return self._parent._path()+[self._yang_name]

11381 else:

11382 return ['nsd', 'vnfd', 'df', 'instantiation-level', 'scaling-info']

11383

11384 def _get_scaling_aspect_id(self):

11385 """

11386 Getter method for scaling_aspect_id, mapped from YANG variable /nsd/vnfd/df/instantiation_level/scaling_info/scaling_aspect_id (leafref)

11387

11388 YANG Description: Identifier of the scaling aspect.

11389 """

11390 return self.__scaling_aspect_id

11391

11392 def _set_scaling_aspect_id(self, v, load=False):

11393 """

11394 Setter method for scaling_aspect_id, mapped from YANG variable /nsd/vnfd/df/instantiation_level/scaling_info/scaling_aspect_id (leafref)

11395 If this variable is read-only (config: false) in the

11396 source YANG file, then _set_scaling_aspect_id is considered as a private

11397 method. Backends looking to populate this variable should

11398 do so via calling thisObj._set_scaling_aspect_id() directly.

11399

11400 YANG Description: Identifier of the scaling aspect.

11401 """

11402 parent = getattr(self, "_parent", None)

11403 if parent is not None and load is False:

11404 raise AttributeError("Cannot set keys directly when" +

11405 " within an instantiated list")

11406

11407 if hasattr(v, "_utype"):

11408 v = v._utype(v)

11409 try:

11410 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="scaling-aspect-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

11411 except (TypeError, ValueError):

11412 raise ValueError({

11413 'error-string': """scaling_aspect_id must be of a type compatible with leafref""",

11414 'defined-type': "leafref",

11415 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="scaling-aspect-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

11416 })

11417

11418 self.__scaling_aspect_id = t

11419 if hasattr(self, '_set'):

11420 self._set()

11421

11422 def _unset_scaling_aspect_id(self):

11423 self.__scaling_aspect_id = YANGDynClass(base=str, is_leaf=True, yang_name="scaling-aspect-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

11424

11425

11426 def _get_scale_level(self):

11427 """

11428 Getter method for scale_level, mapped from YANG variable /nsd/vnfd/df/instantiation_level/scaling_info/scale_level (uint32)

11429

11430 YANG Description: The scale level, greater than or equal to 0.

11431 """

11432 return self.__scale_level

11433

11434 def _set_scale_level(self, v, load=False):

11435 """

11436 Setter method for scale_level, mapped from YANG variable /nsd/vnfd/df/instantiation_level/scaling_info/scale_level (uint32)

11437 If this variable is read-only (config: false) in the

11438 source YANG file, then _set_scale_level is considered as a private

11439 method. Backends looking to populate this variable should

11440 do so via calling thisObj._set_scale_level() directly.

11441

11442 YANG Description: The scale level, greater than or equal to 0.

11443 """

11444 if hasattr(v, "_utype"):

11445 v = v._utype(v)

11446 try:

11447 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="scale-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

11448 except (TypeError, ValueError):

11449 raise ValueError({

11450 'error-string': """scale_level must be of a type compatible with uint32""",

11451 'defined-type': "uint32",

11452 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="scale-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)""",

11453 })

11454

11455 self.__scale_level = t

11456 if hasattr(self, '_set'):

11457 self._set()

11458

11459 def _unset_scale_level(self):

11460 self.__scale_level = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="scale-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

11461

11462 scaling_aspect_id = __builtin__.property(_get_scaling_aspect_id, _set_scaling_aspect_id)

11463 scale_level = __builtin__.property(_get_scale_level, _set_scale_level)

11464

11465

11466 _pyangbind_elements = OrderedDict([('scaling_aspect_id', scaling_aspect_id), ('scale_level', scale_level), ])

11467

11468

11469 class yc_instantiation_level_etsi_nfv_nsd__nsd_vnfd_df_instantiation_level(PybindBase):

11470 """

11471 This class was auto-generated by the PythonClass plugin for PYANG

11472 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/instantiation-level. Each member element of

11473 the container is represented as a class variable - with a specific

11474 YANG type.

11475

11476 YANG Description: Describes the various levels of resources that can be

11477 used to instantiate the VNF using this flavour.

11478 Examples: Small, Medium, Large. If there is only one

11479'instantiationLevel' entry, it shall be treated as the

11480 default instantiation level for this DF.

11481

11482 The InstantiationLevel information element describes a

11483 given level of resources to be instantiated within a

11484 deployment flavour in term of the number of VNFC instances

11485 to be created from each VDU.

11486 All the VDUs referenced in the level shall be part of the

11487 corresponding deployment flavour and their number shall

11488 be within the range (min/max) for this deployment flavour.

11489 """

11490 __slots__ = ('_path_helper', '_extmethods', '__id','__description','__vdu_level','__scaling_info',)

11491

11492 _yang_name = 'instantiation-level'

11493 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

11494

11495 _pybind_generated_by = 'container'

11496

11497 def __init__(self, *args, **kwargs):

11498

11499 self._path_helper = False

11500

11501 self._extmethods = False

11502 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

11503 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

11504 self.__vdu_level = YANGDynClass(base=YANGListType("vdu_id",yc_vdu_level_etsi_nfv_nsd__nsd_vnfd_df_instantiation_level_vdu_level, yang_name="vdu-level", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='vdu-id', extensions=None), is_container='list', yang_name="vdu-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

11505 self.__scaling_info = YANGDynClass(base=YANGListType("scaling_aspect_id",yc_scaling_info_etsi_nfv_nsd__nsd_vnfd_df_instantiation_level_scaling_info, yang_name="scaling-info", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='scaling-aspect-id', extensions=None), is_container='list', yang_name="scaling-info", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

11506

11507 load = kwargs.pop("load", None)

11508 if args:

11509 if len(args) > 1:

11510 raise TypeError("cannot create a YANG container with >1 argument")

11511 all_attr = True

11512 for e in self._pyangbind_elements:

11513 if not hasattr(args[0], e):

11514 all_attr = False

11515 break

11516 if not all_attr:

11517 raise ValueError("Supplied object did not have the correct attributes")

11518 for e in self._pyangbind_elements:

11519 nobj = getattr(args[0], e)

11520 if nobj._changed() is False:

11521 continue

11522 setmethod = getattr(self, "_set_%s" % e)

11523 if load is None:

11524 setmethod(getattr(args[0], e))

11525 else:

11526 setmethod(getattr(args[0], e), load=load)

11527

11528 def _path(self):

11529 if hasattr(self, "_parent"):

11530 return self._parent._path()+[self._yang_name]

11531 else:

11532 return ['nsd', 'vnfd', 'df', 'instantiation-level']

11533

11534 def _get_id(self):

11535 """

11536 Getter method for id, mapped from YANG variable /nsd/vnfd/df/instantiation_level/id (string)

11537

11538 YANG Description: Uniquely identifies a level with the DF.

11539 """

11540 return self.__id

11541

11542 def _set_id(self, v, load=False):

11543 """

11544 Setter method for id, mapped from YANG variable /nsd/vnfd/df/instantiation_level/id (string)

11545 If this variable is read-only (config: false) in the

11546 source YANG file, then _set_id is considered as a private

11547 method. Backends looking to populate this variable should

11548 do so via calling thisObj._set_id() directly.

11549

11550 YANG Description: Uniquely identifies a level with the DF.

11551 """

11552 parent = getattr(self, "_parent", None)

11553 if parent is not None and load is False:

11554 raise AttributeError("Cannot set keys directly when" +

11555 " within an instantiated list")

11556

11557 if hasattr(v, "_utype"):

11558 v = v._utype(v)

11559 try:

11560 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

11561 except (TypeError, ValueError):

11562 raise ValueError({

11563 'error-string': """id must be of a type compatible with string""",

11564 'defined-type': "string",

11565 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

11566 })

11567

11568 self.__id = t

11569 if hasattr(self, '_set'):

11570 self._set()

11571

11572 def _unset_id(self):

11573 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

11574

11575

11576 def _get_description(self):

11577 """

11578 Getter method for description, mapped from YANG variable /nsd/vnfd/df/instantiation_level/description (string)

11579

11580 YANG Description: Human readable description of the instantiation level

11581 """

11582 return self.__description

11583

11584 def _set_description(self, v, load=False):

11585 """

11586 Setter method for description, mapped from YANG variable /nsd/vnfd/df/instantiation_level/description (string)

11587 If this variable is read-only (config: false) in the

11588 source YANG file, then _set_description is considered as a private

11589 method. Backends looking to populate this variable should

11590 do so via calling thisObj._set_description() directly.

11591

11592 YANG Description: Human readable description of the instantiation level

11593 """

11594 if hasattr(v, "_utype"):

11595 v = v._utype(v)

11596 try:

11597 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

11598 except (TypeError, ValueError):

11599 raise ValueError({

11600 'error-string': """description must be of a type compatible with string""",

11601 'defined-type': "string",

11602 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

11603 })

11604

11605 self.__description = t

11606 if hasattr(self, '_set'):

11607 self._set()

11608

11609 def _unset_description(self):

11610 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

11611

11612

11613 def _get_vdu_level(self):

11614 """

11615 Getter method for vdu_level, mapped from YANG variable /nsd/vnfd/df/instantiation_level/vdu_level (list)

11616

11617 YANG Description: Sets the number of instances for the VDU in this

11618 instantiation level.

11619 """

11620 return self.__vdu_level

11621

11622 def _set_vdu_level(self, v, load=False):

11623 """

11624 Setter method for vdu_level, mapped from YANG variable /nsd/vnfd/df/instantiation_level/vdu_level (list)

11625 If this variable is read-only (config: false) in the

11626 source YANG file, then _set_vdu_level is considered as a private

11627 method. Backends looking to populate this variable should

11628 do so via calling thisObj._set_vdu_level() directly.

11629

11630 YANG Description: Sets the number of instances for the VDU in this

11631 instantiation level.

11632 """

11633 if hasattr(v, "_utype"):

11634 v = v._utype(v)

11635 try:

11636 t = YANGDynClass(v,base=YANGListType("vdu_id",yc_vdu_level_etsi_nfv_nsd__nsd_vnfd_df_instantiation_level_vdu_level, yang_name="vdu-level", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='vdu-id', extensions=None), is_container='list', yang_name="vdu-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

11637 except (TypeError, ValueError):

11638 raise ValueError({

11639 'error-string': """vdu_level must be of a type compatible with list""",

11640 'defined-type': "list",

11641 'generated-type': """YANGDynClass(base=YANGListType("vdu_id",yc_vdu_level_etsi_nfv_nsd__nsd_vnfd_df_instantiation_level_vdu_level, yang_name="vdu-level", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='vdu-id', extensions=None), is_container='list', yang_name="vdu-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

11642 })

11643

11644 self.__vdu_level = t

11645 if hasattr(self, '_set'):

11646 self._set()

11647

11648 def _unset_vdu_level(self):

11649 self.__vdu_level = YANGDynClass(base=YANGListType("vdu_id",yc_vdu_level_etsi_nfv_nsd__nsd_vnfd_df_instantiation_level_vdu_level, yang_name="vdu-level", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='vdu-id', extensions=None), is_container='list', yang_name="vdu-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

11650

11651

11652 def _get_scaling_info(self):

11653 """

11654 Getter method for scaling_info, mapped from YANG variable /nsd/vnfd/df/instantiation_level/scaling_info (list)

11655

11656 YANG Description: The InstantiationLevel information element describes a

11657 given level of resources to be instantiated within a

11658 DF in term of the number of VNFC instances to be

11659 created from each VDU.

11660 """

11661 return self.__scaling_info

11662

11663 def _set_scaling_info(self, v, load=False):

11664 """

11665 Setter method for scaling_info, mapped from YANG variable /nsd/vnfd/df/instantiation_level/scaling_info (list)

11666 If this variable is read-only (config: false) in the

11667 source YANG file, then _set_scaling_info is considered as a private

11668 method. Backends looking to populate this variable should

11669 do so via calling thisObj._set_scaling_info() directly.

11670

11671 YANG Description: The InstantiationLevel information element describes a

11672 given level of resources to be instantiated within a

11673 DF in term of the number of VNFC instances to be

11674 created from each VDU.

11675 """

11676 if hasattr(v, "_utype"):

11677 v = v._utype(v)

11678 try:

11679 t = YANGDynClass(v,base=YANGListType("scaling_aspect_id",yc_scaling_info_etsi_nfv_nsd__nsd_vnfd_df_instantiation_level_scaling_info, yang_name="scaling-info", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='scaling-aspect-id', extensions=None), is_container='list', yang_name="scaling-info", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

11680 except (TypeError, ValueError):

11681 raise ValueError({

11682 'error-string': """scaling_info must be of a type compatible with list""",

11683 'defined-type': "list",

11684 'generated-type': """YANGDynClass(base=YANGListType("scaling_aspect_id",yc_scaling_info_etsi_nfv_nsd__nsd_vnfd_df_instantiation_level_scaling_info, yang_name="scaling-info", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='scaling-aspect-id', extensions=None), is_container='list', yang_name="scaling-info", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

11685 })

11686

11687 self.__scaling_info = t

11688 if hasattr(self, '_set'):

11689 self._set()

11690

11691 def _unset_scaling_info(self):

11692 self.__scaling_info = YANGDynClass(base=YANGListType("scaling_aspect_id",yc_scaling_info_etsi_nfv_nsd__nsd_vnfd_df_instantiation_level_scaling_info, yang_name="scaling-info", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='scaling-aspect-id', extensions=None), is_container='list', yang_name="scaling-info", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

11693

11694 id = __builtin__.property(_get_id, _set_id)

11695 description = __builtin__.property(_get_description, _set_description)

11696 vdu_level = __builtin__.property(_get_vdu_level, _set_vdu_level)

11697 scaling_info = __builtin__.property(_get_scaling_info, _set_scaling_info)

11698

11699

11700 _pyangbind_elements = OrderedDict([('id', id), ('description', description), ('vdu_level', vdu_level), ('scaling_info', scaling_info), ])

11701

11702

11703 class yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_instantiate_vnf_op_config_parameter(PybindBase):

11704 """

11705 This class was auto-generated by the PythonClass plugin for PYANG

11706 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/lcm-operations-configuration/instantiate-vnf-op-config/parameter. Each member element of

11707 the container is represented as a class variable - with a specific

11708 YANG type.

11709

11710 YANG Description: Array of KVP requirements for VNF-specific parameters

11711 to be passed when invoking the InstantiateVnf

11712 operation.

11713 """

11714 __slots__ = ('_path_helper', '_extmethods', '__key','__value',)

11715

11716 _yang_name = 'parameter'

11717 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

11718

11719 _pybind_generated_by = 'container'

11720

11721 def __init__(self, *args, **kwargs):

11722

11723 self._path_helper = False

11724

11725 self._extmethods = False

11726 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

11727 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

11728

11729 load = kwargs.pop("load", None)

11730 if args:

11731 if len(args) > 1:

11732 raise TypeError("cannot create a YANG container with >1 argument")

11733 all_attr = True

11734 for e in self._pyangbind_elements:

11735 if not hasattr(args[0], e):

11736 all_attr = False

11737 break

11738 if not all_attr:

11739 raise ValueError("Supplied object did not have the correct attributes")

11740 for e in self._pyangbind_elements:

11741 nobj = getattr(args[0], e)

11742 if nobj._changed() is False:

11743 continue

11744 setmethod = getattr(self, "_set_%s" % e)

11745 if load is None:

11746 setmethod(getattr(args[0], e))

11747 else:

11748 setmethod(getattr(args[0], e), load=load)

11749

11750 def _path(self):

11751 if hasattr(self, "_parent"):

11752 return self._parent._path()+[self._yang_name]

11753 else:

11754 return ['nsd', 'vnfd', 'df', 'lcm-operations-configuration', 'instantiate-vnf-op-config', 'parameter']

11755

11756 def _get_key(self):

11757 """

11758 Getter method for key, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/instantiate_vnf_op_config/parameter/key (string)

11759 """

11760 return self.__key

11761

11762 def _set_key(self, v, load=False):

11763 """

11764 Setter method for key, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/instantiate_vnf_op_config/parameter/key (string)

11765 If this variable is read-only (config: false) in the

11766 source YANG file, then _set_key is considered as a private

11767 method. Backends looking to populate this variable should

11768 do so via calling thisObj._set_key() directly.

11769 """

11770 parent = getattr(self, "_parent", None)

11771 if parent is not None and load is False:

11772 raise AttributeError("Cannot set keys directly when" +

11773 " within an instantiated list")

11774

11775 if hasattr(v, "_utype"):

11776 v = v._utype(v)

11777 try:

11778 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

11779 except (TypeError, ValueError):

11780 raise ValueError({

11781 'error-string': """key must be of a type compatible with string""",

11782 'defined-type': "string",

11783 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

11784 })

11785

11786 self.__key = t

11787 if hasattr(self, '_set'):

11788 self._set()

11789

11790 def _unset_key(self):

11791 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

11792

11793

11794 def _get_value(self):

11795 """

11796 Getter method for value, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/instantiate_vnf_op_config/parameter/value (string)

11797 """

11798 return self.__value

11799

11800 def _set_value(self, v, load=False):

11801 """

11802 Setter method for value, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/instantiate_vnf_op_config/parameter/value (string)

11803 If this variable is read-only (config: false) in the

11804 source YANG file, then _set_value is considered as a private

11805 method. Backends looking to populate this variable should

11806 do so via calling thisObj._set_value() directly.

11807 """

11808 if hasattr(v, "_utype"):

11809 v = v._utype(v)

11810 try:

11811 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

11812 except (TypeError, ValueError):

11813 raise ValueError({

11814 'error-string': """value must be of a type compatible with string""",

11815 'defined-type': "string",

11816 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

11817 })

11818

11819 self.__value = t

11820 if hasattr(self, '_set'):

11821 self._set()

11822

11823 def _unset_value(self):

11824 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

11825

11826 key = __builtin__.property(_get_key, _set_key)

11827 value = __builtin__.property(_get_value, _set_value)

11828

11829

11830 _pyangbind_elements = OrderedDict([('key', key), ('value', value), ])

11831

11832

11833 class yc_instantiate_vnf_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_instantiate_vnf_op_config(PybindBase):

11834 """

11835 This class was auto-generated by the PythonClass plugin for PYANG

11836 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/lcm-operations-configuration/instantiate-vnf-op-config. Each member element of

11837 the container is represented as a class variable - with a specific

11838 YANG type.

11839

11840 YANG Description: Configuration parameters for the InstantiateVnf

11841 operation.

11842 """

11843 __slots__ = ('_path_helper', '_extmethods', '__parameter',)

11844

11845 _yang_name = 'instantiate-vnf-op-config'

11846 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

11847

11848 _pybind_generated_by = 'container'

11849

11850 def __init__(self, *args, **kwargs):

11851

11852 self._path_helper = False

11853

11854 self._extmethods = False

11855 self.__parameter = YANGDynClass(base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_instantiate_vnf_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

11856

11857 load = kwargs.pop("load", None)

11858 if args:

11859 if len(args) > 1:

11860 raise TypeError("cannot create a YANG container with >1 argument")

11861 all_attr = True

11862 for e in self._pyangbind_elements:

11863 if not hasattr(args[0], e):

11864 all_attr = False

11865 break

11866 if not all_attr:

11867 raise ValueError("Supplied object did not have the correct attributes")

11868 for e in self._pyangbind_elements:

11869 nobj = getattr(args[0], e)

11870 if nobj._changed() is False:

11871 continue

11872 setmethod = getattr(self, "_set_%s" % e)

11873 if load is None:

11874 setmethod(getattr(args[0], e))

11875 else:

11876 setmethod(getattr(args[0], e), load=load)

11877

11878 def _path(self):

11879 if hasattr(self, "_parent"):

11880 return self._parent._path()+[self._yang_name]

11881 else:

11882 return ['nsd', 'vnfd', 'df', 'lcm-operations-configuration', 'instantiate-vnf-op-config']

11883

11884 def _get_parameter(self):

11885 """

11886 Getter method for parameter, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/instantiate_vnf_op_config/parameter (list)

11887

11888 YANG Description: Array of KVP requirements for VNF-specific parameters

11889 to be passed when invoking the InstantiateVnf

11890 operation.

11891 """

11892 return self.__parameter

11893

11894 def _set_parameter(self, v, load=False):

11895 """

11896 Setter method for parameter, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/instantiate_vnf_op_config/parameter (list)

11897 If this variable is read-only (config: false) in the

11898 source YANG file, then _set_parameter is considered as a private

11899 method. Backends looking to populate this variable should

11900 do so via calling thisObj._set_parameter() directly.

11901

11902 YANG Description: Array of KVP requirements for VNF-specific parameters

11903 to be passed when invoking the InstantiateVnf

11904 operation.

11905 """

11906 if hasattr(v, "_utype"):

11907 v = v._utype(v)

11908 try:

11909 t = YANGDynClass(v,base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_instantiate_vnf_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

11910 except (TypeError, ValueError):

11911 raise ValueError({

11912 'error-string': """parameter must be of a type compatible with list""",

11913 'defined-type': "list",

11914 'generated-type': """YANGDynClass(base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_instantiate_vnf_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

11915 })

11916

11917 self.__parameter = t

11918 if hasattr(self, '_set'):

11919 self._set()

11920

11921 def _unset_parameter(self):

11922 self.__parameter = YANGDynClass(base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_instantiate_vnf_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

11923

11924 parameter = __builtin__.property(_get_parameter, _set_parameter)

11925

11926

11927 _pyangbind_elements = OrderedDict([('parameter', parameter), ])

11928

11929

11930 class yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_scale_vnf_op_config_parameter(PybindBase):

11931 """

11932 This class was auto-generated by the PythonClass plugin for PYANG

11933 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/lcm-operations-configuration/scale-vnf-op-config/parameter. Each member element of

11934 the container is represented as a class variable - with a specific

11935 YANG type.

11936

11937 YANG Description: Array of KVP requirements for VNFspecific parameters

11938 to be passed when invoking the ScaleVnf operation.

11939 """

11940 __slots__ = ('_path_helper', '_extmethods', '__key','__value',)

11941

11942 _yang_name = 'parameter'

11943 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

11944

11945 _pybind_generated_by = 'container'

11946

11947 def __init__(self, *args, **kwargs):

11948

11949 self._path_helper = False

11950

11951 self._extmethods = False

11952 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

11953 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

11954

11955 load = kwargs.pop("load", None)

11956 if args:

11957 if len(args) > 1:

11958 raise TypeError("cannot create a YANG container with >1 argument")

11959 all_attr = True

11960 for e in self._pyangbind_elements:

11961 if not hasattr(args[0], e):

11962 all_attr = False

11963 break

11964 if not all_attr:

11965 raise ValueError("Supplied object did not have the correct attributes")

11966 for e in self._pyangbind_elements:

11967 nobj = getattr(args[0], e)

11968 if nobj._changed() is False:

11969 continue

11970 setmethod = getattr(self, "_set_%s" % e)

11971 if load is None:

11972 setmethod(getattr(args[0], e))

11973 else:

11974 setmethod(getattr(args[0], e), load=load)

11975

11976 def _path(self):

11977 if hasattr(self, "_parent"):

11978 return self._parent._path()+[self._yang_name]

11979 else:

11980 return ['nsd', 'vnfd', 'df', 'lcm-operations-configuration', 'scale-vnf-op-config', 'parameter']

11981

11982 def _get_key(self):

11983 """

11984 Getter method for key, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/scale_vnf_op_config/parameter/key (string)

11985 """

11986 return self.__key

11987

11988 def _set_key(self, v, load=False):

11989 """

11990 Setter method for key, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/scale_vnf_op_config/parameter/key (string)

11991 If this variable is read-only (config: false) in the

11992 source YANG file, then _set_key is considered as a private

11993 method. Backends looking to populate this variable should

11994 do so via calling thisObj._set_key() directly.

11995 """

11996 parent = getattr(self, "_parent", None)

11997 if parent is not None and load is False:

11998 raise AttributeError("Cannot set keys directly when" +

11999 " within an instantiated list")

12000

12001 if hasattr(v, "_utype"):

12002 v = v._utype(v)

12003 try:

12004 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

12005 except (TypeError, ValueError):

12006 raise ValueError({

12007 'error-string': """key must be of a type compatible with string""",

12008 'defined-type': "string",

12009 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

12010 })

12011

12012 self.__key = t

12013 if hasattr(self, '_set'):

12014 self._set()

12015

12016 def _unset_key(self):

12017 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

12018

12019

12020 def _get_value(self):

12021 """

12022 Getter method for value, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/scale_vnf_op_config/parameter/value (string)

12023 """

12024 return self.__value

12025

12026 def _set_value(self, v, load=False):

12027 """

12028 Setter method for value, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/scale_vnf_op_config/parameter/value (string)

12029 If this variable is read-only (config: false) in the

12030 source YANG file, then _set_value is considered as a private

12031 method. Backends looking to populate this variable should

12032 do so via calling thisObj._set_value() directly.

12033 """

12034 if hasattr(v, "_utype"):

12035 v = v._utype(v)

12036 try:

12037 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

12038 except (TypeError, ValueError):

12039 raise ValueError({

12040 'error-string': """value must be of a type compatible with string""",

12041 'defined-type': "string",

12042 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

12043 })

12044

12045 self.__value = t

12046 if hasattr(self, '_set'):

12047 self._set()

12048

12049 def _unset_value(self):

12050 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

12051

12052 key = __builtin__.property(_get_key, _set_key)

12053 value = __builtin__.property(_get_value, _set_value)

12054

12055

12056 _pyangbind_elements = OrderedDict([('key', key), ('value', value), ])

12057

12058

12059 class yc_scale_vnf_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_scale_vnf_op_config(PybindBase):

12060 """

12061 This class was auto-generated by the PythonClass plugin for PYANG

12062 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/lcm-operations-configuration/scale-vnf-op-config. Each member element of

12063 the container is represented as a class variable - with a specific

12064 YANG type.

12065

12066 YANG Description: Configuration parameters for the ScaleVnf operation.

12067 """

12068 __slots__ = ('_path_helper', '_extmethods', '__parameter','__scaling_by_more_than_one_step_supported',)

12069

12070 _yang_name = 'scale-vnf-op-config'

12071 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

12072

12073 _pybind_generated_by = 'container'

12074

12075 def __init__(self, *args, **kwargs):

12076

12077 self._path_helper = False

12078

12079 self._extmethods = False

12080 self.__parameter = YANGDynClass(base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_scale_vnf_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

12081 self.__scaling_by_more_than_one_step_supported = YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="scaling-by-more-than-one-step-supported", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

12082

12083 load = kwargs.pop("load", None)

12084 if args:

12085 if len(args) > 1:

12086 raise TypeError("cannot create a YANG container with >1 argument")

12087 all_attr = True

12088 for e in self._pyangbind_elements:

12089 if not hasattr(args[0], e):

12090 all_attr = False

12091 break

12092 if not all_attr:

12093 raise ValueError("Supplied object did not have the correct attributes")

12094 for e in self._pyangbind_elements:

12095 nobj = getattr(args[0], e)

12096 if nobj._changed() is False:

12097 continue

12098 setmethod = getattr(self, "_set_%s" % e)

12099 if load is None:

12100 setmethod(getattr(args[0], e))

12101 else:

12102 setmethod(getattr(args[0], e), load=load)

12103

12104 def _path(self):

12105 if hasattr(self, "_parent"):

12106 return self._parent._path()+[self._yang_name]

12107 else:

12108 return ['nsd', 'vnfd', 'df', 'lcm-operations-configuration', 'scale-vnf-op-config']

12109

12110 def _get_parameter(self):

12111 """

12112 Getter method for parameter, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/scale_vnf_op_config/parameter (list)

12113

12114 YANG Description: Array of KVP requirements for VNFspecific parameters

12115 to be passed when invoking the ScaleVnf operation.

12116 """

12117 return self.__parameter

12118

12119 def _set_parameter(self, v, load=False):

12120 """

12121 Setter method for parameter, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/scale_vnf_op_config/parameter (list)

12122 If this variable is read-only (config: false) in the

12123 source YANG file, then _set_parameter is considered as a private

12124 method. Backends looking to populate this variable should

12125 do so via calling thisObj._set_parameter() directly.

12126

12127 YANG Description: Array of KVP requirements for VNFspecific parameters

12128 to be passed when invoking the ScaleVnf operation.

12129 """

12130 if hasattr(v, "_utype"):

12131 v = v._utype(v)

12132 try:

12133 t = YANGDynClass(v,base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_scale_vnf_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

12134 except (TypeError, ValueError):

12135 raise ValueError({

12136 'error-string': """parameter must be of a type compatible with list""",

12137 'defined-type': "list",

12138 'generated-type': """YANGDynClass(base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_scale_vnf_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

12139 })

12140

12141 self.__parameter = t

12142 if hasattr(self, '_set'):

12143 self._set()

12144

12145 def _unset_parameter(self):

12146 self.__parameter = YANGDynClass(base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_scale_vnf_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

12147

12148

12149 def _get_scaling_by_more_than_one_step_supported(self):

12150 """

12151 Getter method for scaling_by_more_than_one_step_supported, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/scale_vnf_op_config/scaling_by_more_than_one_step_supported (boolean)

12152

12153 YANG Description: Signals whether passing a value larger than one in

12154 the numScalingSteps parameter of the ScaleVnf

12155 operation is supported by this VNF.

12156 Default is FALSE, i.e. 'not supported'.

12157 """

12158 return self.__scaling_by_more_than_one_step_supported

12159

12160 def _set_scaling_by_more_than_one_step_supported(self, v, load=False):

12161 """

12162 Setter method for scaling_by_more_than_one_step_supported, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/scale_vnf_op_config/scaling_by_more_than_one_step_supported (boolean)

12163 If this variable is read-only (config: false) in the

12164 source YANG file, then _set_scaling_by_more_than_one_step_supported is considered as a private

12165 method. Backends looking to populate this variable should

12166 do so via calling thisObj._set_scaling_by_more_than_one_step_supported() directly.

12167

12168 YANG Description: Signals whether passing a value larger than one in

12169 the numScalingSteps parameter of the ScaleVnf

12170 operation is supported by this VNF.

12171 Default is FALSE, i.e. 'not supported'.

12172 """

12173 if hasattr(v, "_utype"):

12174 v = v._utype(v)

12175 try:

12176 t = YANGDynClass(v,base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="scaling-by-more-than-one-step-supported", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

12177 except (TypeError, ValueError):

12178 raise ValueError({

12179 'error-string': """scaling_by_more_than_one_step_supported must be of a type compatible with boolean""",

12180 'defined-type': "boolean",

12181 'generated-type': """YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="scaling-by-more-than-one-step-supported", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)""",

12182 })

12183

12184 self.__scaling_by_more_than_one_step_supported = t

12185 if hasattr(self, '_set'):

12186 self._set()

12187

12188 def _unset_scaling_by_more_than_one_step_supported(self):

12189 self.__scaling_by_more_than_one_step_supported = YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="scaling-by-more-than-one-step-supported", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

12190

12191 parameter = __builtin__.property(_get_parameter, _set_parameter)

12192 scaling_by_more_than_one_step_supported = __builtin__.property(_get_scaling_by_more_than_one_step_supported, _set_scaling_by_more_than_one_step_supported)

12193

12194

12195 _pyangbind_elements = OrderedDict([('parameter', parameter), ('scaling_by_more_than_one_step_supported', scaling_by_more_than_one_step_supported), ])

12196

12197

12198 class yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_scale_vnf_to_level_op_config_parameter(PybindBase):

12199 """

12200 This class was auto-generated by the PythonClass plugin for PYANG

12201 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/lcm-operations-configuration/scale-vnf-to-level-op-config/parameter. Each member element of

12202 the container is represented as a class variable - with a specific

12203 YANG type.

12204

12205 YANG Description: Array of KVP requirements for VNF-specific parameters

12206 to be passed when invoking the ScaleVnfToLevel

12207 operation.

12208 """

12209 __slots__ = ('_path_helper', '_extmethods', '__key','__value',)

12210

12211 _yang_name = 'parameter'

12212 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

12213

12214 _pybind_generated_by = 'container'

12215

12216 def __init__(self, *args, **kwargs):

12217

12218 self._path_helper = False

12219

12220 self._extmethods = False

12221 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

12222 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

12223

12224 load = kwargs.pop("load", None)

12225 if args:

12226 if len(args) > 1:

12227 raise TypeError("cannot create a YANG container with >1 argument")

12228 all_attr = True

12229 for e in self._pyangbind_elements:

12230 if not hasattr(args[0], e):

12231 all_attr = False

12232 break

12233 if not all_attr:

12234 raise ValueError("Supplied object did not have the correct attributes")

12235 for e in self._pyangbind_elements:

12236 nobj = getattr(args[0], e)

12237 if nobj._changed() is False:

12238 continue

12239 setmethod = getattr(self, "_set_%s" % e)

12240 if load is None:

12241 setmethod(getattr(args[0], e))

12242 else:

12243 setmethod(getattr(args[0], e), load=load)

12244

12245 def _path(self):

12246 if hasattr(self, "_parent"):

12247 return self._parent._path()+[self._yang_name]

12248 else:

12249 return ['nsd', 'vnfd', 'df', 'lcm-operations-configuration', 'scale-vnf-to-level-op-config', 'parameter']

12250

12251 def _get_key(self):

12252 """

12253 Getter method for key, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/scale_vnf_to_level_op_config/parameter/key (string)

12254 """

12255 return self.__key

12256

12257 def _set_key(self, v, load=False):

12258 """

12259 Setter method for key, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/scale_vnf_to_level_op_config/parameter/key (string)

12260 If this variable is read-only (config: false) in the

12261 source YANG file, then _set_key is considered as a private

12262 method. Backends looking to populate this variable should

12263 do so via calling thisObj._set_key() directly.

12264 """

12265 parent = getattr(self, "_parent", None)

12266 if parent is not None and load is False:

12267 raise AttributeError("Cannot set keys directly when" +

12268 " within an instantiated list")

12269

12270 if hasattr(v, "_utype"):

12271 v = v._utype(v)

12272 try:

12273 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

12274 except (TypeError, ValueError):

12275 raise ValueError({

12276 'error-string': """key must be of a type compatible with string""",

12277 'defined-type': "string",

12278 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

12279 })

12280

12281 self.__key = t

12282 if hasattr(self, '_set'):

12283 self._set()

12284

12285 def _unset_key(self):

12286 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

12287

12288

12289 def _get_value(self):

12290 """

12291 Getter method for value, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/scale_vnf_to_level_op_config/parameter/value (string)

12292 """

12293 return self.__value

12294

12295 def _set_value(self, v, load=False):

12296 """

12297 Setter method for value, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/scale_vnf_to_level_op_config/parameter/value (string)

12298 If this variable is read-only (config: false) in the

12299 source YANG file, then _set_value is considered as a private

12300 method. Backends looking to populate this variable should

12301 do so via calling thisObj._set_value() directly.

12302 """

12303 if hasattr(v, "_utype"):

12304 v = v._utype(v)

12305 try:

12306 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

12307 except (TypeError, ValueError):

12308 raise ValueError({

12309 'error-string': """value must be of a type compatible with string""",

12310 'defined-type': "string",

12311 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

12312 })

12313

12314 self.__value = t

12315 if hasattr(self, '_set'):

12316 self._set()

12317

12318 def _unset_value(self):

12319 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

12320

12321 key = __builtin__.property(_get_key, _set_key)

12322 value = __builtin__.property(_get_value, _set_value)

12323

12324

12325 _pyangbind_elements = OrderedDict([('key', key), ('value', value), ])

12326

12327

12328 class yc_scale_vnf_to_level_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_scale_vnf_to_level_op_config(PybindBase):

12329 """

12330 This class was auto-generated by the PythonClass plugin for PYANG

12331 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/lcm-operations-configuration/scale-vnf-to-level-op-config. Each member element of

12332 the container is represented as a class variable - with a specific

12333 YANG type.

12334

12335 YANG Description: This information element defines attributes that

12336 affect the invocation of the ScaleVnfToLevel

12337 operation.

12338 """

12339 __slots__ = ('_path_helper', '_extmethods', '__parameter','__arbitrary_target_levels_supported',)

12340

12341 _yang_name = 'scale-vnf-to-level-op-config'

12342 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

12343

12344 _pybind_generated_by = 'container'

12345

12346 def __init__(self, *args, **kwargs):

12347

12348 self._path_helper = False

12349

12350 self._extmethods = False

12351 self.__parameter = YANGDynClass(base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_scale_vnf_to_level_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

12352 self.__arbitrary_target_levels_supported = YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="arbitrary-target-levels-supported", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

12353

12354 load = kwargs.pop("load", None)

12355 if args:

12356 if len(args) > 1:

12357 raise TypeError("cannot create a YANG container with >1 argument")

12358 all_attr = True

12359 for e in self._pyangbind_elements:

12360 if not hasattr(args[0], e):

12361 all_attr = False

12362 break

12363 if not all_attr:

12364 raise ValueError("Supplied object did not have the correct attributes")

12365 for e in self._pyangbind_elements:

12366 nobj = getattr(args[0], e)

12367 if nobj._changed() is False:

12368 continue

12369 setmethod = getattr(self, "_set_%s" % e)

12370 if load is None:

12371 setmethod(getattr(args[0], e))

12372 else:

12373 setmethod(getattr(args[0], e), load=load)

12374

12375 def _path(self):

12376 if hasattr(self, "_parent"):

12377 return self._parent._path()+[self._yang_name]

12378 else:

12379 return ['nsd', 'vnfd', 'df', 'lcm-operations-configuration', 'scale-vnf-to-level-op-config']

12380

12381 def _get_parameter(self):

12382 """

12383 Getter method for parameter, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/scale_vnf_to_level_op_config/parameter (list)

12384

12385 YANG Description: Array of KVP requirements for VNF-specific parameters

12386 to be passed when invoking the ScaleVnfToLevel

12387 operation.

12388 """

12389 return self.__parameter

12390

12391 def _set_parameter(self, v, load=False):

12392 """

12393 Setter method for parameter, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/scale_vnf_to_level_op_config/parameter (list)

12394 If this variable is read-only (config: false) in the

12395 source YANG file, then _set_parameter is considered as a private

12396 method. Backends looking to populate this variable should

12397 do so via calling thisObj._set_parameter() directly.

12398

12399 YANG Description: Array of KVP requirements for VNF-specific parameters

12400 to be passed when invoking the ScaleVnfToLevel

12401 operation.

12402 """

12403 if hasattr(v, "_utype"):

12404 v = v._utype(v)

12405 try:

12406 t = YANGDynClass(v,base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_scale_vnf_to_level_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

12407 except (TypeError, ValueError):

12408 raise ValueError({

12409 'error-string': """parameter must be of a type compatible with list""",

12410 'defined-type': "list",

12411 'generated-type': """YANGDynClass(base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_scale_vnf_to_level_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

12412 })

12413

12414 self.__parameter = t

12415 if hasattr(self, '_set'):

12416 self._set()

12417

12418 def _unset_parameter(self):

12419 self.__parameter = YANGDynClass(base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_scale_vnf_to_level_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

12420

12421

12422 def _get_arbitrary_target_levels_supported(self):

12423 """

12424 Getter method for arbitrary_target_levels_supported, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/scale_vnf_to_level_op_config/arbitrary_target_levels_supported (boolean)

12425

12426 YANG Description: Signals whether scaling according to the parameter

12427'scaleInfo' is supported by this VNF.

12428 """

12429 return self.__arbitrary_target_levels_supported

12430

12431 def _set_arbitrary_target_levels_supported(self, v, load=False):

12432 """

12433 Setter method for arbitrary_target_levels_supported, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/scale_vnf_to_level_op_config/arbitrary_target_levels_supported (boolean)

12434 If this variable is read-only (config: false) in the

12435 source YANG file, then _set_arbitrary_target_levels_supported is considered as a private

12436 method. Backends looking to populate this variable should

12437 do so via calling thisObj._set_arbitrary_target_levels_supported() directly.

12438

12439 YANG Description: Signals whether scaling according to the parameter

12440'scaleInfo' is supported by this VNF.

12441 """

12442 if hasattr(v, "_utype"):

12443 v = v._utype(v)

12444 try:

12445 t = YANGDynClass(v,base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="arbitrary-target-levels-supported", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

12446 except (TypeError, ValueError):

12447 raise ValueError({

12448 'error-string': """arbitrary_target_levels_supported must be of a type compatible with boolean""",

12449 'defined-type': "boolean",

12450 'generated-type': """YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="arbitrary-target-levels-supported", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)""",

12451 })

12452

12453 self.__arbitrary_target_levels_supported = t

12454 if hasattr(self, '_set'):

12455 self._set()

12456

12457 def _unset_arbitrary_target_levels_supported(self):

12458 self.__arbitrary_target_levels_supported = YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="arbitrary-target-levels-supported", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

12459

12460 parameter = __builtin__.property(_get_parameter, _set_parameter)

12461 arbitrary_target_levels_supported = __builtin__.property(_get_arbitrary_target_levels_supported, _set_arbitrary_target_levels_supported)

12462

12463

12464 _pyangbind_elements = OrderedDict([('parameter', parameter), ('arbitrary_target_levels_supported', arbitrary_target_levels_supported), ])

12465

12466

12467 class yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_heal_vnf_op_config_parameter(PybindBase):

12468 """

12469 This class was auto-generated by the PythonClass plugin for PYANG

12470 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/lcm-operations-configuration/heal-vnf-op-config/parameter. Each member element of

12471 the container is represented as a class variable - with a specific

12472 YANG type.

12473

12474 YANG Description: Array of KVP requirements for VNF-specific parameters

12475 to be passed when invoking the HealVnf operation.

12476 """

12477 __slots__ = ('_path_helper', '_extmethods', '__key','__value',)

12478

12479 _yang_name = 'parameter'

12480 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

12481

12482 _pybind_generated_by = 'container'

12483

12484 def __init__(self, *args, **kwargs):

12485

12486 self._path_helper = False

12487

12488 self._extmethods = False

12489 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

12490 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

12491

12492 load = kwargs.pop("load", None)

12493 if args:

12494 if len(args) > 1:

12495 raise TypeError("cannot create a YANG container with >1 argument")

12496 all_attr = True

12497 for e in self._pyangbind_elements:

12498 if not hasattr(args[0], e):

12499 all_attr = False

12500 break

12501 if not all_attr:

12502 raise ValueError("Supplied object did not have the correct attributes")

12503 for e in self._pyangbind_elements:

12504 nobj = getattr(args[0], e)

12505 if nobj._changed() is False:

12506 continue

12507 setmethod = getattr(self, "_set_%s" % e)

12508 if load is None:

12509 setmethod(getattr(args[0], e))

12510 else:

12511 setmethod(getattr(args[0], e), load=load)

12512

12513 def _path(self):

12514 if hasattr(self, "_parent"):

12515 return self._parent._path()+[self._yang_name]

12516 else:

12517 return ['nsd', 'vnfd', 'df', 'lcm-operations-configuration', 'heal-vnf-op-config', 'parameter']

12518

12519 def _get_key(self):

12520 """

12521 Getter method for key, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/heal_vnf_op_config/parameter/key (string)

12522 """

12523 return self.__key

12524

12525 def _set_key(self, v, load=False):

12526 """

12527 Setter method for key, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/heal_vnf_op_config/parameter/key (string)

12528 If this variable is read-only (config: false) in the

12529 source YANG file, then _set_key is considered as a private

12530 method. Backends looking to populate this variable should

12531 do so via calling thisObj._set_key() directly.

12532 """

12533 parent = getattr(self, "_parent", None)

12534 if parent is not None and load is False:

12535 raise AttributeError("Cannot set keys directly when" +

12536 " within an instantiated list")

12537

12538 if hasattr(v, "_utype"):

12539 v = v._utype(v)

12540 try:

12541 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

12542 except (TypeError, ValueError):

12543 raise ValueError({

12544 'error-string': """key must be of a type compatible with string""",

12545 'defined-type': "string",

12546 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

12547 })

12548

12549 self.__key = t

12550 if hasattr(self, '_set'):

12551 self._set()

12552

12553 def _unset_key(self):

12554 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

12555

12556

12557 def _get_value(self):

12558 """

12559 Getter method for value, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/heal_vnf_op_config/parameter/value (string)

12560 """

12561 return self.__value

12562

12563 def _set_value(self, v, load=False):

12564 """

12565 Setter method for value, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/heal_vnf_op_config/parameter/value (string)

12566 If this variable is read-only (config: false) in the

12567 source YANG file, then _set_value is considered as a private

12568 method. Backends looking to populate this variable should

12569 do so via calling thisObj._set_value() directly.

12570 """

12571 if hasattr(v, "_utype"):

12572 v = v._utype(v)

12573 try:

12574 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

12575 except (TypeError, ValueError):

12576 raise ValueError({

12577 'error-string': """value must be of a type compatible with string""",

12578 'defined-type': "string",

12579 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

12580 })

12581

12582 self.__value = t

12583 if hasattr(self, '_set'):

12584 self._set()

12585

12586 def _unset_value(self):

12587 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

12588

12589 key = __builtin__.property(_get_key, _set_key)

12590 value = __builtin__.property(_get_value, _set_value)

12591

12592

12593 _pyangbind_elements = OrderedDict([('key', key), ('value', value), ])

12594

12595

12596 class yc_heal_vnf_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_heal_vnf_op_config(PybindBase):

12597 """

12598 This class was auto-generated by the PythonClass plugin for PYANG

12599 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/lcm-operations-configuration/heal-vnf-op-config. Each member element of

12600 the container is represented as a class variable - with a specific

12601 YANG type.

12602

12603 YANG Description: This information element defines attributes that

12604 affect the invocation of the HealVnf operation.

12605 """

12606 __slots__ = ('_path_helper', '_extmethods', '__parameter','__cause',)

12607

12608 _yang_name = 'heal-vnf-op-config'

12609 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

12610

12611 _pybind_generated_by = 'container'

12612

12613 def __init__(self, *args, **kwargs):

12614

12615 self._path_helper = False

12616

12617 self._extmethods = False

12618 self.__parameter = YANGDynClass(base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_heal_vnf_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

12619 self.__cause = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="cause", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

12620

12621 load = kwargs.pop("load", None)

12622 if args:

12623 if len(args) > 1:

12624 raise TypeError("cannot create a YANG container with >1 argument")

12625 all_attr = True

12626 for e in self._pyangbind_elements:

12627 if not hasattr(args[0], e):

12628 all_attr = False

12629 break

12630 if not all_attr:

12631 raise ValueError("Supplied object did not have the correct attributes")

12632 for e in self._pyangbind_elements:

12633 nobj = getattr(args[0], e)

12634 if nobj._changed() is False:

12635 continue

12636 setmethod = getattr(self, "_set_%s" % e)

12637 if load is None:

12638 setmethod(getattr(args[0], e))

12639 else:

12640 setmethod(getattr(args[0], e), load=load)

12641

12642 def _path(self):

12643 if hasattr(self, "_parent"):

12644 return self._parent._path()+[self._yang_name]

12645 else:

12646 return ['nsd', 'vnfd', 'df', 'lcm-operations-configuration', 'heal-vnf-op-config']

12647

12648 def _get_parameter(self):

12649 """

12650 Getter method for parameter, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/heal_vnf_op_config/parameter (list)

12651

12652 YANG Description: Array of KVP requirements for VNF-specific parameters

12653 to be passed when invoking the HealVnf operation.

12654 """

12655 return self.__parameter

12656

12657 def _set_parameter(self, v, load=False):

12658 """

12659 Setter method for parameter, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/heal_vnf_op_config/parameter (list)

12660 If this variable is read-only (config: false) in the

12661 source YANG file, then _set_parameter is considered as a private

12662 method. Backends looking to populate this variable should

12663 do so via calling thisObj._set_parameter() directly.

12664

12665 YANG Description: Array of KVP requirements for VNF-specific parameters

12666 to be passed when invoking the HealVnf operation.

12667 """

12668 if hasattr(v, "_utype"):

12669 v = v._utype(v)

12670 try:

12671 t = YANGDynClass(v,base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_heal_vnf_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

12672 except (TypeError, ValueError):

12673 raise ValueError({

12674 'error-string': """parameter must be of a type compatible with list""",

12675 'defined-type': "list",

12676 'generated-type': """YANGDynClass(base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_heal_vnf_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

12677 })

12678

12679 self.__parameter = t

12680 if hasattr(self, '_set'):

12681 self._set()

12682

12683 def _unset_parameter(self):

12684 self.__parameter = YANGDynClass(base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_heal_vnf_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

12685

12686

12687 def _get_cause(self):

12688 """

12689 Getter method for cause, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/heal_vnf_op_config/cause (string)

12690

12691 YANG Description: Supported 'cause' parameter values.

12692 """

12693 return self.__cause

12694

12695 def _set_cause(self, v, load=False):

12696 """

12697 Setter method for cause, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/heal_vnf_op_config/cause (string)

12698 If this variable is read-only (config: false) in the

12699 source YANG file, then _set_cause is considered as a private

12700 method. Backends looking to populate this variable should

12701 do so via calling thisObj._set_cause() directly.

12702

12703 YANG Description: Supported 'cause' parameter values.

12704 """

12705 if hasattr(v, "_utype"):

12706 v = v._utype(v)

12707 try:

12708 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="cause", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

12709 except (TypeError, ValueError):

12710 raise ValueError({

12711 'error-string': """cause must be of a type compatible with string""",

12712 'defined-type': "string",

12713 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="cause", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

12714 })

12715

12716 self.__cause = t

12717 if hasattr(self, '_set'):

12718 self._set()

12719

12720 def _unset_cause(self):

12721 self.__cause = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="cause", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

12722

12723 parameter = __builtin__.property(_get_parameter, _set_parameter)

12724 cause = __builtin__.property(_get_cause, _set_cause)

12725

12726

12727 _pyangbind_elements = OrderedDict([('parameter', parameter), ('cause', cause), ])

12728

12729

12730 class yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_terminate_vnf_op_config_parameter(PybindBase):

12731 """

12732 This class was auto-generated by the PythonClass plugin for PYANG

12733 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/lcm-operations-configuration/terminate-vnf-op-config/parameter. Each member element of

12734 the container is represented as a class variable - with a specific

12735 YANG type.

12736

12737 YANG Description: Array of KVP requirements for VNF-specific parameters

12738 to be passed when invoking the TerminateVnf

12739 operation.

12740 """

12741 __slots__ = ('_path_helper', '_extmethods', '__key','__value',)

12742

12743 _yang_name = 'parameter'

12744 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

12745

12746 _pybind_generated_by = 'container'

12747

12748 def __init__(self, *args, **kwargs):

12749

12750 self._path_helper = False

12751

12752 self._extmethods = False

12753 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

12754 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

12755

12756 load = kwargs.pop("load", None)

12757 if args:

12758 if len(args) > 1:

12759 raise TypeError("cannot create a YANG container with >1 argument")

12760 all_attr = True

12761 for e in self._pyangbind_elements:

12762 if not hasattr(args[0], e):

12763 all_attr = False

12764 break

12765 if not all_attr:

12766 raise ValueError("Supplied object did not have the correct attributes")

12767 for e in self._pyangbind_elements:

12768 nobj = getattr(args[0], e)

12769 if nobj._changed() is False:

12770 continue

12771 setmethod = getattr(self, "_set_%s" % e)

12772 if load is None:

12773 setmethod(getattr(args[0], e))

12774 else:

12775 setmethod(getattr(args[0], e), load=load)

12776

12777 def _path(self):

12778 if hasattr(self, "_parent"):

12779 return self._parent._path()+[self._yang_name]

12780 else:

12781 return ['nsd', 'vnfd', 'df', 'lcm-operations-configuration', 'terminate-vnf-op-config', 'parameter']

12782

12783 def _get_key(self):

12784 """

12785 Getter method for key, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/terminate_vnf_op_config/parameter/key (string)

12786 """

12787 return self.__key

12788

12789 def _set_key(self, v, load=False):

12790 """

12791 Setter method for key, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/terminate_vnf_op_config/parameter/key (string)

12792 If this variable is read-only (config: false) in the

12793 source YANG file, then _set_key is considered as a private

12794 method. Backends looking to populate this variable should

12795 do so via calling thisObj._set_key() directly.

12796 """

12797 parent = getattr(self, "_parent", None)

12798 if parent is not None and load is False:

12799 raise AttributeError("Cannot set keys directly when" +

12800 " within an instantiated list")

12801

12802 if hasattr(v, "_utype"):

12803 v = v._utype(v)

12804 try:

12805 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

12806 except (TypeError, ValueError):

12807 raise ValueError({

12808 'error-string': """key must be of a type compatible with string""",

12809 'defined-type': "string",

12810 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

12811 })

12812

12813 self.__key = t

12814 if hasattr(self, '_set'):

12815 self._set()

12816

12817 def _unset_key(self):

12818 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

12819

12820

12821 def _get_value(self):

12822 """

12823 Getter method for value, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/terminate_vnf_op_config/parameter/value (string)

12824 """

12825 return self.__value

12826

12827 def _set_value(self, v, load=False):

12828 """

12829 Setter method for value, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/terminate_vnf_op_config/parameter/value (string)

12830 If this variable is read-only (config: false) in the

12831 source YANG file, then _set_value is considered as a private

12832 method. Backends looking to populate this variable should

12833 do so via calling thisObj._set_value() directly.

12834 """

12835 if hasattr(v, "_utype"):

12836 v = v._utype(v)

12837 try:

12838 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

12839 except (TypeError, ValueError):

12840 raise ValueError({

12841 'error-string': """value must be of a type compatible with string""",

12842 'defined-type': "string",

12843 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

12844 })

12845

12846 self.__value = t

12847 if hasattr(self, '_set'):

12848 self._set()

12849

12850 def _unset_value(self):

12851 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

12852

12853 key = __builtin__.property(_get_key, _set_key)

12854 value = __builtin__.property(_get_value, _set_value)

12855

12856

12857 _pyangbind_elements = OrderedDict([('key', key), ('value', value), ])

12858

12859

12860 class yc_terminate_vnf_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_terminate_vnf_op_config(PybindBase):

12861 """

12862 This class was auto-generated by the PythonClass plugin for PYANG

12863 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/lcm-operations-configuration/terminate-vnf-op-config. Each member element of

12864 the container is represented as a class variable - with a specific

12865 YANG type.

12866

12867 YANG Description: This information element defines attributes that

12868 affect the invocation of the TerminateVnf operation.

12869 """

12870 __slots__ = ('_path_helper', '_extmethods', '__min_graceful_termination','__max_recommended_graceful_termination','__parameter',)

12871

12872 _yang_name = 'terminate-vnf-op-config'

12873 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

12874

12875 _pybind_generated_by = 'container'

12876

12877 def __init__(self, *args, **kwargs):

12878

12879 self._path_helper = False

12880

12881 self._extmethods = False

12882 self.__min_graceful_termination = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(1), is_leaf=True, yang_name="min-graceful-termination", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='yang:timeticks', is_config=True)

12883 self.__max_recommended_graceful_termination = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="max-recommended-graceful-termination", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='yang:timeticks', is_config=True)

12884 self.__parameter = YANGDynClass(base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_terminate_vnf_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

12885

12886 load = kwargs.pop("load", None)

12887 if args:

12888 if len(args) > 1:

12889 raise TypeError("cannot create a YANG container with >1 argument")

12890 all_attr = True

12891 for e in self._pyangbind_elements:

12892 if not hasattr(args[0], e):

12893 all_attr = False

12894 break

12895 if not all_attr:

12896 raise ValueError("Supplied object did not have the correct attributes")

12897 for e in self._pyangbind_elements:

12898 nobj = getattr(args[0], e)

12899 if nobj._changed() is False:

12900 continue

12901 setmethod = getattr(self, "_set_%s" % e)

12902 if load is None:

12903 setmethod(getattr(args[0], e))

12904 else:

12905 setmethod(getattr(args[0], e), load=load)

12906

12907 def _path(self):

12908 if hasattr(self, "_parent"):

12909 return self._parent._path()+[self._yang_name]

12910 else:

12911 return ['nsd', 'vnfd', 'df', 'lcm-operations-configuration', 'terminate-vnf-op-config']

12912

12913 def _get_min_graceful_termination(self):

12914 """

12915 Getter method for min_graceful_termination, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/terminate_vnf_op_config/min_graceful_termination (yang:timeticks)

12916

12917 YANG Description: Minimum timeout value for graceful termination of

12918 a VNF instance.

12919 """

12920 return self.__min_graceful_termination

12921

12922 def _set_min_graceful_termination(self, v, load=False):

12923 """

12924 Setter method for min_graceful_termination, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/terminate_vnf_op_config/min_graceful_termination (yang:timeticks)

12925 If this variable is read-only (config: false) in the

12926 source YANG file, then _set_min_graceful_termination is considered as a private

12927 method. Backends looking to populate this variable should

12928 do so via calling thisObj._set_min_graceful_termination() directly.

12929

12930 YANG Description: Minimum timeout value for graceful termination of

12931 a VNF instance.

12932 """

12933 if hasattr(v, "_utype"):

12934 v = v._utype(v)

12935 try:

12936 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(1), is_leaf=True, yang_name="min-graceful-termination", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='yang:timeticks', is_config=True)

12937 except (TypeError, ValueError):

12938 raise ValueError({

12939 'error-string': """min_graceful_termination must be of a type compatible with yang:timeticks""",

12940 'defined-type': "yang:timeticks",

12941 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(1), is_leaf=True, yang_name="min-graceful-termination", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='yang:timeticks', is_config=True)""",

12942 })

12943

12944 self.__min_graceful_termination = t

12945 if hasattr(self, '_set'):

12946 self._set()

12947

12948 def _unset_min_graceful_termination(self):

12949 self.__min_graceful_termination = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(1), is_leaf=True, yang_name="min-graceful-termination", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='yang:timeticks', is_config=True)

12950

12951

12952 def _get_max_recommended_graceful_termination(self):

12953 """

12954 Getter method for max_recommended_graceful_termination, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/terminate_vnf_op_config/max_recommended_graceful_termination (yang:timeticks)

12955

12956 YANG Description: Maximum recommended timeout value that can be needed

12957 to gracefully terminate a VNF instance of a

12958 particular type under certain conditions, such as

12959 maximum load condition. This is provided by VNF

12960 provider as information for the operator

12961 facilitating the selection of optimal timeout value.

12962 This value is not used as constraint.

12963 """

12964 return self.__max_recommended_graceful_termination

12965

12966 def _set_max_recommended_graceful_termination(self, v, load=False):

12967 """

12968 Setter method for max_recommended_graceful_termination, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/terminate_vnf_op_config/max_recommended_graceful_termination (yang:timeticks)

12969 If this variable is read-only (config: false) in the

12970 source YANG file, then _set_max_recommended_graceful_termination is considered as a private

12971 method. Backends looking to populate this variable should

12972 do so via calling thisObj._set_max_recommended_graceful_termination() directly.

12973

12974 YANG Description: Maximum recommended timeout value that can be needed

12975 to gracefully terminate a VNF instance of a

12976 particular type under certain conditions, such as

12977 maximum load condition. This is provided by VNF

12978 provider as information for the operator

12979 facilitating the selection of optimal timeout value.

12980 This value is not used as constraint.

12981 """

12982 if hasattr(v, "_utype"):

12983 v = v._utype(v)

12984 try:

12985 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="max-recommended-graceful-termination", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='yang:timeticks', is_config=True)

12986 except (TypeError, ValueError):

12987 raise ValueError({

12988 'error-string': """max_recommended_graceful_termination must be of a type compatible with yang:timeticks""",

12989 'defined-type': "yang:timeticks",

12990 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="max-recommended-graceful-termination", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='yang:timeticks', is_config=True)""",

12991 })

12992

12993 self.__max_recommended_graceful_termination = t

12994 if hasattr(self, '_set'):

12995 self._set()

12996

12997 def _unset_max_recommended_graceful_termination(self):

12998 self.__max_recommended_graceful_termination = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="max-recommended-graceful-termination", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='yang:timeticks', is_config=True)

12999

13000

13001 def _get_parameter(self):

13002 """

13003 Getter method for parameter, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/terminate_vnf_op_config/parameter (list)

13004

13005 YANG Description: Array of KVP requirements for VNF-specific parameters

13006 to be passed when invoking the TerminateVnf

13007 operation.

13008 """

13009 return self.__parameter

13010

13011 def _set_parameter(self, v, load=False):

13012 """

13013 Setter method for parameter, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/terminate_vnf_op_config/parameter (list)

13014 If this variable is read-only (config: false) in the

13015 source YANG file, then _set_parameter is considered as a private

13016 method. Backends looking to populate this variable should

13017 do so via calling thisObj._set_parameter() directly.

13018

13019 YANG Description: Array of KVP requirements for VNF-specific parameters

13020 to be passed when invoking the TerminateVnf

13021 operation.

13022 """

13023 if hasattr(v, "_utype"):

13024 v = v._utype(v)

13025 try:

13026 t = YANGDynClass(v,base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_terminate_vnf_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

13027 except (TypeError, ValueError):

13028 raise ValueError({

13029 'error-string': """parameter must be of a type compatible with list""",

13030 'defined-type': "list",

13031 'generated-type': """YANGDynClass(base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_terminate_vnf_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

13032 })

13033

13034 self.__parameter = t

13035 if hasattr(self, '_set'):

13036 self._set()

13037

13038 def _unset_parameter(self):

13039 self.__parameter = YANGDynClass(base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_terminate_vnf_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

13040

13041 min_graceful_termination = __builtin__.property(_get_min_graceful_termination, _set_min_graceful_termination)

13042 max_recommended_graceful_termination = __builtin__.property(_get_max_recommended_graceful_termination, _set_max_recommended_graceful_termination)

13043 parameter = __builtin__.property(_get_parameter, _set_parameter)

13044

13045

13046 _pyangbind_elements = OrderedDict([('min_graceful_termination', min_graceful_termination), ('max_recommended_graceful_termination', max_recommended_graceful_termination), ('parameter', parameter), ])

13047

13048

13049 class yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_operate_vnf_op_config_parameter(PybindBase):

13050 """

13051 This class was auto-generated by the PythonClass plugin for PYANG

13052 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/lcm-operations-configuration/operate-vnf-op-config/parameter. Each member element of

13053 the container is represented as a class variable - with a specific

13054 YANG type.

13055

13056 YANG Description: Array of KVP requirements for VNF-specific parameters

13057 to be passed when invoking the OperateVnf

13058 operation.

13059 """

13060 __slots__ = ('_path_helper', '_extmethods', '__key','__value',)

13061

13062 _yang_name = 'parameter'

13063 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

13064

13065 _pybind_generated_by = 'container'

13066

13067 def __init__(self, *args, **kwargs):

13068

13069 self._path_helper = False

13070

13071 self._extmethods = False

13072 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

13073 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

13074

13075 load = kwargs.pop("load", None)

13076 if args:

13077 if len(args) > 1:

13078 raise TypeError("cannot create a YANG container with >1 argument")

13079 all_attr = True

13080 for e in self._pyangbind_elements:

13081 if not hasattr(args[0], e):

13082 all_attr = False

13083 break

13084 if not all_attr:

13085 raise ValueError("Supplied object did not have the correct attributes")

13086 for e in self._pyangbind_elements:

13087 nobj = getattr(args[0], e)

13088 if nobj._changed() is False:

13089 continue

13090 setmethod = getattr(self, "_set_%s" % e)

13091 if load is None:

13092 setmethod(getattr(args[0], e))

13093 else:

13094 setmethod(getattr(args[0], e), load=load)

13095

13096 def _path(self):

13097 if hasattr(self, "_parent"):

13098 return self._parent._path()+[self._yang_name]

13099 else:

13100 return ['nsd', 'vnfd', 'df', 'lcm-operations-configuration', 'operate-vnf-op-config', 'parameter']

13101

13102 def _get_key(self):

13103 """

13104 Getter method for key, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/operate_vnf_op_config/parameter/key (string)

13105 """

13106 return self.__key

13107

13108 def _set_key(self, v, load=False):

13109 """

13110 Setter method for key, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/operate_vnf_op_config/parameter/key (string)

13111 If this variable is read-only (config: false) in the

13112 source YANG file, then _set_key is considered as a private

13113 method. Backends looking to populate this variable should

13114 do so via calling thisObj._set_key() directly.

13115 """

13116 parent = getattr(self, "_parent", None)

13117 if parent is not None and load is False:

13118 raise AttributeError("Cannot set keys directly when" +

13119 " within an instantiated list")

13120

13121 if hasattr(v, "_utype"):

13122 v = v._utype(v)

13123 try:

13124 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

13125 except (TypeError, ValueError):

13126 raise ValueError({

13127 'error-string': """key must be of a type compatible with string""",

13128 'defined-type': "string",

13129 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

13130 })

13131

13132 self.__key = t

13133 if hasattr(self, '_set'):

13134 self._set()

13135

13136 def _unset_key(self):

13137 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

13138

13139

13140 def _get_value(self):

13141 """

13142 Getter method for value, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/operate_vnf_op_config/parameter/value (string)

13143 """

13144 return self.__value

13145

13146 def _set_value(self, v, load=False):

13147 """

13148 Setter method for value, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/operate_vnf_op_config/parameter/value (string)

13149 If this variable is read-only (config: false) in the

13150 source YANG file, then _set_value is considered as a private

13151 method. Backends looking to populate this variable should

13152 do so via calling thisObj._set_value() directly.

13153 """

13154 if hasattr(v, "_utype"):

13155 v = v._utype(v)

13156 try:

13157 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

13158 except (TypeError, ValueError):

13159 raise ValueError({

13160 'error-string': """value must be of a type compatible with string""",

13161 'defined-type': "string",

13162 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

13163 })

13164

13165 self.__value = t

13166 if hasattr(self, '_set'):

13167 self._set()

13168

13169 def _unset_value(self):

13170 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

13171

13172 key = __builtin__.property(_get_key, _set_key)

13173 value = __builtin__.property(_get_value, _set_value)

13174

13175

13176 _pyangbind_elements = OrderedDict([('key', key), ('value', value), ])

13177

13178

13179 class yc_operate_vnf_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_operate_vnf_op_config(PybindBase):

13180 """

13181 This class was auto-generated by the PythonClass plugin for PYANG

13182 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/lcm-operations-configuration/operate-vnf-op-config. Each member element of

13183 the container is represented as a class variable - with a specific

13184 YANG type.

13185

13186 YANG Description: This information element defines attributes that

13187 affect the invocation of the OperateVnf operation.

13188 """

13189 __slots__ = ('_path_helper', '_extmethods', '__min_graceful_stop_timeout','__max_recommended_graceful_stop_timeout','__parameter',)

13190

13191 _yang_name = 'operate-vnf-op-config'

13192 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

13193

13194 _pybind_generated_by = 'container'

13195

13196 def __init__(self, *args, **kwargs):

13197

13198 self._path_helper = False

13199

13200 self._extmethods = False

13201 self.__min_graceful_stop_timeout = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(1), is_leaf=True, yang_name="min-graceful-stop-timeout", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='yang:timeticks', is_config=True)

13202 self.__max_recommended_graceful_stop_timeout = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="max-recommended-graceful-stop-timeout", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='yang:timeticks', is_config=True)

13203 self.__parameter = YANGDynClass(base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_operate_vnf_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

13204

13205 load = kwargs.pop("load", None)

13206 if args:

13207 if len(args) > 1:

13208 raise TypeError("cannot create a YANG container with >1 argument")

13209 all_attr = True

13210 for e in self._pyangbind_elements:

13211 if not hasattr(args[0], e):

13212 all_attr = False

13213 break

13214 if not all_attr:

13215 raise ValueError("Supplied object did not have the correct attributes")

13216 for e in self._pyangbind_elements:

13217 nobj = getattr(args[0], e)

13218 if nobj._changed() is False:

13219 continue

13220 setmethod = getattr(self, "_set_%s" % e)

13221 if load is None:

13222 setmethod(getattr(args[0], e))

13223 else:

13224 setmethod(getattr(args[0], e), load=load)

13225

13226 def _path(self):

13227 if hasattr(self, "_parent"):

13228 return self._parent._path()+[self._yang_name]

13229 else:

13230 return ['nsd', 'vnfd', 'df', 'lcm-operations-configuration', 'operate-vnf-op-config']

13231

13232 def _get_min_graceful_stop_timeout(self):

13233 """

13234 Getter method for min_graceful_stop_timeout, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/operate_vnf_op_config/min_graceful_stop_timeout (yang:timeticks)

13235

13236 YANG Description: Minimum timeout value for graceful stop of a VNF

13237 instance.

13238 """

13239 return self.__min_graceful_stop_timeout

13240

13241 def _set_min_graceful_stop_timeout(self, v, load=False):

13242 """

13243 Setter method for min_graceful_stop_timeout, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/operate_vnf_op_config/min_graceful_stop_timeout (yang:timeticks)

13244 If this variable is read-only (config: false) in the

13245 source YANG file, then _set_min_graceful_stop_timeout is considered as a private

13246 method. Backends looking to populate this variable should

13247 do so via calling thisObj._set_min_graceful_stop_timeout() directly.

13248

13249 YANG Description: Minimum timeout value for graceful stop of a VNF

13250 instance.

13251 """

13252 if hasattr(v, "_utype"):

13253 v = v._utype(v)

13254 try:

13255 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(1), is_leaf=True, yang_name="min-graceful-stop-timeout", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='yang:timeticks', is_config=True)

13256 except (TypeError, ValueError):

13257 raise ValueError({

13258 'error-string': """min_graceful_stop_timeout must be of a type compatible with yang:timeticks""",

13259 'defined-type': "yang:timeticks",

13260 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(1), is_leaf=True, yang_name="min-graceful-stop-timeout", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='yang:timeticks', is_config=True)""",

13261 })

13262

13263 self.__min_graceful_stop_timeout = t

13264 if hasattr(self, '_set'):

13265 self._set()

13266

13267 def _unset_min_graceful_stop_timeout(self):

13268 self.__min_graceful_stop_timeout = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(1), is_leaf=True, yang_name="min-graceful-stop-timeout", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='yang:timeticks', is_config=True)

13269

13270

13271 def _get_max_recommended_graceful_stop_timeout(self):

13272 """

13273 Getter method for max_recommended_graceful_stop_timeout, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/operate_vnf_op_config/max_recommended_graceful_stop_timeout (yang:timeticks)

13274

13275 YANG Description: Maximum recommended timeout value that can be

13276 needed to gracefully stop a VNF instance of a

13277 particular type under certain conditions, such as

13278 maximum load condition. This is provided by VNF

13279 provider as information for the operator facilitating

13280 the selection of optimal timeout value. This value

13281 is not used as constraint.

13282 """

13283 return self.__max_recommended_graceful_stop_timeout

13284

13285 def _set_max_recommended_graceful_stop_timeout(self, v, load=False):

13286 """

13287 Setter method for max_recommended_graceful_stop_timeout, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/operate_vnf_op_config/max_recommended_graceful_stop_timeout (yang:timeticks)

13288 If this variable is read-only (config: false) in the

13289 source YANG file, then _set_max_recommended_graceful_stop_timeout is considered as a private

13290 method. Backends looking to populate this variable should

13291 do so via calling thisObj._set_max_recommended_graceful_stop_timeout() directly.

13292

13293 YANG Description: Maximum recommended timeout value that can be

13294 needed to gracefully stop a VNF instance of a

13295 particular type under certain conditions, such as

13296 maximum load condition. This is provided by VNF

13297 provider as information for the operator facilitating

13298 the selection of optimal timeout value. This value

13299 is not used as constraint.

13300 """

13301 if hasattr(v, "_utype"):

13302 v = v._utype(v)

13303 try:

13304 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="max-recommended-graceful-stop-timeout", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='yang:timeticks', is_config=True)

13305 except (TypeError, ValueError):

13306 raise ValueError({

13307 'error-string': """max_recommended_graceful_stop_timeout must be of a type compatible with yang:timeticks""",

13308 'defined-type': "yang:timeticks",

13309 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="max-recommended-graceful-stop-timeout", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='yang:timeticks', is_config=True)""",

13310 })

13311

13312 self.__max_recommended_graceful_stop_timeout = t

13313 if hasattr(self, '_set'):

13314 self._set()

13315

13316 def _unset_max_recommended_graceful_stop_timeout(self):

13317 self.__max_recommended_graceful_stop_timeout = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="max-recommended-graceful-stop-timeout", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='yang:timeticks', is_config=True)

13318

13319

13320 def _get_parameter(self):

13321 """

13322 Getter method for parameter, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/operate_vnf_op_config/parameter (list)

13323

13324 YANG Description: Array of KVP requirements for VNF-specific parameters

13325 to be passed when invoking the OperateVnf

13326 operation.

13327 """

13328 return self.__parameter

13329

13330 def _set_parameter(self, v, load=False):

13331 """

13332 Setter method for parameter, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/operate_vnf_op_config/parameter (list)

13333 If this variable is read-only (config: false) in the

13334 source YANG file, then _set_parameter is considered as a private

13335 method. Backends looking to populate this variable should

13336 do so via calling thisObj._set_parameter() directly.

13337

13338 YANG Description: Array of KVP requirements for VNF-specific parameters

13339 to be passed when invoking the OperateVnf

13340 operation.

13341 """

13342 if hasattr(v, "_utype"):

13343 v = v._utype(v)

13344 try:

13345 t = YANGDynClass(v,base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_operate_vnf_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

13346 except (TypeError, ValueError):

13347 raise ValueError({

13348 'error-string': """parameter must be of a type compatible with list""",

13349 'defined-type': "list",

13350 'generated-type': """YANGDynClass(base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_operate_vnf_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

13351 })

13352

13353 self.__parameter = t

13354 if hasattr(self, '_set'):

13355 self._set()

13356

13357 def _unset_parameter(self):

13358 self.__parameter = YANGDynClass(base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_operate_vnf_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

13359

13360 min_graceful_stop_timeout = __builtin__.property(_get_min_graceful_stop_timeout, _set_min_graceful_stop_timeout)

13361 max_recommended_graceful_stop_timeout = __builtin__.property(_get_max_recommended_graceful_stop_timeout, _set_max_recommended_graceful_stop_timeout)

13362 parameter = __builtin__.property(_get_parameter, _set_parameter)

13363

13364

13365 _pyangbind_elements = OrderedDict([('min_graceful_stop_timeout', min_graceful_stop_timeout), ('max_recommended_graceful_stop_timeout', max_recommended_graceful_stop_timeout), ('parameter', parameter), ])

13366

13367

13368 class yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_change_vnf_flavour_op_config_parameter(PybindBase):

13369 """

13370 This class was auto-generated by the PythonClass plugin for PYANG

13371 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/lcm-operations-configuration/change-vnf-flavour-op-config/parameter. Each member element of

13372 the container is represented as a class variable - with a specific

13373 YANG type.

13374

13375 YANG Description: Array of KVP requirements for VNF-specific parameters

13376 to be passed when invoking the OperateVnf

13377 operation.

13378 """

13379 __slots__ = ('_path_helper', '_extmethods', '__key','__value',)

13380

13381 _yang_name = 'parameter'

13382 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

13383

13384 _pybind_generated_by = 'container'

13385

13386 def __init__(self, *args, **kwargs):

13387

13388 self._path_helper = False

13389

13390 self._extmethods = False

13391 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

13392 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

13393

13394 load = kwargs.pop("load", None)

13395 if args:

13396 if len(args) > 1:

13397 raise TypeError("cannot create a YANG container with >1 argument")

13398 all_attr = True

13399 for e in self._pyangbind_elements:

13400 if not hasattr(args[0], e):

13401 all_attr = False

13402 break

13403 if not all_attr:

13404 raise ValueError("Supplied object did not have the correct attributes")

13405 for e in self._pyangbind_elements:

13406 nobj = getattr(args[0], e)

13407 if nobj._changed() is False:

13408 continue

13409 setmethod = getattr(self, "_set_%s" % e)

13410 if load is None:

13411 setmethod(getattr(args[0], e))

13412 else:

13413 setmethod(getattr(args[0], e), load=load)

13414

13415 def _path(self):

13416 if hasattr(self, "_parent"):

13417 return self._parent._path()+[self._yang_name]

13418 else:

13419 return ['nsd', 'vnfd', 'df', 'lcm-operations-configuration', 'change-vnf-flavour-op-config', 'parameter']

13420

13421 def _get_key(self):

13422 """

13423 Getter method for key, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/change_vnf_flavour_op_config/parameter/key (string)

13424 """

13425 return self.__key

13426

13427 def _set_key(self, v, load=False):

13428 """

13429 Setter method for key, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/change_vnf_flavour_op_config/parameter/key (string)

13430 If this variable is read-only (config: false) in the

13431 source YANG file, then _set_key is considered as a private

13432 method. Backends looking to populate this variable should

13433 do so via calling thisObj._set_key() directly.

13434 """

13435 parent = getattr(self, "_parent", None)

13436 if parent is not None and load is False:

13437 raise AttributeError("Cannot set keys directly when" +

13438 " within an instantiated list")

13439

13440 if hasattr(v, "_utype"):

13441 v = v._utype(v)

13442 try:

13443 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

13444 except (TypeError, ValueError):

13445 raise ValueError({

13446 'error-string': """key must be of a type compatible with string""",

13447 'defined-type': "string",

13448 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

13449 })

13450

13451 self.__key = t

13452 if hasattr(self, '_set'):

13453 self._set()

13454

13455 def _unset_key(self):

13456 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

13457

13458

13459 def _get_value(self):

13460 """

13461 Getter method for value, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/change_vnf_flavour_op_config/parameter/value (string)

13462 """

13463 return self.__value

13464

13465 def _set_value(self, v, load=False):

13466 """

13467 Setter method for value, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/change_vnf_flavour_op_config/parameter/value (string)

13468 If this variable is read-only (config: false) in the

13469 source YANG file, then _set_value is considered as a private

13470 method. Backends looking to populate this variable should

13471 do so via calling thisObj._set_value() directly.

13472 """

13473 if hasattr(v, "_utype"):

13474 v = v._utype(v)

13475 try:

13476 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

13477 except (TypeError, ValueError):

13478 raise ValueError({

13479 'error-string': """value must be of a type compatible with string""",

13480 'defined-type': "string",

13481 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

13482 })

13483

13484 self.__value = t

13485 if hasattr(self, '_set'):

13486 self._set()

13487

13488 def _unset_value(self):

13489 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

13490

13491 key = __builtin__.property(_get_key, _set_key)

13492 value = __builtin__.property(_get_value, _set_value)

13493

13494

13495 _pyangbind_elements = OrderedDict([('key', key), ('value', value), ])

13496

13497

13498 class yc_change_vnf_flavour_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_change_vnf_flavour_op_config(PybindBase):

13499 """

13500 This class was auto-generated by the PythonClass plugin for PYANG

13501 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/lcm-operations-configuration/change-vnf-flavour-op-config. Each member element of

13502 the container is represented as a class variable - with a specific

13503 YANG type.

13504

13505 YANG Description: Configuration parameters for the ChangeVnfFlavour

13506 operation.

13507 """

13508 __slots__ = ('_path_helper', '_extmethods', '__parameter',)

13509

13510 _yang_name = 'change-vnf-flavour-op-config'

13511 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

13512

13513 _pybind_generated_by = 'container'

13514

13515 def __init__(self, *args, **kwargs):

13516

13517 self._path_helper = False

13518

13519 self._extmethods = False

13520 self.__parameter = YANGDynClass(base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_change_vnf_flavour_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

13521

13522 load = kwargs.pop("load", None)

13523 if args:

13524 if len(args) > 1:

13525 raise TypeError("cannot create a YANG container with >1 argument")

13526 all_attr = True

13527 for e in self._pyangbind_elements:

13528 if not hasattr(args[0], e):

13529 all_attr = False

13530 break

13531 if not all_attr:

13532 raise ValueError("Supplied object did not have the correct attributes")

13533 for e in self._pyangbind_elements:

13534 nobj = getattr(args[0], e)

13535 if nobj._changed() is False:

13536 continue

13537 setmethod = getattr(self, "_set_%s" % e)

13538 if load is None:

13539 setmethod(getattr(args[0], e))

13540 else:

13541 setmethod(getattr(args[0], e), load=load)

13542

13543 def _path(self):

13544 if hasattr(self, "_parent"):

13545 return self._parent._path()+[self._yang_name]

13546 else:

13547 return ['nsd', 'vnfd', 'df', 'lcm-operations-configuration', 'change-vnf-flavour-op-config']

13548

13549 def _get_parameter(self):

13550 """

13551 Getter method for parameter, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/change_vnf_flavour_op_config/parameter (list)

13552

13553 YANG Description: Array of KVP requirements for VNF-specific parameters

13554 to be passed when invoking the OperateVnf

13555 operation.

13556 """

13557 return self.__parameter

13558

13559 def _set_parameter(self, v, load=False):

13560 """

13561 Setter method for parameter, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/change_vnf_flavour_op_config/parameter (list)

13562 If this variable is read-only (config: false) in the

13563 source YANG file, then _set_parameter is considered as a private

13564 method. Backends looking to populate this variable should

13565 do so via calling thisObj._set_parameter() directly.

13566

13567 YANG Description: Array of KVP requirements for VNF-specific parameters

13568 to be passed when invoking the OperateVnf

13569 operation.

13570 """

13571 if hasattr(v, "_utype"):

13572 v = v._utype(v)

13573 try:

13574 t = YANGDynClass(v,base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_change_vnf_flavour_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

13575 except (TypeError, ValueError):

13576 raise ValueError({

13577 'error-string': """parameter must be of a type compatible with list""",

13578 'defined-type': "list",

13579 'generated-type': """YANGDynClass(base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_change_vnf_flavour_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

13580 })

13581

13582 self.__parameter = t

13583 if hasattr(self, '_set'):

13584 self._set()

13585

13586 def _unset_parameter(self):

13587 self.__parameter = YANGDynClass(base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_change_vnf_flavour_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

13588

13589 parameter = __builtin__.property(_get_parameter, _set_parameter)

13590

13591

13592 _pyangbind_elements = OrderedDict([('parameter', parameter), ])

13593

13594

13595 class yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_change_ext_vnf_connectivity_op_config_parameter(PybindBase):

13596 """

13597 This class was auto-generated by the PythonClass plugin for PYANG

13598 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/lcm-operations-configuration/change-ext-vnf-connectivity-op-config/parameter. Each member element of

13599 the container is represented as a class variable - with a specific

13600 YANG type.

13601

13602 YANG Description: Array of KVP requirements for VNF-specific parameters

13603 to be passed when invoking the

13604 ChangeExtVnfConnectivity operation.

13605 """

13606 __slots__ = ('_path_helper', '_extmethods', '__key','__value',)

13607

13608 _yang_name = 'parameter'

13609 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

13610

13611 _pybind_generated_by = 'container'

13612

13613 def __init__(self, *args, **kwargs):

13614

13615 self._path_helper = False

13616

13617 self._extmethods = False

13618 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

13619 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

13620

13621 load = kwargs.pop("load", None)

13622 if args:

13623 if len(args) > 1:

13624 raise TypeError("cannot create a YANG container with >1 argument")

13625 all_attr = True

13626 for e in self._pyangbind_elements:

13627 if not hasattr(args[0], e):

13628 all_attr = False

13629 break

13630 if not all_attr:

13631 raise ValueError("Supplied object did not have the correct attributes")

13632 for e in self._pyangbind_elements:

13633 nobj = getattr(args[0], e)

13634 if nobj._changed() is False:

13635 continue

13636 setmethod = getattr(self, "_set_%s" % e)

13637 if load is None:

13638 setmethod(getattr(args[0], e))

13639 else:

13640 setmethod(getattr(args[0], e), load=load)

13641

13642 def _path(self):

13643 if hasattr(self, "_parent"):

13644 return self._parent._path()+[self._yang_name]

13645 else:

13646 return ['nsd', 'vnfd', 'df', 'lcm-operations-configuration', 'change-ext-vnf-connectivity-op-config', 'parameter']

13647

13648 def _get_key(self):

13649 """

13650 Getter method for key, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/change_ext_vnf_connectivity_op_config/parameter/key (string)

13651 """

13652 return self.__key

13653

13654 def _set_key(self, v, load=False):

13655 """

13656 Setter method for key, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/change_ext_vnf_connectivity_op_config/parameter/key (string)

13657 If this variable is read-only (config: false) in the

13658 source YANG file, then _set_key is considered as a private

13659 method. Backends looking to populate this variable should

13660 do so via calling thisObj._set_key() directly.

13661 """

13662 parent = getattr(self, "_parent", None)

13663 if parent is not None and load is False:

13664 raise AttributeError("Cannot set keys directly when" +

13665 " within an instantiated list")

13666

13667 if hasattr(v, "_utype"):

13668 v = v._utype(v)

13669 try:

13670 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

13671 except (TypeError, ValueError):

13672 raise ValueError({

13673 'error-string': """key must be of a type compatible with string""",

13674 'defined-type': "string",

13675 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

13676 })

13677

13678 self.__key = t

13679 if hasattr(self, '_set'):

13680 self._set()

13681

13682 def _unset_key(self):

13683 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

13684

13685

13686 def _get_value(self):

13687 """

13688 Getter method for value, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/change_ext_vnf_connectivity_op_config/parameter/value (string)

13689 """

13690 return self.__value

13691

13692 def _set_value(self, v, load=False):

13693 """

13694 Setter method for value, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/change_ext_vnf_connectivity_op_config/parameter/value (string)

13695 If this variable is read-only (config: false) in the

13696 source YANG file, then _set_value is considered as a private

13697 method. Backends looking to populate this variable should

13698 do so via calling thisObj._set_value() directly.

13699 """

13700 if hasattr(v, "_utype"):

13701 v = v._utype(v)

13702 try:

13703 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

13704 except (TypeError, ValueError):

13705 raise ValueError({

13706 'error-string': """value must be of a type compatible with string""",

13707 'defined-type': "string",

13708 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

13709 })

13710

13711 self.__value = t

13712 if hasattr(self, '_set'):

13713 self._set()

13714

13715 def _unset_value(self):

13716 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

13717

13718 key = __builtin__.property(_get_key, _set_key)

13719 value = __builtin__.property(_get_value, _set_value)

13720

13721

13722 _pyangbind_elements = OrderedDict([('key', key), ('value', value), ])

13723

13724

13725 class yc_change_ext_vnf_connectivity_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_change_ext_vnf_connectivity_op_config(PybindBase):

13726 """

13727 This class was auto-generated by the PythonClass plugin for PYANG

13728 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/lcm-operations-configuration/change-ext-vnf-connectivity-op-config. Each member element of

13729 the container is represented as a class variable - with a specific

13730 YANG type.

13731

13732 YANG Description: Configuration parameters for the

13733 ChangeExtVnfConnectivity operation.

13734 """

13735 __slots__ = ('_path_helper', '_extmethods', '__parameter',)

13736

13737 _yang_name = 'change-ext-vnf-connectivity-op-config'

13738 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

13739

13740 _pybind_generated_by = 'container'

13741

13742 def __init__(self, *args, **kwargs):

13743

13744 self._path_helper = False

13745

13746 self._extmethods = False

13747 self.__parameter = YANGDynClass(base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_change_ext_vnf_connectivity_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

13748

13749 load = kwargs.pop("load", None)

13750 if args:

13751 if len(args) > 1:

13752 raise TypeError("cannot create a YANG container with >1 argument")

13753 all_attr = True

13754 for e in self._pyangbind_elements:

13755 if not hasattr(args[0], e):

13756 all_attr = False

13757 break

13758 if not all_attr:

13759 raise ValueError("Supplied object did not have the correct attributes")

13760 for e in self._pyangbind_elements:

13761 nobj = getattr(args[0], e)

13762 if nobj._changed() is False:

13763 continue

13764 setmethod = getattr(self, "_set_%s" % e)

13765 if load is None:

13766 setmethod(getattr(args[0], e))

13767 else:

13768 setmethod(getattr(args[0], e), load=load)

13769

13770 def _path(self):

13771 if hasattr(self, "_parent"):

13772 return self._parent._path()+[self._yang_name]

13773 else:

13774 return ['nsd', 'vnfd', 'df', 'lcm-operations-configuration', 'change-ext-vnf-connectivity-op-config']

13775

13776 def _get_parameter(self):

13777 """

13778 Getter method for parameter, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/change_ext_vnf_connectivity_op_config/parameter (list)

13779

13780 YANG Description: Array of KVP requirements for VNF-specific parameters

13781 to be passed when invoking the

13782 ChangeExtVnfConnectivity operation.

13783 """

13784 return self.__parameter

13785

13786 def _set_parameter(self, v, load=False):

13787 """

13788 Setter method for parameter, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/change_ext_vnf_connectivity_op_config/parameter (list)

13789 If this variable is read-only (config: false) in the

13790 source YANG file, then _set_parameter is considered as a private

13791 method. Backends looking to populate this variable should

13792 do so via calling thisObj._set_parameter() directly.

13793

13794 YANG Description: Array of KVP requirements for VNF-specific parameters

13795 to be passed when invoking the

13796 ChangeExtVnfConnectivity operation.

13797 """

13798 if hasattr(v, "_utype"):

13799 v = v._utype(v)

13800 try:

13801 t = YANGDynClass(v,base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_change_ext_vnf_connectivity_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

13802 except (TypeError, ValueError):

13803 raise ValueError({

13804 'error-string': """parameter must be of a type compatible with list""",

13805 'defined-type': "list",

13806 'generated-type': """YANGDynClass(base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_change_ext_vnf_connectivity_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

13807 })

13808

13809 self.__parameter = t

13810 if hasattr(self, '_set'):

13811 self._set()

13812

13813 def _unset_parameter(self):

13814 self.__parameter = YANGDynClass(base=YANGListType("key",yc_parameter_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_change_ext_vnf_connectivity_op_config_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

13815

13816 parameter = __builtin__.property(_get_parameter, _set_parameter)

13817

13818

13819 _pyangbind_elements = OrderedDict([('parameter', parameter), ])

13820

13821

13822 class yc_lcm_operations_configuration_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration(PybindBase):

13823 """

13824 This class was auto-generated by the PythonClass plugin for PYANG

13825 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/lcm-operations-configuration. Each member element of

13826 the container is represented as a class variable - with a specific

13827 YANG type.

13828

13829 YANG Description: This information element is a container for all

13830 attributes that affect the invocation of the VNF

13831 Lifecycle Management operations, structured by

13832 operation.

13833 """

13834 __slots__ = ('_path_helper', '_extmethods', '__instantiate_vnf_op_config','__scale_vnf_op_config','__scale_vnf_to_level_op_config','__heal_vnf_op_config','__terminate_vnf_op_config','__operate_vnf_op_config','__change_vnf_flavour_op_config','__change_ext_vnf_connectivity_op_config',)

13835

13836 _yang_name = 'lcm-operations-configuration'

13837 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

13838

13839 _pybind_generated_by = 'container'

13840

13841 def __init__(self, *args, **kwargs):

13842

13843 self._path_helper = False

13844

13845 self._extmethods = False

13846 self.__instantiate_vnf_op_config = YANGDynClass(base=yc_instantiate_vnf_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_instantiate_vnf_op_config, is_container='container', yang_name="instantiate-vnf-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

13847 self.__scale_vnf_op_config = YANGDynClass(base=yc_scale_vnf_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_scale_vnf_op_config, is_container='container', yang_name="scale-vnf-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

13848 self.__scale_vnf_to_level_op_config = YANGDynClass(base=yc_scale_vnf_to_level_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_scale_vnf_to_level_op_config, is_container='container', yang_name="scale-vnf-to-level-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

13849 self.__heal_vnf_op_config = YANGDynClass(base=yc_heal_vnf_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_heal_vnf_op_config, is_container='container', yang_name="heal-vnf-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

13850 self.__terminate_vnf_op_config = YANGDynClass(base=yc_terminate_vnf_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_terminate_vnf_op_config, is_container='container', yang_name="terminate-vnf-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

13851 self.__operate_vnf_op_config = YANGDynClass(base=yc_operate_vnf_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_operate_vnf_op_config, is_container='container', yang_name="operate-vnf-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

13852 self.__change_vnf_flavour_op_config = YANGDynClass(base=yc_change_vnf_flavour_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_change_vnf_flavour_op_config, is_container='container', yang_name="change-vnf-flavour-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

13853 self.__change_ext_vnf_connectivity_op_config = YANGDynClass(base=yc_change_ext_vnf_connectivity_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_change_ext_vnf_connectivity_op_config, is_container='container', yang_name="change-ext-vnf-connectivity-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

13854

13855 load = kwargs.pop("load", None)

13856 if args:

13857 if len(args) > 1:

13858 raise TypeError("cannot create a YANG container with >1 argument")

13859 all_attr = True

13860 for e in self._pyangbind_elements:

13861 if not hasattr(args[0], e):

13862 all_attr = False

13863 break

13864 if not all_attr:

13865 raise ValueError("Supplied object did not have the correct attributes")

13866 for e in self._pyangbind_elements:

13867 nobj = getattr(args[0], e)

13868 if nobj._changed() is False:

13869 continue

13870 setmethod = getattr(self, "_set_%s" % e)

13871 if load is None:

13872 setmethod(getattr(args[0], e))

13873 else:

13874 setmethod(getattr(args[0], e), load=load)

13875

13876 def _path(self):

13877 if hasattr(self, "_parent"):

13878 return self._parent._path()+[self._yang_name]

13879 else:

13880 return ['nsd', 'vnfd', 'df', 'lcm-operations-configuration']

13881

13882 def _get_instantiate_vnf_op_config(self):

13883 """

13884 Getter method for instantiate_vnf_op_config, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/instantiate_vnf_op_config (container)

13885

13886 YANG Description: Configuration parameters for the InstantiateVnf

13887 operation.

13888 """

13889 return self.__instantiate_vnf_op_config

13890

13891 def _set_instantiate_vnf_op_config(self, v, load=False):

13892 """

13893 Setter method for instantiate_vnf_op_config, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/instantiate_vnf_op_config (container)

13894 If this variable is read-only (config: false) in the

13895 source YANG file, then _set_instantiate_vnf_op_config is considered as a private

13896 method. Backends looking to populate this variable should

13897 do so via calling thisObj._set_instantiate_vnf_op_config() directly.

13898

13899 YANG Description: Configuration parameters for the InstantiateVnf

13900 operation.

13901 """

13902 if hasattr(v, "_utype"):

13903 v = v._utype(v)

13904 try:

13905 t = YANGDynClass(v,base=yc_instantiate_vnf_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_instantiate_vnf_op_config, is_container='container', yang_name="instantiate-vnf-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

13906 except (TypeError, ValueError):

13907 raise ValueError({

13908 'error-string': """instantiate_vnf_op_config must be of a type compatible with container""",

13909 'defined-type': "container",

13910 'generated-type': """YANGDynClass(base=yc_instantiate_vnf_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_instantiate_vnf_op_config, is_container='container', yang_name="instantiate-vnf-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

13911 })

13912

13913 self.__instantiate_vnf_op_config = t

13914 if hasattr(self, '_set'):

13915 self._set()

13916

13917 def _unset_instantiate_vnf_op_config(self):

13918 self.__instantiate_vnf_op_config = YANGDynClass(base=yc_instantiate_vnf_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_instantiate_vnf_op_config, is_container='container', yang_name="instantiate-vnf-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

13919

13920

13921 def _get_scale_vnf_op_config(self):

13922 """

13923 Getter method for scale_vnf_op_config, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/scale_vnf_op_config (container)

13924

13925 YANG Description: Configuration parameters for the ScaleVnf operation.

13926 """

13927 return self.__scale_vnf_op_config

13928

13929 def _set_scale_vnf_op_config(self, v, load=False):

13930 """

13931 Setter method for scale_vnf_op_config, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/scale_vnf_op_config (container)

13932 If this variable is read-only (config: false) in the

13933 source YANG file, then _set_scale_vnf_op_config is considered as a private

13934 method. Backends looking to populate this variable should

13935 do so via calling thisObj._set_scale_vnf_op_config() directly.

13936

13937 YANG Description: Configuration parameters for the ScaleVnf operation.

13938 """

13939 if hasattr(v, "_utype"):

13940 v = v._utype(v)

13941 try:

13942 t = YANGDynClass(v,base=yc_scale_vnf_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_scale_vnf_op_config, is_container='container', yang_name="scale-vnf-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

13943 except (TypeError, ValueError):

13944 raise ValueError({

13945 'error-string': """scale_vnf_op_config must be of a type compatible with container""",

13946 'defined-type': "container",

13947 'generated-type': """YANGDynClass(base=yc_scale_vnf_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_scale_vnf_op_config, is_container='container', yang_name="scale-vnf-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

13948 })

13949

13950 self.__scale_vnf_op_config = t

13951 if hasattr(self, '_set'):

13952 self._set()

13953

13954 def _unset_scale_vnf_op_config(self):

13955 self.__scale_vnf_op_config = YANGDynClass(base=yc_scale_vnf_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_scale_vnf_op_config, is_container='container', yang_name="scale-vnf-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

13956

13957

13958 def _get_scale_vnf_to_level_op_config(self):

13959 """

13960 Getter method for scale_vnf_to_level_op_config, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/scale_vnf_to_level_op_config (container)

13961

13962 YANG Description: This information element defines attributes that

13963 affect the invocation of the ScaleVnfToLevel

13964 operation.

13965 """

13966 return self.__scale_vnf_to_level_op_config

13967

13968 def _set_scale_vnf_to_level_op_config(self, v, load=False):

13969 """

13970 Setter method for scale_vnf_to_level_op_config, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/scale_vnf_to_level_op_config (container)

13971 If this variable is read-only (config: false) in the

13972 source YANG file, then _set_scale_vnf_to_level_op_config is considered as a private

13973 method. Backends looking to populate this variable should

13974 do so via calling thisObj._set_scale_vnf_to_level_op_config() directly.

13975

13976 YANG Description: This information element defines attributes that

13977 affect the invocation of the ScaleVnfToLevel

13978 operation.

13979 """

13980 if hasattr(v, "_utype"):

13981 v = v._utype(v)

13982 try:

13983 t = YANGDynClass(v,base=yc_scale_vnf_to_level_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_scale_vnf_to_level_op_config, is_container='container', yang_name="scale-vnf-to-level-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

13984 except (TypeError, ValueError):

13985 raise ValueError({

13986 'error-string': """scale_vnf_to_level_op_config must be of a type compatible with container""",

13987 'defined-type': "container",

13988 'generated-type': """YANGDynClass(base=yc_scale_vnf_to_level_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_scale_vnf_to_level_op_config, is_container='container', yang_name="scale-vnf-to-level-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

13989 })

13990

13991 self.__scale_vnf_to_level_op_config = t

13992 if hasattr(self, '_set'):

13993 self._set()

13994

13995 def _unset_scale_vnf_to_level_op_config(self):

13996 self.__scale_vnf_to_level_op_config = YANGDynClass(base=yc_scale_vnf_to_level_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_scale_vnf_to_level_op_config, is_container='container', yang_name="scale-vnf-to-level-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

13997

13998

13999 def _get_heal_vnf_op_config(self):

14000 """

14001 Getter method for heal_vnf_op_config, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/heal_vnf_op_config (container)

14002

14003 YANG Description: This information element defines attributes that

14004 affect the invocation of the HealVnf operation.

14005 """

14006 return self.__heal_vnf_op_config

14007

14008 def _set_heal_vnf_op_config(self, v, load=False):

14009 """

14010 Setter method for heal_vnf_op_config, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/heal_vnf_op_config (container)

14011 If this variable is read-only (config: false) in the

14012 source YANG file, then _set_heal_vnf_op_config is considered as a private

14013 method. Backends looking to populate this variable should

14014 do so via calling thisObj._set_heal_vnf_op_config() directly.

14015

14016 YANG Description: This information element defines attributes that

14017 affect the invocation of the HealVnf operation.

14018 """

14019 if hasattr(v, "_utype"):

14020 v = v._utype(v)

14021 try:

14022 t = YANGDynClass(v,base=yc_heal_vnf_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_heal_vnf_op_config, is_container='container', yang_name="heal-vnf-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

14023 except (TypeError, ValueError):

14024 raise ValueError({

14025 'error-string': """heal_vnf_op_config must be of a type compatible with container""",

14026 'defined-type': "container",

14027 'generated-type': """YANGDynClass(base=yc_heal_vnf_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_heal_vnf_op_config, is_container='container', yang_name="heal-vnf-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

14028 })

14029

14030 self.__heal_vnf_op_config = t

14031 if hasattr(self, '_set'):

14032 self._set()

14033

14034 def _unset_heal_vnf_op_config(self):

14035 self.__heal_vnf_op_config = YANGDynClass(base=yc_heal_vnf_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_heal_vnf_op_config, is_container='container', yang_name="heal-vnf-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

14036

14037

14038 def _get_terminate_vnf_op_config(self):

14039 """

14040 Getter method for terminate_vnf_op_config, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/terminate_vnf_op_config (container)

14041

14042 YANG Description: This information element defines attributes that

14043 affect the invocation of the TerminateVnf operation.

14044 """

14045 return self.__terminate_vnf_op_config

14046

14047 def _set_terminate_vnf_op_config(self, v, load=False):

14048 """

14049 Setter method for terminate_vnf_op_config, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/terminate_vnf_op_config (container)

14050 If this variable is read-only (config: false) in the

14051 source YANG file, then _set_terminate_vnf_op_config is considered as a private

14052 method. Backends looking to populate this variable should

14053 do so via calling thisObj._set_terminate_vnf_op_config() directly.

14054

14055 YANG Description: This information element defines attributes that

14056 affect the invocation of the TerminateVnf operation.

14057 """

14058 if hasattr(v, "_utype"):

14059 v = v._utype(v)

14060 try:

14061 t = YANGDynClass(v,base=yc_terminate_vnf_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_terminate_vnf_op_config, is_container='container', yang_name="terminate-vnf-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

14062 except (TypeError, ValueError):

14063 raise ValueError({

14064 'error-string': """terminate_vnf_op_config must be of a type compatible with container""",

14065 'defined-type': "container",

14066 'generated-type': """YANGDynClass(base=yc_terminate_vnf_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_terminate_vnf_op_config, is_container='container', yang_name="terminate-vnf-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

14067 })

14068

14069 self.__terminate_vnf_op_config = t

14070 if hasattr(self, '_set'):

14071 self._set()

14072

14073 def _unset_terminate_vnf_op_config(self):

14074 self.__terminate_vnf_op_config = YANGDynClass(base=yc_terminate_vnf_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_terminate_vnf_op_config, is_container='container', yang_name="terminate-vnf-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

14075

14076

14077 def _get_operate_vnf_op_config(self):

14078 """

14079 Getter method for operate_vnf_op_config, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/operate_vnf_op_config (container)

14080

14081 YANG Description: This information element defines attributes that

14082 affect the invocation of the OperateVnf operation.

14083 """

14084 return self.__operate_vnf_op_config

14085

14086 def _set_operate_vnf_op_config(self, v, load=False):

14087 """

14088 Setter method for operate_vnf_op_config, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/operate_vnf_op_config (container)

14089 If this variable is read-only (config: false) in the

14090 source YANG file, then _set_operate_vnf_op_config is considered as a private

14091 method. Backends looking to populate this variable should

14092 do so via calling thisObj._set_operate_vnf_op_config() directly.

14093

14094 YANG Description: This information element defines attributes that

14095 affect the invocation of the OperateVnf operation.

14096 """

14097 if hasattr(v, "_utype"):

14098 v = v._utype(v)

14099 try:

14100 t = YANGDynClass(v,base=yc_operate_vnf_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_operate_vnf_op_config, is_container='container', yang_name="operate-vnf-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

14101 except (TypeError, ValueError):

14102 raise ValueError({

14103 'error-string': """operate_vnf_op_config must be of a type compatible with container""",

14104 'defined-type': "container",

14105 'generated-type': """YANGDynClass(base=yc_operate_vnf_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_operate_vnf_op_config, is_container='container', yang_name="operate-vnf-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

14106 })

14107

14108 self.__operate_vnf_op_config = t

14109 if hasattr(self, '_set'):

14110 self._set()

14111

14112 def _unset_operate_vnf_op_config(self):

14113 self.__operate_vnf_op_config = YANGDynClass(base=yc_operate_vnf_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_operate_vnf_op_config, is_container='container', yang_name="operate-vnf-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

14114

14115

14116 def _get_change_vnf_flavour_op_config(self):

14117 """

14118 Getter method for change_vnf_flavour_op_config, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/change_vnf_flavour_op_config (container)

14119

14120 YANG Description: Configuration parameters for the ChangeVnfFlavour

14121 operation.

14122 """

14123 return self.__change_vnf_flavour_op_config

14124

14125 def _set_change_vnf_flavour_op_config(self, v, load=False):

14126 """

14127 Setter method for change_vnf_flavour_op_config, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/change_vnf_flavour_op_config (container)

14128 If this variable is read-only (config: false) in the

14129 source YANG file, then _set_change_vnf_flavour_op_config is considered as a private

14130 method. Backends looking to populate this variable should

14131 do so via calling thisObj._set_change_vnf_flavour_op_config() directly.

14132

14133 YANG Description: Configuration parameters for the ChangeVnfFlavour

14134 operation.

14135 """

14136 if hasattr(v, "_utype"):

14137 v = v._utype(v)

14138 try:

14139 t = YANGDynClass(v,base=yc_change_vnf_flavour_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_change_vnf_flavour_op_config, is_container='container', yang_name="change-vnf-flavour-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

14140 except (TypeError, ValueError):

14141 raise ValueError({

14142 'error-string': """change_vnf_flavour_op_config must be of a type compatible with container""",

14143 'defined-type': "container",

14144 'generated-type': """YANGDynClass(base=yc_change_vnf_flavour_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_change_vnf_flavour_op_config, is_container='container', yang_name="change-vnf-flavour-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

14145 })

14146

14147 self.__change_vnf_flavour_op_config = t

14148 if hasattr(self, '_set'):

14149 self._set()

14150

14151 def _unset_change_vnf_flavour_op_config(self):

14152 self.__change_vnf_flavour_op_config = YANGDynClass(base=yc_change_vnf_flavour_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_change_vnf_flavour_op_config, is_container='container', yang_name="change-vnf-flavour-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

14153

14154

14155 def _get_change_ext_vnf_connectivity_op_config(self):

14156 """

14157 Getter method for change_ext_vnf_connectivity_op_config, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/change_ext_vnf_connectivity_op_config (container)

14158

14159 YANG Description: Configuration parameters for the

14160 ChangeExtVnfConnectivity operation.

14161 """

14162 return self.__change_ext_vnf_connectivity_op_config

14163

14164 def _set_change_ext_vnf_connectivity_op_config(self, v, load=False):

14165 """

14166 Setter method for change_ext_vnf_connectivity_op_config, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration/change_ext_vnf_connectivity_op_config (container)

14167 If this variable is read-only (config: false) in the

14168 source YANG file, then _set_change_ext_vnf_connectivity_op_config is considered as a private

14169 method. Backends looking to populate this variable should

14170 do so via calling thisObj._set_change_ext_vnf_connectivity_op_config() directly.

14171

14172 YANG Description: Configuration parameters for the

14173 ChangeExtVnfConnectivity operation.

14174 """

14175 if hasattr(v, "_utype"):

14176 v = v._utype(v)

14177 try:

14178 t = YANGDynClass(v,base=yc_change_ext_vnf_connectivity_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_change_ext_vnf_connectivity_op_config, is_container='container', yang_name="change-ext-vnf-connectivity-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

14179 except (TypeError, ValueError):

14180 raise ValueError({

14181 'error-string': """change_ext_vnf_connectivity_op_config must be of a type compatible with container""",

14182 'defined-type': "container",

14183 'generated-type': """YANGDynClass(base=yc_change_ext_vnf_connectivity_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_change_ext_vnf_connectivity_op_config, is_container='container', yang_name="change-ext-vnf-connectivity-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

14184 })

14185

14186 self.__change_ext_vnf_connectivity_op_config = t

14187 if hasattr(self, '_set'):

14188 self._set()

14189

14190 def _unset_change_ext_vnf_connectivity_op_config(self):

14191 self.__change_ext_vnf_connectivity_op_config = YANGDynClass(base=yc_change_ext_vnf_connectivity_op_config_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration_change_ext_vnf_connectivity_op_config, is_container='container', yang_name="change-ext-vnf-connectivity-op-config", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

14192

14193 instantiate_vnf_op_config = __builtin__.property(_get_instantiate_vnf_op_config, _set_instantiate_vnf_op_config)

14194 scale_vnf_op_config = __builtin__.property(_get_scale_vnf_op_config, _set_scale_vnf_op_config)

14195 scale_vnf_to_level_op_config = __builtin__.property(_get_scale_vnf_to_level_op_config, _set_scale_vnf_to_level_op_config)

14196 heal_vnf_op_config = __builtin__.property(_get_heal_vnf_op_config, _set_heal_vnf_op_config)

14197 terminate_vnf_op_config = __builtin__.property(_get_terminate_vnf_op_config, _set_terminate_vnf_op_config)

14198 operate_vnf_op_config = __builtin__.property(_get_operate_vnf_op_config, _set_operate_vnf_op_config)

14199 change_vnf_flavour_op_config = __builtin__.property(_get_change_vnf_flavour_op_config, _set_change_vnf_flavour_op_config)

14200 change_ext_vnf_connectivity_op_config = __builtin__.property(_get_change_ext_vnf_connectivity_op_config, _set_change_ext_vnf_connectivity_op_config)

14201

14202

14203 _pyangbind_elements = OrderedDict([('instantiate_vnf_op_config', instantiate_vnf_op_config), ('scale_vnf_op_config', scale_vnf_op_config), ('scale_vnf_to_level_op_config', scale_vnf_to_level_op_config), ('heal_vnf_op_config', heal_vnf_op_config), ('terminate_vnf_op_config', terminate_vnf_op_config), ('operate_vnf_op_config', operate_vnf_op_config), ('change_vnf_flavour_op_config', change_vnf_flavour_op_config), ('change_ext_vnf_connectivity_op_config', change_ext_vnf_connectivity_op_config), ])

14204

14205

14206 class yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_vnfd_df_affinity_or_anti_affinity_group(PybindBase):

14207 """

14208 This class was auto-generated by the PythonClass plugin for PYANG

14209 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/affinity-or-anti-affinity-group. Each member element of

14210 the container is represented as a class variable - with a specific

14211 YANG type.

14212

14213 YANG Description: The AffinityOrAntiAffinityGroup describes the affinity

14214 or anti-affinity relationship applicable between the

14215 virtualization containers to be created based on

14216 different VDUs, or between internal VLs to be created

14217 based on different VnfVirtualLinkDesc(s).

14218

14219 Per VNF, the affinity/anti-affinity rules defined using

14220 this information element, using the

14221 LocalAffinityOrAntiAffinityRule information element, and

14222 using the placement constraints in the

14223 GrantLifecycleOperation as defined in ETSI GS NFV-IFA

14224 007 [i.3] should be conflict-free. In case of conflicts,

14225 the placement constraints in the

14226 GrantLifecycleOperation shall take precedence.

14227 """

14228 __slots__ = ('_path_helper', '_extmethods', '__id','__type','__scope',)

14229

14230 _yang_name = 'affinity-or-anti-affinity-group'

14231 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

14232

14233 _pybind_generated_by = 'container'

14234

14235 def __init__(self, *args, **kwargs):

14236

14237 self._path_helper = False

14238

14239 self._extmethods = False

14240 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

14241 self.__type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'affinity': {}, 'anti-affinity': {}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-type', is_config=True)

14242 self.__scope = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'nfvi-node': {}, 'zone-group': {}, 'zone': {}, 'nfvi-pop': {}},), is_leaf=True, yang_name="scope", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-scope', is_config=True)

14243

14244 load = kwargs.pop("load", None)

14245 if args:

14246 if len(args) > 1:

14247 raise TypeError("cannot create a YANG container with >1 argument")

14248 all_attr = True

14249 for e in self._pyangbind_elements:

14250 if not hasattr(args[0], e):

14251 all_attr = False

14252 break

14253 if not all_attr:

14254 raise ValueError("Supplied object did not have the correct attributes")

14255 for e in self._pyangbind_elements:

14256 nobj = getattr(args[0], e)

14257 if nobj._changed() is False:

14258 continue

14259 setmethod = getattr(self, "_set_%s" % e)

14260 if load is None:

14261 setmethod(getattr(args[0], e))

14262 else:

14263 setmethod(getattr(args[0], e), load=load)

14264

14265 def _path(self):

14266 if hasattr(self, "_parent"):

14267 return self._parent._path()+[self._yang_name]

14268 else:

14269 return ['nsd', 'vnfd', 'df', 'affinity-or-anti-affinity-group']

14270

14271 def _get_id(self):

14272 """

14273 Getter method for id, mapped from YANG variable /nsd/vnfd/df/affinity_or_anti_affinity_group/id (string)

14274

14275 YANG Description: Identifies an affinity or anti-affinity group to which

14276 the affinity or anti-affinity rule applies.

14277 """

14278 return self.__id

14279

14280 def _set_id(self, v, load=False):

14281 """

14282 Setter method for id, mapped from YANG variable /nsd/vnfd/df/affinity_or_anti_affinity_group/id (string)

14283 If this variable is read-only (config: false) in the

14284 source YANG file, then _set_id is considered as a private

14285 method. Backends looking to populate this variable should

14286 do so via calling thisObj._set_id() directly.

14287

14288 YANG Description: Identifies an affinity or anti-affinity group to which

14289 the affinity or anti-affinity rule applies.

14290 """

14291 parent = getattr(self, "_parent", None)

14292 if parent is not None and load is False:

14293 raise AttributeError("Cannot set keys directly when" +

14294 " within an instantiated list")

14295

14296 if hasattr(v, "_utype"):

14297 v = v._utype(v)

14298 try:

14299 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

14300 except (TypeError, ValueError):

14301 raise ValueError({

14302 'error-string': """id must be of a type compatible with string""",

14303 'defined-type': "string",

14304 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

14305 })

14306

14307 self.__id = t

14308 if hasattr(self, '_set'):

14309 self._set()

14310

14311 def _unset_id(self):

14312 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

14313

14314

14315 def _get_type(self):

14316 """

14317 Getter method for type, mapped from YANG variable /nsd/vnfd/df/affinity_or_anti_affinity_group/type (affinity-type)

14318

14319 YANG Description: Specifies whether the rule is an affinity rule or an

14320 anti-affinity rule.

14321 """

14322 return self.__type

14323

14324 def _set_type(self, v, load=False):

14325 """

14326 Setter method for type, mapped from YANG variable /nsd/vnfd/df/affinity_or_anti_affinity_group/type (affinity-type)

14327 If this variable is read-only (config: false) in the

14328 source YANG file, then _set_type is considered as a private

14329 method. Backends looking to populate this variable should

14330 do so via calling thisObj._set_type() directly.

14331

14332 YANG Description: Specifies whether the rule is an affinity rule or an

14333 anti-affinity rule.

14334 """

14335 if hasattr(v, "_utype"):

14336 v = v._utype(v)

14337 try:

14338 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'affinity': {}, 'anti-affinity': {}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-type', is_config=True)

14339 except (TypeError, ValueError):

14340 raise ValueError({

14341 'error-string': """type must be of a type compatible with affinity-type""",

14342 'defined-type': "etsi-nfv-nsd:affinity-type",

14343 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'affinity': {}, 'anti-affinity': {}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-type', is_config=True)""",

14344 })

14345

14346 self.__type = t

14347 if hasattr(self, '_set'):

14348 self._set()

14349

14350 def _unset_type(self):

14351 self.__type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'affinity': {}, 'anti-affinity': {}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-type', is_config=True)

14352

14353

14354 def _get_scope(self):

14355 """

14356 Getter method for scope, mapped from YANG variable /nsd/vnfd/df/affinity_or_anti_affinity_group/scope (affinity-scope)

14357

14358 YANG Description: Specifies the scope of the rule, possible values are

14359'NFVI-PoP', 'Zone', 'ZoneGroup', 'NFVI-node'.

14360 """

14361 return self.__scope

14362

14363 def _set_scope(self, v, load=False):

14364 """

14365 Setter method for scope, mapped from YANG variable /nsd/vnfd/df/affinity_or_anti_affinity_group/scope (affinity-scope)

14366 If this variable is read-only (config: false) in the

14367 source YANG file, then _set_scope is considered as a private

14368 method. Backends looking to populate this variable should

14369 do so via calling thisObj._set_scope() directly.

14370

14371 YANG Description: Specifies the scope of the rule, possible values are

14372'NFVI-PoP', 'Zone', 'ZoneGroup', 'NFVI-node'.

14373 """

14374 if hasattr(v, "_utype"):

14375 v = v._utype(v)

14376 try:

14377 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'nfvi-node': {}, 'zone-group': {}, 'zone': {}, 'nfvi-pop': {}},), is_leaf=True, yang_name="scope", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-scope', is_config=True)

14378 except (TypeError, ValueError):

14379 raise ValueError({

14380 'error-string': """scope must be of a type compatible with affinity-scope""",

14381 'defined-type': "etsi-nfv-nsd:affinity-scope",

14382 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'nfvi-node': {}, 'zone-group': {}, 'zone': {}, 'nfvi-pop': {}},), is_leaf=True, yang_name="scope", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-scope', is_config=True)""",

14383 })

14384

14385 self.__scope = t

14386 if hasattr(self, '_set'):

14387 self._set()

14388

14389 def _unset_scope(self):

14390 self.__scope = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'nfvi-node': {}, 'zone-group': {}, 'zone': {}, 'nfvi-pop': {}},), is_leaf=True, yang_name="scope", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-scope', is_config=True)

14391

14392 id = __builtin__.property(_get_id, _set_id)

14393 type = __builtin__.property(_get_type, _set_type)

14394 scope = __builtin__.property(_get_scope, _set_scope)

14395

14396

14397 _pyangbind_elements = OrderedDict([('id', id), ('type', type), ('scope', scope), ])

14398

14399

14400 class yc_indicator_etsi_nfv_nsd__nsd_vnfd_df_indicator(PybindBase):

14401 """

14402 This class was auto-generated by the PythonClass plugin for PYANG

14403 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/indicator. Each member element of

14404 the container is represented as a class variable - with a specific

14405 YANG type.

14406

14407 YANG Description: Declares the VNF indicators that are supported by this

14408 VNF (specific to this DF).

14409 """

14410 __slots__ = ('_path_helper', '_extmethods', '__id','__name','__indicator_value','__source',)

14411

14412 _yang_name = 'indicator'

14413 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

14414

14415 _pybind_generated_by = 'container'

14416

14417 def __init__(self, *args, **kwargs):

14418

14419 self._path_helper = False

14420

14421 self._extmethods = False

14422 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

14423 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

14424 self.__indicator_value = YANGDynClass(base=str, is_leaf=True, yang_name="indicator-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

14425 self.__source = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'vnf': {}, 'em': {}, 'both': {}},), is_leaf=True, yang_name="source", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

14426

14427 load = kwargs.pop("load", None)

14428 if args:

14429 if len(args) > 1:

14430 raise TypeError("cannot create a YANG container with >1 argument")

14431 all_attr = True

14432 for e in self._pyangbind_elements:

14433 if not hasattr(args[0], e):

14434 all_attr = False

14435 break

14436 if not all_attr:

14437 raise ValueError("Supplied object did not have the correct attributes")

14438 for e in self._pyangbind_elements:

14439 nobj = getattr(args[0], e)

14440 if nobj._changed() is False:

14441 continue

14442 setmethod = getattr(self, "_set_%s" % e)

14443 if load is None:

14444 setmethod(getattr(args[0], e))

14445 else:

14446 setmethod(getattr(args[0], e), load=load)

14447

14448 def _path(self):

14449 if hasattr(self, "_parent"):

14450 return self._parent._path()+[self._yang_name]

14451 else:

14452 return ['nsd', 'vnfd', 'df', 'indicator']

14453

14454 def _get_id(self):

14455 """

14456 Getter method for id, mapped from YANG variable /nsd/vnfd/df/indicator/id (string)

14457

14458 YANG Description: Unique identifier.

14459 """

14460 return self.__id

14461

14462 def _set_id(self, v, load=False):

14463 """

14464 Setter method for id, mapped from YANG variable /nsd/vnfd/df/indicator/id (string)

14465 If this variable is read-only (config: false) in the

14466 source YANG file, then _set_id is considered as a private

14467 method. Backends looking to populate this variable should

14468 do so via calling thisObj._set_id() directly.

14469

14470 YANG Description: Unique identifier.

14471 """

14472 parent = getattr(self, "_parent", None)

14473 if parent is not None and load is False:

14474 raise AttributeError("Cannot set keys directly when" +

14475 " within an instantiated list")

14476

14477 if hasattr(v, "_utype"):

14478 v = v._utype(v)

14479 try:

14480 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

14481 except (TypeError, ValueError):

14482 raise ValueError({

14483 'error-string': """id must be of a type compatible with string""",

14484 'defined-type': "string",

14485 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

14486 })

14487

14488 self.__id = t

14489 if hasattr(self, '_set'):

14490 self._set()

14491

14492 def _unset_id(self):

14493 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

14494

14495

14496 def _get_name(self):

14497 """

14498 Getter method for name, mapped from YANG variable /nsd/vnfd/df/indicator/name (string)

14499

14500 YANG Description: The human readable name of the VnfIndicator.

14501 """

14502 return self.__name

14503

14504 def _set_name(self, v, load=False):

14505 """

14506 Setter method for name, mapped from YANG variable /nsd/vnfd/df/indicator/name (string)

14507 If this variable is read-only (config: false) in the

14508 source YANG file, then _set_name is considered as a private

14509 method. Backends looking to populate this variable should

14510 do so via calling thisObj._set_name() directly.

14511

14512 YANG Description: The human readable name of the VnfIndicator.

14513 """

14514 if hasattr(v, "_utype"):

14515 v = v._utype(v)

14516 try:

14517 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

14518 except (TypeError, ValueError):

14519 raise ValueError({

14520 'error-string': """name must be of a type compatible with string""",

14521 'defined-type': "string",

14522 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

14523 })

14524

14525 self.__name = t

14526 if hasattr(self, '_set'):

14527 self._set()

14528

14529 def _unset_name(self):

14530 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

14531

14532

14533 def _get_indicator_value(self):

14534 """

14535 Getter method for indicator_value, mapped from YANG variable /nsd/vnfd/df/indicator/indicator_value (string)

14536

14537 YANG Description: Defines the allowed values or value ranges of this

14538 indicator.

14539 """

14540 return self.__indicator_value

14541

14542 def _set_indicator_value(self, v, load=False):

14543 """

14544 Setter method for indicator_value, mapped from YANG variable /nsd/vnfd/df/indicator/indicator_value (string)

14545 If this variable is read-only (config: false) in the

14546 source YANG file, then _set_indicator_value is considered as a private

14547 method. Backends looking to populate this variable should

14548 do so via calling thisObj._set_indicator_value() directly.

14549

14550 YANG Description: Defines the allowed values or value ranges of this

14551 indicator.

14552 """

14553 if hasattr(v, "_utype"):

14554 v = v._utype(v)

14555 try:

14556 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="indicator-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

14557 except (TypeError, ValueError):

14558 raise ValueError({

14559 'error-string': """indicator_value must be of a type compatible with string""",

14560 'defined-type': "string",

14561 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="indicator-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

14562 })

14563

14564 self.__indicator_value = t

14565 if hasattr(self, '_set'):

14566 self._set()

14567

14568 def _unset_indicator_value(self):

14569 self.__indicator_value = YANGDynClass(base=str, is_leaf=True, yang_name="indicator-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

14570

14571

14572 def _get_source(self):

14573 """

14574 Getter method for source, mapped from YANG variable /nsd/vnfd/df/indicator/source (enumeration)

14575

14576 YANG Description: Describe the source of the indicator. The possible

14577 values are:

14578• VNF.

14579• EM.

14580• Both.

14581

14582 This tells the consumer where to send the subscription

14583 request.

14584 """

14585 return self.__source

14586

14587 def _set_source(self, v, load=False):

14588 """

14589 Setter method for source, mapped from YANG variable /nsd/vnfd/df/indicator/source (enumeration)

14590 If this variable is read-only (config: false) in the

14591 source YANG file, then _set_source is considered as a private

14592 method. Backends looking to populate this variable should

14593 do so via calling thisObj._set_source() directly.

14594

14595 YANG Description: Describe the source of the indicator. The possible

14596 values are:

14597• VNF.

14598• EM.

14599• Both.

14600

14601 This tells the consumer where to send the subscription

14602 request.

14603 """

14604 if hasattr(v, "_utype"):

14605 v = v._utype(v)

14606 try:

14607 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'vnf': {}, 'em': {}, 'both': {}},), is_leaf=True, yang_name="source", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

14608 except (TypeError, ValueError):

14609 raise ValueError({

14610 'error-string': """source must be of a type compatible with enumeration""",

14611 'defined-type': "etsi-nfv-nsd:enumeration",

14612 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'vnf': {}, 'em': {}, 'both': {}},), is_leaf=True, yang_name="source", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)""",

14613 })

14614

14615 self.__source = t

14616 if hasattr(self, '_set'):

14617 self._set()

14618

14619 def _unset_source(self):

14620 self.__source = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'vnf': {}, 'em': {}, 'both': {}},), is_leaf=True, yang_name="source", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

14621

14622 id = __builtin__.property(_get_id, _set_id)

14623 name = __builtin__.property(_get_name, _set_name)

14624 indicator_value = __builtin__.property(_get_indicator_value, _set_indicator_value)

14625 source = __builtin__.property(_get_source, _set_source)

14626

14627

14628 _pyangbind_elements = OrderedDict([('id', id), ('name', name), ('indicator_value', indicator_value), ('source', source), ])

14629

14630

14631 class yc_interface_details_etsi_nfv_nsd__nsd_vnfd_df_supported_vnf_interfaces_interface_details(PybindBase):

14632 """

14633 This class was auto-generated by the PythonClass plugin for PYANG

14634 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/supported-vnf-interfaces/interface-details. Each member element of

14635 the container is represented as a class variable - with a specific

14636 YANG type.

14637 """

14638 __slots__ = ('_path_helper', '_extmethods', '__key','__value',)

14639

14640 _yang_name = 'interface-details'

14641 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

14642

14643 _pybind_generated_by = 'container'

14644

14645 def __init__(self, *args, **kwargs):

14646

14647 self._path_helper = False

14648

14649 self._extmethods = False

14650 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

14651 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

14652

14653 load = kwargs.pop("load", None)

14654 if args:

14655 if len(args) > 1:

14656 raise TypeError("cannot create a YANG container with >1 argument")

14657 all_attr = True

14658 for e in self._pyangbind_elements:

14659 if not hasattr(args[0], e):

14660 all_attr = False

14661 break

14662 if not all_attr:

14663 raise ValueError("Supplied object did not have the correct attributes")

14664 for e in self._pyangbind_elements:

14665 nobj = getattr(args[0], e)

14666 if nobj._changed() is False:

14667 continue

14668 setmethod = getattr(self, "_set_%s" % e)

14669 if load is None:

14670 setmethod(getattr(args[0], e))

14671 else:

14672 setmethod(getattr(args[0], e), load=load)

14673

14674 def _path(self):

14675 if hasattr(self, "_parent"):

14676 return self._parent._path()+[self._yang_name]

14677 else:

14678 return ['nsd', 'vnfd', 'df', 'supported-vnf-interfaces', 'interface-details']

14679

14680 def _get_key(self):

14681 """

14682 Getter method for key, mapped from YANG variable /nsd/vnfd/df/supported_vnf_interfaces/interface_details/key (string)

14683 """

14684 return self.__key

14685

14686 def _set_key(self, v, load=False):

14687 """

14688 Setter method for key, mapped from YANG variable /nsd/vnfd/df/supported_vnf_interfaces/interface_details/key (string)

14689 If this variable is read-only (config: false) in the

14690 source YANG file, then _set_key is considered as a private

14691 method. Backends looking to populate this variable should

14692 do so via calling thisObj._set_key() directly.

14693 """

14694 parent = getattr(self, "_parent", None)

14695 if parent is not None and load is False:

14696 raise AttributeError("Cannot set keys directly when" +

14697 " within an instantiated list")

14698

14699 if hasattr(v, "_utype"):

14700 v = v._utype(v)

14701 try:

14702 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

14703 except (TypeError, ValueError):

14704 raise ValueError({

14705 'error-string': """key must be of a type compatible with string""",

14706 'defined-type': "string",

14707 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

14708 })

14709

14710 self.__key = t

14711 if hasattr(self, '_set'):

14712 self._set()

14713

14714 def _unset_key(self):

14715 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

14716

14717

14718 def _get_value(self):

14719 """

14720 Getter method for value, mapped from YANG variable /nsd/vnfd/df/supported_vnf_interfaces/interface_details/value (string)

14721 """

14722 return self.__value

14723

14724 def _set_value(self, v, load=False):

14725 """

14726 Setter method for value, mapped from YANG variable /nsd/vnfd/df/supported_vnf_interfaces/interface_details/value (string)

14727 If this variable is read-only (config: false) in the

14728 source YANG file, then _set_value is considered as a private

14729 method. Backends looking to populate this variable should

14730 do so via calling thisObj._set_value() directly.

14731 """

14732 if hasattr(v, "_utype"):

14733 v = v._utype(v)

14734 try:

14735 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

14736 except (TypeError, ValueError):

14737 raise ValueError({

14738 'error-string': """value must be of a type compatible with string""",

14739 'defined-type': "string",

14740 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

14741 })

14742

14743 self.__value = t

14744 if hasattr(self, '_set'):

14745 self._set()

14746

14747 def _unset_value(self):

14748 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

14749

14750 key = __builtin__.property(_get_key, _set_key)

14751 value = __builtin__.property(_get_value, _set_value)

14752

14753

14754 _pyangbind_elements = OrderedDict([('key', key), ('value', value), ])

14755

14756

14757 class yc_supported_vnf_interfaces_etsi_nfv_nsd__nsd_vnfd_df_supported_vnf_interfaces(PybindBase):

14758 """

14759 This class was auto-generated by the PythonClass plugin for PYANG

14760 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/supported-vnf-interfaces. Each member element of

14761 the container is represented as a class variable - with a specific

14762 YANG type.

14763

14764 YANG Description: Indicates which interfaces the VNF produces and provides

14765 additional details on how to access the interface

14766 endpoints.

14767 """

14768 __slots__ = ('_path_helper', '_extmethods', '__name','__cpd_id','__interface_details',)

14769

14770 _yang_name = 'supported-vnf-interfaces'

14771 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

14772

14773 _pybind_generated_by = 'container'

14774

14775 def __init__(self, *args, **kwargs):

14776

14777 self._path_helper = False

14778

14779 self._extmethods = False

14780 self.__name = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'vnf-configuration': {}, 'vnf-indicator': {}},), is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

14781 self.__cpd_id = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

14782 self.__interface_details = YANGDynClass(base=YANGListType("key",yc_interface_details_etsi_nfv_nsd__nsd_vnfd_df_supported_vnf_interfaces_interface_details, yang_name="interface-details", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="interface-details", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

14783

14784 load = kwargs.pop("load", None)

14785 if args:

14786 if len(args) > 1:

14787 raise TypeError("cannot create a YANG container with >1 argument")

14788 all_attr = True

14789 for e in self._pyangbind_elements:

14790 if not hasattr(args[0], e):

14791 all_attr = False

14792 break

14793 if not all_attr:

14794 raise ValueError("Supplied object did not have the correct attributes")

14795 for e in self._pyangbind_elements:

14796 nobj = getattr(args[0], e)

14797 if nobj._changed() is False:

14798 continue

14799 setmethod = getattr(self, "_set_%s" % e)

14800 if load is None:

14801 setmethod(getattr(args[0], e))

14802 else:

14803 setmethod(getattr(args[0], e), load=load)

14804

14805 def _path(self):

14806 if hasattr(self, "_parent"):

14807 return self._parent._path()+[self._yang_name]

14808 else:

14809 return ['nsd', 'vnfd', 'df', 'supported-vnf-interfaces']

14810

14811 def _get_name(self):

14812 """

14813 Getter method for name, mapped from YANG variable /nsd/vnfd/df/supported_vnf_interfaces/name (enumeration)

14814

14815 YANG Description: Identifies an interface produced by the VNF. Valid

14816 values:

14817- VNF_CONFIGURATION

14818- VNF_INDICATOR

14819 """

14820 return self.__name

14821

14822 def _set_name(self, v, load=False):

14823 """

14824 Setter method for name, mapped from YANG variable /nsd/vnfd/df/supported_vnf_interfaces/name (enumeration)

14825 If this variable is read-only (config: false) in the

14826 source YANG file, then _set_name is considered as a private

14827 method. Backends looking to populate this variable should

14828 do so via calling thisObj._set_name() directly.

14829

14830 YANG Description: Identifies an interface produced by the VNF. Valid

14831 values:

14832- VNF_CONFIGURATION

14833- VNF_INDICATOR

14834 """

14835 parent = getattr(self, "_parent", None)

14836 if parent is not None and load is False:

14837 raise AttributeError("Cannot set keys directly when" +

14838 " within an instantiated list")

14839

14840 if hasattr(v, "_utype"):

14841 v = v._utype(v)

14842 try:

14843 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'vnf-configuration': {}, 'vnf-indicator': {}},), is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

14844 except (TypeError, ValueError):

14845 raise ValueError({

14846 'error-string': """name must be of a type compatible with enumeration""",

14847 'defined-type': "etsi-nfv-nsd:enumeration",

14848 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'vnf-configuration': {}, 'vnf-indicator': {}},), is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)""",

14849 })

14850

14851 self.__name = t

14852 if hasattr(self, '_set'):

14853 self._set()

14854

14855 def _unset_name(self):

14856 self.__name = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'vnf-configuration': {}, 'vnf-indicator': {}},), is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

14857

14858

14859 def _get_cpd_id(self):

14860 """

14861 Getter method for cpd_id, mapped from YANG variable /nsd/vnfd/df/supported_vnf_interfaces/cpd_id (leafref)

14862

14863 YANG Description: References one or more CPDs from which to instantiate

14864 external CPs through which interface endpoints on the

14865 VNF side can be reached by the VNFM.

14866 """

14867 return self.__cpd_id

14868

14869 def _set_cpd_id(self, v, load=False):

14870 """

14871 Setter method for cpd_id, mapped from YANG variable /nsd/vnfd/df/supported_vnf_interfaces/cpd_id (leafref)

14872 If this variable is read-only (config: false) in the

14873 source YANG file, then _set_cpd_id is considered as a private

14874 method. Backends looking to populate this variable should

14875 do so via calling thisObj._set_cpd_id() directly.

14876

14877 YANG Description: References one or more CPDs from which to instantiate

14878 external CPs through which interface endpoints on the

14879 VNF side can be reached by the VNFM.

14880 """

14881 if hasattr(v, "_utype"):

14882 v = v._utype(v)

14883 try:

14884 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

14885 except (TypeError, ValueError):

14886 raise ValueError({

14887 'error-string': """cpd_id must be of a type compatible with leafref""",

14888 'defined-type': "leafref",

14889 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

14890 })

14891

14892 self.__cpd_id = t

14893 if hasattr(self, '_set'):

14894 self._set()

14895

14896 def _unset_cpd_id(self):

14897 self.__cpd_id = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

14898

14899

14900 def _get_interface_details(self):

14901 """

14902 Getter method for interface_details, mapped from YANG variable /nsd/vnfd/df/supported_vnf_interfaces/interface_details (list)

14903 """

14904 return self.__interface_details

14905

14906 def _set_interface_details(self, v, load=False):

14907 """

14908 Setter method for interface_details, mapped from YANG variable /nsd/vnfd/df/supported_vnf_interfaces/interface_details (list)

14909 If this variable is read-only (config: false) in the

14910 source YANG file, then _set_interface_details is considered as a private

14911 method. Backends looking to populate this variable should

14912 do so via calling thisObj._set_interface_details() directly.

14913 """

14914 if hasattr(v, "_utype"):

14915 v = v._utype(v)

14916 try:

14917 t = YANGDynClass(v,base=YANGListType("key",yc_interface_details_etsi_nfv_nsd__nsd_vnfd_df_supported_vnf_interfaces_interface_details, yang_name="interface-details", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="interface-details", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

14918 except (TypeError, ValueError):

14919 raise ValueError({

14920 'error-string': """interface_details must be of a type compatible with list""",

14921 'defined-type': "list",

14922 'generated-type': """YANGDynClass(base=YANGListType("key",yc_interface_details_etsi_nfv_nsd__nsd_vnfd_df_supported_vnf_interfaces_interface_details, yang_name="interface-details", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="interface-details", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

14923 })

14924

14925 self.__interface_details = t

14926 if hasattr(self, '_set'):

14927 self._set()

14928

14929 def _unset_interface_details(self):

14930 self.__interface_details = YANGDynClass(base=YANGListType("key",yc_interface_details_etsi_nfv_nsd__nsd_vnfd_df_supported_vnf_interfaces_interface_details, yang_name="interface-details", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="interface-details", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

14931

14932 name = __builtin__.property(_get_name, _set_name)

14933 cpd_id = __builtin__.property(_get_cpd_id, _set_cpd_id)

14934 interface_details = __builtin__.property(_get_interface_details, _set_interface_details)

14935

14936

14937 _pyangbind_elements = OrderedDict([('name', name), ('cpd_id', cpd_id), ('interface_details', interface_details), ])

14938

14939

14940 class yc_monitoring_parameter_etsi_nfv_nsd__nsd_vnfd_df_monitoring_parameter(PybindBase):

14941 """

14942 This class was auto-generated by the PythonClass plugin for PYANG

14943 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/monitoring-parameter. Each member element of

14944 the container is represented as a class variable - with a specific

14945 YANG type.

14946

14947 YANG Description: Defines the virtualised resources monitoring parameters

14948 on VNF level.

14949 """

14950 __slots__ = ('_path_helper', '_extmethods', '__id','__name','__performance_metric','__collection_period',)

14951

14952 _yang_name = 'monitoring-parameter'

14953 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

14954

14955 _pybind_generated_by = 'container'

14956

14957 def __init__(self, *args, **kwargs):

14958

14959 self._path_helper = False

14960

14961 self._extmethods = False

14962 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

14963 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

14964 self.__performance_metric = YANGDynClass(base=str, is_leaf=True, yang_name="performance-metric", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

14965 self.__collection_period = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="collection-period", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

14966

14967 load = kwargs.pop("load", None)

14968 if args:

14969 if len(args) > 1:

14970 raise TypeError("cannot create a YANG container with >1 argument")

14971 all_attr = True

14972 for e in self._pyangbind_elements:

14973 if not hasattr(args[0], e):

14974 all_attr = False

14975 break

14976 if not all_attr:

14977 raise ValueError("Supplied object did not have the correct attributes")

14978 for e in self._pyangbind_elements:

14979 nobj = getattr(args[0], e)

14980 if nobj._changed() is False:

14981 continue

14982 setmethod = getattr(self, "_set_%s" % e)

14983 if load is None:

14984 setmethod(getattr(args[0], e))

14985 else:

14986 setmethod(getattr(args[0], e), load=load)

14987

14988 def _path(self):

14989 if hasattr(self, "_parent"):

14990 return self._parent._path()+[self._yang_name]

14991 else:

14992 return ['nsd', 'vnfd', 'df', 'monitoring-parameter']

14993

14994 def _get_id(self):

14995 """

14996 Getter method for id, mapped from YANG variable /nsd/vnfd/df/monitoring_parameter/id (string)

14997

14998 YANG Description: Unique identifier of the monitoring parameter.

14999 """

15000 return self.__id

15001

15002 def _set_id(self, v, load=False):

15003 """

15004 Setter method for id, mapped from YANG variable /nsd/vnfd/df/monitoring_parameter/id (string)

15005 If this variable is read-only (config: false) in the

15006 source YANG file, then _set_id is considered as a private

15007 method. Backends looking to populate this variable should

15008 do so via calling thisObj._set_id() directly.

15009

15010 YANG Description: Unique identifier of the monitoring parameter.

15011 """

15012 parent = getattr(self, "_parent", None)

15013 if parent is not None and load is False:

15014 raise AttributeError("Cannot set keys directly when" +

15015 " within an instantiated list")

15016

15017 if hasattr(v, "_utype"):

15018 v = v._utype(v)

15019 try:

15020 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

15021 except (TypeError, ValueError):

15022 raise ValueError({

15023 'error-string': """id must be of a type compatible with string""",

15024 'defined-type': "string",

15025 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

15026 })

15027

15028 self.__id = t

15029 if hasattr(self, '_set'):

15030 self._set()

15031

15032 def _unset_id(self):

15033 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

15034

15035

15036 def _get_name(self):

15037 """

15038 Getter method for name, mapped from YANG variable /nsd/vnfd/df/monitoring_parameter/name (string)

15039

15040 YANG Description: Human readable name of the monitoring parameter.

15041 """

15042 return self.__name

15043

15044 def _set_name(self, v, load=False):

15045 """

15046 Setter method for name, mapped from YANG variable /nsd/vnfd/df/monitoring_parameter/name (string)

15047 If this variable is read-only (config: false) in the

15048 source YANG file, then _set_name is considered as a private

15049 method. Backends looking to populate this variable should

15050 do so via calling thisObj._set_name() directly.

15051

15052 YANG Description: Human readable name of the monitoring parameter.

15053 """

15054 if hasattr(v, "_utype"):

15055 v = v._utype(v)

15056 try:

15057 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

15058 except (TypeError, ValueError):

15059 raise ValueError({

15060 'error-string': """name must be of a type compatible with string""",

15061 'defined-type': "string",

15062 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

15063 })

15064

15065 self.__name = t

15066 if hasattr(self, '_set'):

15067 self._set()

15068

15069 def _unset_name(self):

15070 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

15071

15072

15073 def _get_performance_metric(self):

15074 """

15075 Getter method for performance_metric, mapped from YANG variable /nsd/vnfd/df/monitoring_parameter/performance_metric (string)

15076

15077 YANG Description: Performance metric that is monitored. This attribute shall

15078 contain the related 'Measurement Name' value as defined in

15079 clause 7.2 of ETSI GS NFV-IFA 027

15080 """

15081 return self.__performance_metric

15082

15083 def _set_performance_metric(self, v, load=False):

15084 """

15085 Setter method for performance_metric, mapped from YANG variable /nsd/vnfd/df/monitoring_parameter/performance_metric (string)

15086 If this variable is read-only (config: false) in the

15087 source YANG file, then _set_performance_metric is considered as a private

15088 method. Backends looking to populate this variable should

15089 do so via calling thisObj._set_performance_metric() directly.

15090

15091 YANG Description: Performance metric that is monitored. This attribute shall

15092 contain the related 'Measurement Name' value as defined in

15093 clause 7.2 of ETSI GS NFV-IFA 027

15094 """

15095 if hasattr(v, "_utype"):

15096 v = v._utype(v)

15097 try:

15098 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="performance-metric", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

15099 except (TypeError, ValueError):

15100 raise ValueError({

15101 'error-string': """performance_metric must be of a type compatible with string""",

15102 'defined-type': "string",

15103 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="performance-metric", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

15104 })

15105

15106 self.__performance_metric = t

15107 if hasattr(self, '_set'):

15108 self._set()

15109

15110 def _unset_performance_metric(self):

15111 self.__performance_metric = YANGDynClass(base=str, is_leaf=True, yang_name="performance-metric", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

15112

15113

15114 def _get_collection_period(self):

15115 """

15116 Getter method for collection_period, mapped from YANG variable /nsd/vnfd/df/monitoring_parameter/collection_period (uint64)

15117

15118 YANG Description: An attribute that describes the recommended periodicity at

15119 which to collect the performance information. VNFM determines

15120 if this parameter is considered.

15121

15122 The vendor may provide this information as a guidance for

15123 creating PmJobs if needed.

15124 """

15125 return self.__collection_period

15126

15127 def _set_collection_period(self, v, load=False):

15128 """

15129 Setter method for collection_period, mapped from YANG variable /nsd/vnfd/df/monitoring_parameter/collection_period (uint64)

15130 If this variable is read-only (config: false) in the

15131 source YANG file, then _set_collection_period is considered as a private

15132 method. Backends looking to populate this variable should

15133 do so via calling thisObj._set_collection_period() directly.

15134

15135 YANG Description: An attribute that describes the recommended periodicity at

15136 which to collect the performance information. VNFM determines

15137 if this parameter is considered.

15138

15139 The vendor may provide this information as a guidance for

15140 creating PmJobs if needed.

15141 """

15142 if hasattr(v, "_utype"):

15143 v = v._utype(v)

15144 try:

15145 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="collection-period", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

15146 except (TypeError, ValueError):

15147 raise ValueError({

15148 'error-string': """collection_period must be of a type compatible with uint64""",

15149 'defined-type': "uint64",

15150 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="collection-period", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)""",

15151 })

15152

15153 self.__collection_period = t

15154 if hasattr(self, '_set'):

15155 self._set()

15156

15157 def _unset_collection_period(self):

15158 self.__collection_period = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="collection-period", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

15159

15160 id = __builtin__.property(_get_id, _set_id)

15161 name = __builtin__.property(_get_name, _set_name)

15162 performance_metric = __builtin__.property(_get_performance_metric, _set_performance_metric)

15163 collection_period = __builtin__.property(_get_collection_period, _set_collection_period)

15164

15165

15166 _pyangbind_elements = OrderedDict([('id', id), ('name', name), ('performance_metric', performance_metric), ('collection_period', collection_period), ])

15167

15168

15169 class yc_vdu_delta_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect_aspect_delta_details_deltas_vdu_delta(PybindBase):

15170 """

15171 This class was auto-generated by the PythonClass plugin for PYANG

15172 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/scaling-aspect/aspect-delta-details/deltas/vdu-delta. Each member element of

15173 the container is represented as a class variable - with a specific

15174 YANG type.

15175

15176 YANG Description: The number of VNFC instances based on particular

15177 VDUs to be created or removed.

15178 """

15179 __slots__ = ('_path_helper', '_extmethods', '__id','__number_of_instances',)

15180

15181 _yang_name = 'vdu-delta'

15182 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

15183

15184 _pybind_generated_by = 'container'

15185

15186 def __init__(self, *args, **kwargs):

15187

15188 self._path_helper = False

15189

15190 self._extmethods = False

15191 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

15192 self.__number_of_instances = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['0..max']}), is_leaf=True, yang_name="number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

15193

15194 load = kwargs.pop("load", None)

15195 if args:

15196 if len(args) > 1:

15197 raise TypeError("cannot create a YANG container with >1 argument")

15198 all_attr = True

15199 for e in self._pyangbind_elements:

15200 if not hasattr(args[0], e):

15201 all_attr = False

15202 break

15203 if not all_attr:

15204 raise ValueError("Supplied object did not have the correct attributes")

15205 for e in self._pyangbind_elements:

15206 nobj = getattr(args[0], e)

15207 if nobj._changed() is False:

15208 continue

15209 setmethod = getattr(self, "_set_%s" % e)

15210 if load is None:

15211 setmethod(getattr(args[0], e))

15212 else:

15213 setmethod(getattr(args[0], e), load=load)

15214

15215 def _path(self):

15216 if hasattr(self, "_parent"):

15217 return self._parent._path()+[self._yang_name]

15218 else:

15219 return ['nsd', 'vnfd', 'df', 'scaling-aspect', 'aspect-delta-details', 'deltas', 'vdu-delta']

15220

15221 def _get_id(self):

15222 """

15223 Getter method for id, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/aspect_delta_details/deltas/vdu_delta/id (leafref)

15224

15225 YANG Description: Uniquely identifies a VDU.

15226 """

15227 return self.__id

15228

15229 def _set_id(self, v, load=False):

15230 """

15231 Setter method for id, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/aspect_delta_details/deltas/vdu_delta/id (leafref)

15232 If this variable is read-only (config: false) in the

15233 source YANG file, then _set_id is considered as a private

15234 method. Backends looking to populate this variable should

15235 do so via calling thisObj._set_id() directly.

15236

15237 YANG Description: Uniquely identifies a VDU.

15238 """

15239 parent = getattr(self, "_parent", None)

15240 if parent is not None and load is False:

15241 raise AttributeError("Cannot set keys directly when" +

15242 " within an instantiated list")

15243

15244 if hasattr(v, "_utype"):

15245 v = v._utype(v)

15246 try:

15247 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

15248 except (TypeError, ValueError):

15249 raise ValueError({

15250 'error-string': """id must be of a type compatible with leafref""",

15251 'defined-type': "leafref",

15252 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

15253 })

15254

15255 self.__id = t

15256 if hasattr(self, '_set'):

15257 self._set()

15258

15259 def _unset_id(self):

15260 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

15261

15262

15263 def _get_number_of_instances(self):

15264 """

15265 Getter method for number_of_instances, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/aspect_delta_details/deltas/vdu_delta/number_of_instances (uint32)

15266

15267 YANG Description: Number of instances of VNFC based on this VDU to

15268 deploy for an instantiation level or for a

15269 scaling delta. Shall be zero or greater.

15270 """

15271 return self.__number_of_instances

15272

15273 def _set_number_of_instances(self, v, load=False):

15274 """

15275 Setter method for number_of_instances, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/aspect_delta_details/deltas/vdu_delta/number_of_instances (uint32)

15276 If this variable is read-only (config: false) in the

15277 source YANG file, then _set_number_of_instances is considered as a private

15278 method. Backends looking to populate this variable should

15279 do so via calling thisObj._set_number_of_instances() directly.

15280

15281 YANG Description: Number of instances of VNFC based on this VDU to

15282 deploy for an instantiation level or for a

15283 scaling delta. Shall be zero or greater.

15284 """

15285 if hasattr(v, "_utype"):

15286 v = v._utype(v)

15287 try:

15288 t = YANGDynClass(v,base=RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['0..max']}), is_leaf=True, yang_name="number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

15289 except (TypeError, ValueError):

15290 raise ValueError({

15291 'error-string': """number_of_instances must be of a type compatible with uint32""",

15292 'defined-type': "uint32",

15293 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['0..max']}), is_leaf=True, yang_name="number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)""",

15294 })

15295

15296 self.__number_of_instances = t

15297 if hasattr(self, '_set'):

15298 self._set()

15299

15300 def _unset_number_of_instances(self):

15301 self.__number_of_instances = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['0..max']}), is_leaf=True, yang_name="number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

15302

15303 id = __builtin__.property(_get_id, _set_id)

15304 number_of_instances = __builtin__.property(_get_number_of_instances, _set_number_of_instances)

15305

15306

15307 _pyangbind_elements = OrderedDict([('id', id), ('number_of_instances', number_of_instances), ])

15308

15309

15310 class yc_bit_rate_requirements_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect_aspect_delta_details_deltas_virtual_link_bit_rate_delta_bit_rate_requirements(PybindBase):

15311 """

15312 This class was auto-generated by the PythonClass plugin for PYANG

15313 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/scaling-aspect/aspect-delta-details/deltas/virtual-link-bit-rate-delta/bit-rate-requirements. Each member element of

15314 the container is represented as a class variable - with a specific

15315 YANG type.

15316

15317 YANG Description: Bitrate requirements for an instantiation level

15318 or bitrate delta for a scaling step.

15319 """

15320 __slots__ = ('_path_helper', '_extmethods', '__root','__leaf',)

15321

15322 _yang_name = 'bit-rate-requirements'

15323 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

15324

15325 _pybind_generated_by = 'container'

15326

15327 def __init__(self, *args, **kwargs):

15328

15329 self._path_helper = False

15330

15331 self._extmethods = False

15332 self.__root = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="root", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

15333 self.__leaf = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="leaf", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

15334

15335 load = kwargs.pop("load", None)

15336 if args:

15337 if len(args) > 1:

15338 raise TypeError("cannot create a YANG container with >1 argument")

15339 all_attr = True

15340 for e in self._pyangbind_elements:

15341 if not hasattr(args[0], e):

15342 all_attr = False

15343 break

15344 if not all_attr:

15345 raise ValueError("Supplied object did not have the correct attributes")

15346 for e in self._pyangbind_elements:

15347 nobj = getattr(args[0], e)

15348 if nobj._changed() is False:

15349 continue

15350 setmethod = getattr(self, "_set_%s" % e)

15351 if load is None:

15352 setmethod(getattr(args[0], e))

15353 else:

15354 setmethod(getattr(args[0], e), load=load)

15355

15356 def _path(self):

15357 if hasattr(self, "_parent"):

15358 return self._parent._path()+[self._yang_name]

15359 else:

15360 return ['nsd', 'vnfd', 'df', 'scaling-aspect', 'aspect-delta-details', 'deltas', 'virtual-link-bit-rate-delta', 'bit-rate-requirements']

15361

15362 def _get_root(self):

15363 """

15364 Getter method for root, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/aspect_delta_details/deltas/virtual_link_bit_rate_delta/bit_rate_requirements/root (uint32)

15365

15366 YANG Description: Throughput requirement of the link (e.g.

15367 bitrate of E-Line, root bitrate of E-Tree,

15368 aggregate capacity of E-LAN).

15369 """

15370 return self.__root

15371

15372 def _set_root(self, v, load=False):

15373 """

15374 Setter method for root, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/aspect_delta_details/deltas/virtual_link_bit_rate_delta/bit_rate_requirements/root (uint32)

15375 If this variable is read-only (config: false) in the

15376 source YANG file, then _set_root is considered as a private

15377 method. Backends looking to populate this variable should

15378 do so via calling thisObj._set_root() directly.

15379

15380 YANG Description: Throughput requirement of the link (e.g.

15381 bitrate of E-Line, root bitrate of E-Tree,

15382 aggregate capacity of E-LAN).

15383 """

15384 if hasattr(v, "_utype"):

15385 v = v._utype(v)

15386 try:

15387 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="root", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

15388 except (TypeError, ValueError):

15389 raise ValueError({

15390 'error-string': """root must be of a type compatible with uint32""",

15391 'defined-type': "uint32",

15392 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="root", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)""",

15393 })

15394

15395 self.__root = t

15396 if hasattr(self, '_set'):

15397 self._set()

15398

15399 def _unset_root(self):

15400 self.__root = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="root", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

15401

15402

15403 def _get_leaf(self):

15404 """

15405 Getter method for leaf, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/aspect_delta_details/deltas/virtual_link_bit_rate_delta/bit_rate_requirements/leaf (uint32)

15406

15407 YANG Description: Throughput requirement of leaf connections to

15408 the link when applicable to the connectivity

15409 type (e.g. for E-Tree and E-LAN branches).

15410 """

15411 return self.__leaf

15412

15413 def _set_leaf(self, v, load=False):

15414 """

15415 Setter method for leaf, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/aspect_delta_details/deltas/virtual_link_bit_rate_delta/bit_rate_requirements/leaf (uint32)

15416 If this variable is read-only (config: false) in the

15417 source YANG file, then _set_leaf is considered as a private

15418 method. Backends looking to populate this variable should

15419 do so via calling thisObj._set_leaf() directly.

15420

15421 YANG Description: Throughput requirement of leaf connections to

15422 the link when applicable to the connectivity

15423 type (e.g. for E-Tree and E-LAN branches).

15424 """

15425 if hasattr(v, "_utype"):

15426 v = v._utype(v)

15427 try:

15428 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="leaf", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

15429 except (TypeError, ValueError):

15430 raise ValueError({

15431 'error-string': """leaf must be of a type compatible with uint32""",

15432 'defined-type': "uint32",

15433 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="leaf", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)""",

15434 })

15435

15436 self.__leaf = t

15437 if hasattr(self, '_set'):

15438 self._set()

15439

15440 def _unset_leaf(self):

15441 self.__leaf = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="leaf", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

15442

15443 root = __builtin__.property(_get_root, _set_root)

15444 leaf = __builtin__.property(_get_leaf, _set_leaf)

15445

15446

15447 _pyangbind_elements = OrderedDict([('root', root), ('leaf', leaf), ])

15448

15449

15450 class yc_virtual_link_bit_rate_delta_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect_aspect_delta_details_deltas_virtual_link_bit_rate_delta(PybindBase):

15451 """

15452 This class was auto-generated by the PythonClass plugin for PYANG

15453 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/scaling-aspect/aspect-delta-details/deltas/virtual-link-bit-rate-delta. Each member element of

15454 the container is represented as a class variable - with a specific

15455 YANG type.

15456

15457 YANG Description: The bitrate to be added or removed to virtual links

15458 created from particular virtual link descriptors.

15459 """

15460 __slots__ = ('_path_helper', '_extmethods', '__id','__bit_rate_requirements',)

15461

15462 _yang_name = 'virtual-link-bit-rate-delta'

15463 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

15464

15465 _pybind_generated_by = 'container'

15466

15467 def __init__(self, *args, **kwargs):

15468

15469 self._path_helper = False

15470

15471 self._extmethods = False

15472 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

15473 self.__bit_rate_requirements = YANGDynClass(base=yc_bit_rate_requirements_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect_aspect_delta_details_deltas_virtual_link_bit_rate_delta_bit_rate_requirements, is_container='container', yang_name="bit-rate-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

15474

15475 load = kwargs.pop("load", None)

15476 if args:

15477 if len(args) > 1:

15478 raise TypeError("cannot create a YANG container with >1 argument")

15479 all_attr = True

15480 for e in self._pyangbind_elements:

15481 if not hasattr(args[0], e):

15482 all_attr = False

15483 break

15484 if not all_attr:

15485 raise ValueError("Supplied object did not have the correct attributes")

15486 for e in self._pyangbind_elements:

15487 nobj = getattr(args[0], e)

15488 if nobj._changed() is False:

15489 continue

15490 setmethod = getattr(self, "_set_%s" % e)

15491 if load is None:

15492 setmethod(getattr(args[0], e))

15493 else:

15494 setmethod(getattr(args[0], e), load=load)

15495

15496 def _path(self):

15497 if hasattr(self, "_parent"):

15498 return self._parent._path()+[self._yang_name]

15499 else:

15500 return ['nsd', 'vnfd', 'df', 'scaling-aspect', 'aspect-delta-details', 'deltas', 'virtual-link-bit-rate-delta']

15501

15502 def _get_id(self):

15503 """

15504 Getter method for id, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/aspect_delta_details/deltas/virtual_link_bit_rate_delta/id (string)

15505

15506 YANG Description: Uniquely identifies a VnfVirtualLinkDesc.

15507 """

15508 return self.__id

15509

15510 def _set_id(self, v, load=False):

15511 """

15512 Setter method for id, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/aspect_delta_details/deltas/virtual_link_bit_rate_delta/id (string)

15513 If this variable is read-only (config: false) in the

15514 source YANG file, then _set_id is considered as a private

15515 method. Backends looking to populate this variable should

15516 do so via calling thisObj._set_id() directly.

15517

15518 YANG Description: Uniquely identifies a VnfVirtualLinkDesc.

15519 """

15520 parent = getattr(self, "_parent", None)

15521 if parent is not None and load is False:

15522 raise AttributeError("Cannot set keys directly when" +

15523 " within an instantiated list")

15524

15525 if hasattr(v, "_utype"):

15526 v = v._utype(v)

15527 try:

15528 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

15529 except (TypeError, ValueError):

15530 raise ValueError({

15531 'error-string': """id must be of a type compatible with string""",

15532 'defined-type': "string",

15533 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

15534 })

15535

15536 self.__id = t

15537 if hasattr(self, '_set'):

15538 self._set()

15539

15540 def _unset_id(self):

15541 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

15542

15543

15544 def _get_bit_rate_requirements(self):

15545 """

15546 Getter method for bit_rate_requirements, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/aspect_delta_details/deltas/virtual_link_bit_rate_delta/bit_rate_requirements (container)

15547

15548 YANG Description: Bitrate requirements for an instantiation level

15549 or bitrate delta for a scaling step.

15550 """

15551 return self.__bit_rate_requirements

15552

15553 def _set_bit_rate_requirements(self, v, load=False):

15554 """

15555 Setter method for bit_rate_requirements, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/aspect_delta_details/deltas/virtual_link_bit_rate_delta/bit_rate_requirements (container)

15556 If this variable is read-only (config: false) in the

15557 source YANG file, then _set_bit_rate_requirements is considered as a private

15558 method. Backends looking to populate this variable should

15559 do so via calling thisObj._set_bit_rate_requirements() directly.

15560

15561 YANG Description: Bitrate requirements for an instantiation level

15562 or bitrate delta for a scaling step.

15563 """

15564 if hasattr(v, "_utype"):

15565 v = v._utype(v)

15566 try:

15567 t = YANGDynClass(v,base=yc_bit_rate_requirements_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect_aspect_delta_details_deltas_virtual_link_bit_rate_delta_bit_rate_requirements, is_container='container', yang_name="bit-rate-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

15568 except (TypeError, ValueError):

15569 raise ValueError({

15570 'error-string': """bit_rate_requirements must be of a type compatible with container""",

15571 'defined-type': "container",

15572 'generated-type': """YANGDynClass(base=yc_bit_rate_requirements_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect_aspect_delta_details_deltas_virtual_link_bit_rate_delta_bit_rate_requirements, is_container='container', yang_name="bit-rate-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

15573 })

15574

15575 self.__bit_rate_requirements = t

15576 if hasattr(self, '_set'):

15577 self._set()

15578

15579 def _unset_bit_rate_requirements(self):

15580 self.__bit_rate_requirements = YANGDynClass(base=yc_bit_rate_requirements_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect_aspect_delta_details_deltas_virtual_link_bit_rate_delta_bit_rate_requirements, is_container='container', yang_name="bit-rate-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

15581

15582 id = __builtin__.property(_get_id, _set_id)

15583 bit_rate_requirements = __builtin__.property(_get_bit_rate_requirements, _set_bit_rate_requirements)

15584

15585

15586 _pyangbind_elements = OrderedDict([('id', id), ('bit_rate_requirements', bit_rate_requirements), ])

15587

15588

15589 class yc_deltas_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect_aspect_delta_details_deltas(PybindBase):

15590 """

15591 This class was auto-generated by the PythonClass plugin for PYANG

15592 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/scaling-aspect/aspect-delta-details/deltas. Each member element of

15593 the container is represented as a class variable - with a specific

15594 YANG type.

15595

15596 YANG Description: Declares different scaling deltas, each of which is

15597 applied for one or more scaling steps of this

15598 aspect.

15599 """

15600 __slots__ = ('_path_helper', '_extmethods', '__id','__vdu_delta','__virtual_link_bit_rate_delta',)

15601

15602 _yang_name = 'deltas'

15603 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

15604

15605 _pybind_generated_by = 'container'

15606

15607 def __init__(self, *args, **kwargs):

15608

15609 self._path_helper = False

15610

15611 self._extmethods = False

15612 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

15613 self.__vdu_delta = YANGDynClass(base=YANGListType("id",yc_vdu_delta_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect_aspect_delta_details_deltas_vdu_delta, yang_name="vdu-delta", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="vdu-delta", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

15614 self.__virtual_link_bit_rate_delta = YANGDynClass(base=YANGListType("id",yc_virtual_link_bit_rate_delta_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect_aspect_delta_details_deltas_virtual_link_bit_rate_delta, yang_name="virtual-link-bit-rate-delta", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="virtual-link-bit-rate-delta", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

15615

15616 load = kwargs.pop("load", None)

15617 if args:

15618 if len(args) > 1:

15619 raise TypeError("cannot create a YANG container with >1 argument")

15620 all_attr = True

15621 for e in self._pyangbind_elements:

15622 if not hasattr(args[0], e):

15623 all_attr = False

15624 break

15625 if not all_attr:

15626 raise ValueError("Supplied object did not have the correct attributes")

15627 for e in self._pyangbind_elements:

15628 nobj = getattr(args[0], e)

15629 if nobj._changed() is False:

15630 continue

15631 setmethod = getattr(self, "_set_%s" % e)

15632 if load is None:

15633 setmethod(getattr(args[0], e))

15634 else:

15635 setmethod(getattr(args[0], e), load=load)

15636

15637 def _path(self):

15638 if hasattr(self, "_parent"):

15639 return self._parent._path()+[self._yang_name]

15640 else:

15641 return ['nsd', 'vnfd', 'df', 'scaling-aspect', 'aspect-delta-details', 'deltas']

15642

15643 def _get_id(self):

15644 """

15645 Getter method for id, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/aspect_delta_details/deltas/id (string)

15646

15647 YANG Description: Identifier of this scaling delta.

15648 """

15649 return self.__id

15650

15651 def _set_id(self, v, load=False):

15652 """

15653 Setter method for id, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/aspect_delta_details/deltas/id (string)

15654 If this variable is read-only (config: false) in the

15655 source YANG file, then _set_id is considered as a private

15656 method. Backends looking to populate this variable should

15657 do so via calling thisObj._set_id() directly.

15658

15659 YANG Description: Identifier of this scaling delta.

15660 """

15661 parent = getattr(self, "_parent", None)

15662 if parent is not None and load is False:

15663 raise AttributeError("Cannot set keys directly when" +

15664 " within an instantiated list")

15665

15666 if hasattr(v, "_utype"):

15667 v = v._utype(v)

15668 try:

15669 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

15670 except (TypeError, ValueError):

15671 raise ValueError({

15672 'error-string': """id must be of a type compatible with string""",

15673 'defined-type': "string",

15674 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

15675 })

15676

15677 self.__id = t

15678 if hasattr(self, '_set'):

15679 self._set()

15680

15681 def _unset_id(self):

15682 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

15683

15684

15685 def _get_vdu_delta(self):

15686 """

15687 Getter method for vdu_delta, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/aspect_delta_details/deltas/vdu_delta (list)

15688

15689 YANG Description: The number of VNFC instances based on particular

15690 VDUs to be created or removed.

15691 """

15692 return self.__vdu_delta

15693

15694 def _set_vdu_delta(self, v, load=False):

15695 """

15696 Setter method for vdu_delta, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/aspect_delta_details/deltas/vdu_delta (list)

15697 If this variable is read-only (config: false) in the

15698 source YANG file, then _set_vdu_delta is considered as a private

15699 method. Backends looking to populate this variable should

15700 do so via calling thisObj._set_vdu_delta() directly.

15701

15702 YANG Description: The number of VNFC instances based on particular

15703 VDUs to be created or removed.

15704 """

15705 if hasattr(v, "_utype"):

15706 v = v._utype(v)

15707 try:

15708 t = YANGDynClass(v,base=YANGListType("id",yc_vdu_delta_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect_aspect_delta_details_deltas_vdu_delta, yang_name="vdu-delta", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="vdu-delta", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

15709 except (TypeError, ValueError):

15710 raise ValueError({

15711 'error-string': """vdu_delta must be of a type compatible with list""",

15712 'defined-type': "list",

15713 'generated-type': """YANGDynClass(base=YANGListType("id",yc_vdu_delta_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect_aspect_delta_details_deltas_vdu_delta, yang_name="vdu-delta", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="vdu-delta", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

15714 })

15715

15716 self.__vdu_delta = t

15717 if hasattr(self, '_set'):

15718 self._set()

15719

15720 def _unset_vdu_delta(self):

15721 self.__vdu_delta = YANGDynClass(base=YANGListType("id",yc_vdu_delta_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect_aspect_delta_details_deltas_vdu_delta, yang_name="vdu-delta", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="vdu-delta", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

15722

15723

15724 def _get_virtual_link_bit_rate_delta(self):

15725 """

15726 Getter method for virtual_link_bit_rate_delta, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/aspect_delta_details/deltas/virtual_link_bit_rate_delta (list)

15727

15728 YANG Description: The bitrate to be added or removed to virtual links

15729 created from particular virtual link descriptors.

15730 """

15731 return self.__virtual_link_bit_rate_delta

15732

15733 def _set_virtual_link_bit_rate_delta(self, v, load=False):

15734 """

15735 Setter method for virtual_link_bit_rate_delta, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/aspect_delta_details/deltas/virtual_link_bit_rate_delta (list)

15736 If this variable is read-only (config: false) in the

15737 source YANG file, then _set_virtual_link_bit_rate_delta is considered as a private

15738 method. Backends looking to populate this variable should

15739 do so via calling thisObj._set_virtual_link_bit_rate_delta() directly.

15740

15741 YANG Description: The bitrate to be added or removed to virtual links

15742 created from particular virtual link descriptors.

15743 """

15744 if hasattr(v, "_utype"):

15745 v = v._utype(v)

15746 try:

15747 t = YANGDynClass(v,base=YANGListType("id",yc_virtual_link_bit_rate_delta_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect_aspect_delta_details_deltas_virtual_link_bit_rate_delta, yang_name="virtual-link-bit-rate-delta", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="virtual-link-bit-rate-delta", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

15748 except (TypeError, ValueError):

15749 raise ValueError({

15750 'error-string': """virtual_link_bit_rate_delta must be of a type compatible with list""",

15751 'defined-type': "list",

15752 'generated-type': """YANGDynClass(base=YANGListType("id",yc_virtual_link_bit_rate_delta_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect_aspect_delta_details_deltas_virtual_link_bit_rate_delta, yang_name="virtual-link-bit-rate-delta", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="virtual-link-bit-rate-delta", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

15753 })

15754

15755 self.__virtual_link_bit_rate_delta = t

15756 if hasattr(self, '_set'):

15757 self._set()

15758

15759 def _unset_virtual_link_bit_rate_delta(self):

15760 self.__virtual_link_bit_rate_delta = YANGDynClass(base=YANGListType("id",yc_virtual_link_bit_rate_delta_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect_aspect_delta_details_deltas_virtual_link_bit_rate_delta, yang_name="virtual-link-bit-rate-delta", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="virtual-link-bit-rate-delta", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

15761

15762 id = __builtin__.property(_get_id, _set_id)

15763 vdu_delta = __builtin__.property(_get_vdu_delta, _set_vdu_delta)

15764 virtual_link_bit_rate_delta = __builtin__.property(_get_virtual_link_bit_rate_delta, _set_virtual_link_bit_rate_delta)

15765

15766

15767 _pyangbind_elements = OrderedDict([('id', id), ('vdu_delta', vdu_delta), ('virtual_link_bit_rate_delta', virtual_link_bit_rate_delta), ])

15768

15769

15770 class yc_aspect_delta_details_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect_aspect_delta_details(PybindBase):

15771 """

15772 This class was auto-generated by the PythonClass plugin for PYANG

15773 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/scaling-aspect/aspect-delta-details. Each member element of

15774 the container is represented as a class variable - with a specific

15775 YANG type.

15776

15777 YANG Description: A specification of the deltas in terms of number of

15778 instances of VNFCs and virtual link bit rates that

15779 correspond to the scaling steps of this aspect. A

15780 cardinality of zero indicates that this mapping has to

15781 be specified in a lifecycle management script or be

15782 otherwise known to the VNFM. The information in this

15783 attribute, if provided, shall be consistent with the

15784 information provided in the 'InstantiationLevel'

15785 information element. If this attribute is provided, it

15786 shall be provided for all scaling aspects.

15787 """

15788 __slots__ = ('_path_helper', '_extmethods', '__deltas','__step_deltas',)

15789

15790 _yang_name = 'aspect-delta-details'

15791 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

15792

15793 _pybind_generated_by = 'container'

15794

15795 def __init__(self, *args, **kwargs):

15796

15797 self._path_helper = False

15798

15799 self._extmethods = False

15800 self.__deltas = YANGDynClass(base=YANGListType("id",yc_deltas_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect_aspect_delta_details_deltas, yang_name="deltas", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="deltas", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

15801 self.__step_deltas = YANGDynClass(base=str, is_leaf=True, yang_name="step-deltas", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

15802

15803 load = kwargs.pop("load", None)

15804 if args:

15805 if len(args) > 1:

15806 raise TypeError("cannot create a YANG container with >1 argument")

15807 all_attr = True

15808 for e in self._pyangbind_elements:

15809 if not hasattr(args[0], e):

15810 all_attr = False

15811 break

15812 if not all_attr:

15813 raise ValueError("Supplied object did not have the correct attributes")

15814 for e in self._pyangbind_elements:

15815 nobj = getattr(args[0], e)

15816 if nobj._changed() is False:

15817 continue

15818 setmethod = getattr(self, "_set_%s" % e)

15819 if load is None:

15820 setmethod(getattr(args[0], e))

15821 else:

15822 setmethod(getattr(args[0], e), load=load)

15823

15824 def _path(self):

15825 if hasattr(self, "_parent"):

15826 return self._parent._path()+[self._yang_name]

15827 else:

15828 return ['nsd', 'vnfd', 'df', 'scaling-aspect', 'aspect-delta-details']

15829

15830 def _get_deltas(self):

15831 """

15832 Getter method for deltas, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/aspect_delta_details/deltas (list)

15833

15834 YANG Description: Declares different scaling deltas, each of which is

15835 applied for one or more scaling steps of this

15836 aspect.

15837 """

15838 return self.__deltas

15839

15840 def _set_deltas(self, v, load=False):

15841 """

15842 Setter method for deltas, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/aspect_delta_details/deltas (list)

15843 If this variable is read-only (config: false) in the

15844 source YANG file, then _set_deltas is considered as a private

15845 method. Backends looking to populate this variable should

15846 do so via calling thisObj._set_deltas() directly.

15847

15848 YANG Description: Declares different scaling deltas, each of which is

15849 applied for one or more scaling steps of this

15850 aspect.

15851 """

15852 if hasattr(v, "_utype"):

15853 v = v._utype(v)

15854 try:

15855 t = YANGDynClass(v,base=YANGListType("id",yc_deltas_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect_aspect_delta_details_deltas, yang_name="deltas", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="deltas", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

15856 except (TypeError, ValueError):

15857 raise ValueError({

15858 'error-string': """deltas must be of a type compatible with list""",

15859 'defined-type': "list",

15860 'generated-type': """YANGDynClass(base=YANGListType("id",yc_deltas_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect_aspect_delta_details_deltas, yang_name="deltas", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="deltas", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

15861 })

15862

15863 self.__deltas = t

15864 if hasattr(self, '_set'):

15865 self._set()

15866

15867 def _unset_deltas(self):

15868 self.__deltas = YANGDynClass(base=YANGListType("id",yc_deltas_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect_aspect_delta_details_deltas, yang_name="deltas", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="deltas", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

15869

15870

15871 def _get_step_deltas(self):

15872 """

15873 Getter method for step_deltas, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/aspect_delta_details/step_deltas (leafref)

15874

15875 YANG Description: Identifiers of the individual scaling deltas to be

15876 applied for the subsequent scaling steps of this

15877 aspect. The first entry in the array shall correspond

15878 to the first scaling step (between scale levels 0 to

15879 1) and the last entry in the array shall correspond

15880 to the last scaling step (between maxScaleLevel-1

15881 and maxScaleLevel).

15882

15883 Each referenced scaling delta shall be declared in

15884 the 'deltas' attribute.

15885 """

15886 return self.__step_deltas

15887

15888 def _set_step_deltas(self, v, load=False):

15889 """

15890 Setter method for step_deltas, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/aspect_delta_details/step_deltas (leafref)

15891 If this variable is read-only (config: false) in the

15892 source YANG file, then _set_step_deltas is considered as a private

15893 method. Backends looking to populate this variable should

15894 do so via calling thisObj._set_step_deltas() directly.

15895

15896 YANG Description: Identifiers of the individual scaling deltas to be

15897 applied for the subsequent scaling steps of this

15898 aspect. The first entry in the array shall correspond

15899 to the first scaling step (between scale levels 0 to

15900 1) and the last entry in the array shall correspond

15901 to the last scaling step (between maxScaleLevel-1

15902 and maxScaleLevel).

15903

15904 Each referenced scaling delta shall be declared in

15905 the 'deltas' attribute.

15906 """

15907 if hasattr(v, "_utype"):

15908 v = v._utype(v)

15909 try:

15910 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="step-deltas", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

15911 except (TypeError, ValueError):

15912 raise ValueError({

15913 'error-string': """step_deltas must be of a type compatible with leafref""",

15914 'defined-type': "leafref",

15915 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="step-deltas", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

15916 })

15917

15918 self.__step_deltas = t

15919 if hasattr(self, '_set'):

15920 self._set()

15921

15922 def _unset_step_deltas(self):

15923 self.__step_deltas = YANGDynClass(base=str, is_leaf=True, yang_name="step-deltas", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

15924

15925 deltas = __builtin__.property(_get_deltas, _set_deltas)

15926 step_deltas = __builtin__.property(_get_step_deltas, _set_step_deltas)

15927

15928

15929 _pyangbind_elements = OrderedDict([('deltas', deltas), ('step_deltas', step_deltas), ])

15930

15931

15932 class yc_scaling_aspect_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect(PybindBase):

15933 """

15934 This class was auto-generated by the PythonClass plugin for PYANG

15935 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df/scaling-aspect. Each member element of

15936 the container is represented as a class variable - with a specific

15937 YANG type.

15938

15939 YANG Description: The scaling aspects supported by this DF of the VNF.

15940 scalingAspect shall be present if the VNF supports

15941 scaling.

15942 """

15943 __slots__ = ('_path_helper', '_extmethods', '__id','__name','__description','__max_scale_level','__aspect_delta_details',)

15944

15945 _yang_name = 'scaling-aspect'

15946 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

15947

15948 _pybind_generated_by = 'container'

15949

15950 def __init__(self, *args, **kwargs):

15951

15952 self._path_helper = False

15953

15954 self._extmethods = False

15955 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

15956 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

15957 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

15958 self.__max_scale_level = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['1..max']}), is_leaf=True, yang_name="max-scale-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

15959 self.__aspect_delta_details = YANGDynClass(base=yc_aspect_delta_details_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect_aspect_delta_details, is_container='container', yang_name="aspect-delta-details", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

15960

15961 load = kwargs.pop("load", None)

15962 if args:

15963 if len(args) > 1:

15964 raise TypeError("cannot create a YANG container with >1 argument")

15965 all_attr = True

15966 for e in self._pyangbind_elements:

15967 if not hasattr(args[0], e):

15968 all_attr = False

15969 break

15970 if not all_attr:

15971 raise ValueError("Supplied object did not have the correct attributes")

15972 for e in self._pyangbind_elements:

15973 nobj = getattr(args[0], e)

15974 if nobj._changed() is False:

15975 continue

15976 setmethod = getattr(self, "_set_%s" % e)

15977 if load is None:

15978 setmethod(getattr(args[0], e))

15979 else:

15980 setmethod(getattr(args[0], e), load=load)

15981

15982 def _path(self):

15983 if hasattr(self, "_parent"):

15984 return self._parent._path()+[self._yang_name]

15985 else:

15986 return ['nsd', 'vnfd', 'df', 'scaling-aspect']

15987

15988 def _get_id(self):

15989 """

15990 Getter method for id, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/id (string)

15991

15992 YANG Description: Unique identifier of this aspect in the VNFD.

15993 """

15994 return self.__id

15995

15996 def _set_id(self, v, load=False):

15997 """

15998 Setter method for id, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/id (string)

15999 If this variable is read-only (config: false) in the

16000 source YANG file, then _set_id is considered as a private

16001 method. Backends looking to populate this variable should

16002 do so via calling thisObj._set_id() directly.

16003

16004 YANG Description: Unique identifier of this aspect in the VNFD.

16005 """

16006 parent = getattr(self, "_parent", None)

16007 if parent is not None and load is False:

16008 raise AttributeError("Cannot set keys directly when" +

16009 " within an instantiated list")

16010

16011 if hasattr(v, "_utype"):

16012 v = v._utype(v)

16013 try:

16014 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

16015 except (TypeError, ValueError):

16016 raise ValueError({

16017 'error-string': """id must be of a type compatible with string""",

16018 'defined-type': "string",

16019 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

16020 })

16021

16022 self.__id = t

16023 if hasattr(self, '_set'):

16024 self._set()

16025

16026 def _unset_id(self):

16027 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

16028

16029

16030 def _get_name(self):

16031 """

16032 Getter method for name, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/name (string)

16033

16034 YANG Description: Human readable name of the aspect.

16035 """

16036 return self.__name

16037

16038 def _set_name(self, v, load=False):

16039 """

16040 Setter method for name, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/name (string)

16041 If this variable is read-only (config: false) in the

16042 source YANG file, then _set_name is considered as a private

16043 method. Backends looking to populate this variable should

16044 do so via calling thisObj._set_name() directly.

16045

16046 YANG Description: Human readable name of the aspect.

16047 """

16048 if hasattr(v, "_utype"):

16049 v = v._utype(v)

16050 try:

16051 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

16052 except (TypeError, ValueError):

16053 raise ValueError({

16054 'error-string': """name must be of a type compatible with string""",

16055 'defined-type': "string",

16056 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

16057 })

16058

16059 self.__name = t

16060 if hasattr(self, '_set'):

16061 self._set()

16062

16063 def _unset_name(self):

16064 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

16065

16066

16067 def _get_description(self):

16068 """

16069 Getter method for description, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/description (string)

16070

16071 YANG Description: Human readable description of the aspect.

16072 """

16073 return self.__description

16074

16075 def _set_description(self, v, load=False):

16076 """

16077 Setter method for description, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/description (string)

16078 If this variable is read-only (config: false) in the

16079 source YANG file, then _set_description is considered as a private

16080 method. Backends looking to populate this variable should

16081 do so via calling thisObj._set_description() directly.

16082

16083 YANG Description: Human readable description of the aspect.

16084 """

16085 if hasattr(v, "_utype"):

16086 v = v._utype(v)

16087 try:

16088 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

16089 except (TypeError, ValueError):

16090 raise ValueError({

16091 'error-string': """description must be of a type compatible with string""",

16092 'defined-type': "string",

16093 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

16094 })

16095

16096 self.__description = t

16097 if hasattr(self, '_set'):

16098 self._set()

16099

16100 def _unset_description(self):

16101 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

16102

16103

16104 def _get_max_scale_level(self):

16105 """

16106 Getter method for max_scale_level, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/max_scale_level (uint32)

16107

16108 YANG Description: The maximum scaleLevel for total number of scaling

16109 steps that can be applied w.r.t. this aspect. The

16110 value of this attribute corresponds to the number of

16111 scaling steps can be applied to this aspect when

16112 scaling it from the minimum scale level (i.e. 0) to the

16113 maximum scale level defined by this attribute.

16114 """

16115 return self.__max_scale_level

16116

16117 def _set_max_scale_level(self, v, load=False):

16118 """

16119 Setter method for max_scale_level, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/max_scale_level (uint32)

16120 If this variable is read-only (config: false) in the

16121 source YANG file, then _set_max_scale_level is considered as a private

16122 method. Backends looking to populate this variable should

16123 do so via calling thisObj._set_max_scale_level() directly.

16124

16125 YANG Description: The maximum scaleLevel for total number of scaling

16126 steps that can be applied w.r.t. this aspect. The

16127 value of this attribute corresponds to the number of

16128 scaling steps can be applied to this aspect when

16129 scaling it from the minimum scale level (i.e. 0) to the

16130 maximum scale level defined by this attribute.

16131 """

16132 if hasattr(v, "_utype"):

16133 v = v._utype(v)

16134 try:

16135 t = YANGDynClass(v,base=RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['1..max']}), is_leaf=True, yang_name="max-scale-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

16136 except (TypeError, ValueError):

16137 raise ValueError({

16138 'error-string': """max_scale_level must be of a type compatible with uint32""",

16139 'defined-type': "uint32",

16140 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['1..max']}), is_leaf=True, yang_name="max-scale-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)""",

16141 })

16142

16143 self.__max_scale_level = t

16144 if hasattr(self, '_set'):

16145 self._set()

16146

16147 def _unset_max_scale_level(self):

16148 self.__max_scale_level = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), restriction_dict={'range': ['1..max']}), is_leaf=True, yang_name="max-scale-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

16149

16150

16151 def _get_aspect_delta_details(self):

16152 """

16153 Getter method for aspect_delta_details, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/aspect_delta_details (container)

16154

16155 YANG Description: A specification of the deltas in terms of number of

16156 instances of VNFCs and virtual link bit rates that

16157 correspond to the scaling steps of this aspect. A

16158 cardinality of zero indicates that this mapping has to

16159 be specified in a lifecycle management script or be

16160 otherwise known to the VNFM. The information in this

16161 attribute, if provided, shall be consistent with the

16162 information provided in the 'InstantiationLevel'

16163 information element. If this attribute is provided, it

16164 shall be provided for all scaling aspects.

16165 """

16166 return self.__aspect_delta_details

16167

16168 def _set_aspect_delta_details(self, v, load=False):

16169 """

16170 Setter method for aspect_delta_details, mapped from YANG variable /nsd/vnfd/df/scaling_aspect/aspect_delta_details (container)

16171 If this variable is read-only (config: false) in the

16172 source YANG file, then _set_aspect_delta_details is considered as a private

16173 method. Backends looking to populate this variable should

16174 do so via calling thisObj._set_aspect_delta_details() directly.

16175

16176 YANG Description: A specification of the deltas in terms of number of

16177 instances of VNFCs and virtual link bit rates that

16178 correspond to the scaling steps of this aspect. A

16179 cardinality of zero indicates that this mapping has to

16180 be specified in a lifecycle management script or be

16181 otherwise known to the VNFM. The information in this

16182 attribute, if provided, shall be consistent with the

16183 information provided in the 'InstantiationLevel'

16184 information element. If this attribute is provided, it

16185 shall be provided for all scaling aspects.

16186 """

16187 if hasattr(v, "_utype"):

16188 v = v._utype(v)

16189 try:

16190 t = YANGDynClass(v,base=yc_aspect_delta_details_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect_aspect_delta_details, is_container='container', yang_name="aspect-delta-details", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

16191 except (TypeError, ValueError):

16192 raise ValueError({

16193 'error-string': """aspect_delta_details must be of a type compatible with container""",

16194 'defined-type': "container",

16195 'generated-type': """YANGDynClass(base=yc_aspect_delta_details_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect_aspect_delta_details, is_container='container', yang_name="aspect-delta-details", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

16196 })

16197

16198 self.__aspect_delta_details = t

16199 if hasattr(self, '_set'):

16200 self._set()

16201

16202 def _unset_aspect_delta_details(self):

16203 self.__aspect_delta_details = YANGDynClass(base=yc_aspect_delta_details_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect_aspect_delta_details, is_container='container', yang_name="aspect-delta-details", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

16204

16205 id = __builtin__.property(_get_id, _set_id)

16206 name = __builtin__.property(_get_name, _set_name)

16207 description = __builtin__.property(_get_description, _set_description)

16208 max_scale_level = __builtin__.property(_get_max_scale_level, _set_max_scale_level)

16209 aspect_delta_details = __builtin__.property(_get_aspect_delta_details, _set_aspect_delta_details)

16210

16211

16212 _pyangbind_elements = OrderedDict([('id', id), ('name', name), ('description', description), ('max_scale_level', max_scale_level), ('aspect_delta_details', aspect_delta_details), ])

16213

16214

16215 class yc_df_etsi_nfv_nsd__nsd_vnfd_df(PybindBase):

16216 """

16217 This class was auto-generated by the PythonClass plugin for PYANG

16218 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/df. Each member element of

16219 the container is represented as a class variable - with a specific

16220 YANG type.

16221

16222 YANG Description: Describes a specific Deployment Flavour (DF) of a VNF with

16223 specific requirements for capacity and performance.

16224 """

16225 __slots__ = ('_path_helper', '_extmethods', '__id','__description','__vdu_profile','__virtual_link_profile','__instantiation_level','__default_instantiation_level','__supported_operation','__lcm_operations_configuration','__affinity_or_anti_affinity_group','__indicator','__supported_vnf_interfaces','__monitoring_parameter','__scaling_aspect',)

16226

16227 _yang_name = 'df'

16228 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

16229

16230 _pybind_generated_by = 'container'

16231

16232 def __init__(self, *args, **kwargs):

16233

16234 self._path_helper = False

16235

16236 self._extmethods = False

16237 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

16238 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

16239 self.__vdu_profile = YANGDynClass(base=YANGListType("id",yc_vdu_profile_etsi_nfv_nsd__nsd_vnfd_df_vdu_profile, yang_name="vdu-profile", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="vdu-profile", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

16240 self.__virtual_link_profile = YANGDynClass(base=YANGListType("id flavour",yc_virtual_link_profile_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile, yang_name="virtual-link-profile", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id flavour', extensions=None), is_container='list', yang_name="virtual-link-profile", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

16241 self.__instantiation_level = YANGDynClass(base=YANGListType("id",yc_instantiation_level_etsi_nfv_nsd__nsd_vnfd_df_instantiation_level, yang_name="instantiation-level", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="instantiation-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

16242 self.__default_instantiation_level = YANGDynClass(base=str, is_leaf=True, yang_name="default-instantiation-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

16243 self.__supported_operation = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'instantiate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:instantiate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:instantiate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:instantiate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:instantiate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'scale-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:scale-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:scale-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:scale-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:scale-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'scale-vnf-to-level': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:scale-vnf-to-level': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:scale-vnf-to-level': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:scale-vnf-to-level': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:scale-vnf-to-level': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'change-vnf-flavour': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:change-vnf-flavour': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:change-vnf-flavour': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:change-vnf-flavour': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:change-vnf-flavour': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'terminate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:terminate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:terminate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:terminate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:terminate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'query-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:query-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:query-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:query-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:query-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'heal-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:heal-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:heal-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:heal-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:heal-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'operate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:operate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:operate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:operate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:operate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'modify-vnf-information': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:modify-vnf-information': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:modify-vnf-information': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:modify-vnf-information': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:modify-vnf-information': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},)), is_leaf=False, yang_name="supported-operation", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

16244 self.__lcm_operations_configuration = YANGDynClass(base=yc_lcm_operations_configuration_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration, is_container='container', yang_name="lcm-operations-configuration", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

16245 self.__affinity_or_anti_affinity_group = YANGDynClass(base=YANGListType("id",yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_vnfd_df_affinity_or_anti_affinity_group, yang_name="affinity-or-anti-affinity-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

16246 self.__indicator = YANGDynClass(base=YANGListType("id",yc_indicator_etsi_nfv_nsd__nsd_vnfd_df_indicator, yang_name="indicator", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="indicator", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

16247 self.__supported_vnf_interfaces = YANGDynClass(base=YANGListType("name",yc_supported_vnf_interfaces_etsi_nfv_nsd__nsd_vnfd_df_supported_vnf_interfaces, yang_name="supported-vnf-interfaces", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="supported-vnf-interfaces", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

16248 self.__monitoring_parameter = YANGDynClass(base=YANGListType("id",yc_monitoring_parameter_etsi_nfv_nsd__nsd_vnfd_df_monitoring_parameter, yang_name="monitoring-parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="monitoring-parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

16249 self.__scaling_aspect = YANGDynClass(base=YANGListType("id",yc_scaling_aspect_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect, yang_name="scaling-aspect", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="scaling-aspect", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

16250

16251 load = kwargs.pop("load", None)

16252 if args:

16253 if len(args) > 1:

16254 raise TypeError("cannot create a YANG container with >1 argument")

16255 all_attr = True

16256 for e in self._pyangbind_elements:

16257 if not hasattr(args[0], e):

16258 all_attr = False

16259 break

16260 if not all_attr:

16261 raise ValueError("Supplied object did not have the correct attributes")

16262 for e in self._pyangbind_elements:

16263 nobj = getattr(args[0], e)

16264 if nobj._changed() is False:

16265 continue

16266 setmethod = getattr(self, "_set_%s" % e)

16267 if load is None:

16268 setmethod(getattr(args[0], e))

16269 else:

16270 setmethod(getattr(args[0], e), load=load)

16271

16272 def _path(self):

16273 if hasattr(self, "_parent"):

16274 return self._parent._path()+[self._yang_name]

16275 else:

16276 return ['nsd', 'vnfd', 'df']

16277

16278 def _get_id(self):

16279 """

16280 Getter method for id, mapped from YANG variable /nsd/vnfd/df/id (string)

16281

16282 YANG Description: Identifier of this DF within the VNFD.

16283 """

16284 return self.__id

16285

16286 def _set_id(self, v, load=False):

16287 """

16288 Setter method for id, mapped from YANG variable /nsd/vnfd/df/id (string)

16289 If this variable is read-only (config: false) in the

16290 source YANG file, then _set_id is considered as a private

16291 method. Backends looking to populate this variable should

16292 do so via calling thisObj._set_id() directly.

16293

16294 YANG Description: Identifier of this DF within the VNFD.

16295 """

16296 parent = getattr(self, "_parent", None)

16297 if parent is not None and load is False:

16298 raise AttributeError("Cannot set keys directly when" +

16299 " within an instantiated list")

16300

16301 if hasattr(v, "_utype"):

16302 v = v._utype(v)

16303 try:

16304 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

16305 except (TypeError, ValueError):

16306 raise ValueError({

16307 'error-string': """id must be of a type compatible with string""",

16308 'defined-type': "string",

16309 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

16310 })

16311

16312 self.__id = t

16313 if hasattr(self, '_set'):

16314 self._set()

16315

16316 def _unset_id(self):

16317 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

16318

16319

16320 def _get_description(self):

16321 """

16322 Getter method for description, mapped from YANG variable /nsd/vnfd/df/description (string)

16323

16324 YANG Description: Human readable description of the deployment flavour

16325 """

16326 return self.__description

16327

16328 def _set_description(self, v, load=False):

16329 """

16330 Setter method for description, mapped from YANG variable /nsd/vnfd/df/description (string)

16331 If this variable is read-only (config: false) in the

16332 source YANG file, then _set_description is considered as a private

16333 method. Backends looking to populate this variable should

16334 do so via calling thisObj._set_description() directly.

16335

16336 YANG Description: Human readable description of the deployment flavour

16337 """

16338 if hasattr(v, "_utype"):

16339 v = v._utype(v)

16340 try:

16341 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

16342 except (TypeError, ValueError):

16343 raise ValueError({

16344 'error-string': """description must be of a type compatible with string""",

16345 'defined-type': "string",

16346 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

16347 })

16348

16349 self.__description = t

16350 if hasattr(self, '_set'):

16351 self._set()

16352

16353 def _unset_description(self):

16354 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

16355

16356

16357 def _get_vdu_profile(self):

16358 """

16359 Getter method for vdu_profile, mapped from YANG variable /nsd/vnfd/df/vdu_profile (list)

16360

16361 YANG Description: The Vduprofile describes additional instantiation data for

16362 a given VDU used in a deployment flavour.

16363 """

16364 return self.__vdu_profile

16365

16366 def _set_vdu_profile(self, v, load=False):

16367 """

16368 Setter method for vdu_profile, mapped from YANG variable /nsd/vnfd/df/vdu_profile (list)

16369 If this variable is read-only (config: false) in the

16370 source YANG file, then _set_vdu_profile is considered as a private

16371 method. Backends looking to populate this variable should

16372 do so via calling thisObj._set_vdu_profile() directly.

16373

16374 YANG Description: The Vduprofile describes additional instantiation data for

16375 a given VDU used in a deployment flavour.

16376 """

16377 if hasattr(v, "_utype"):

16378 v = v._utype(v)

16379 try:

16380 t = YANGDynClass(v,base=YANGListType("id",yc_vdu_profile_etsi_nfv_nsd__nsd_vnfd_df_vdu_profile, yang_name="vdu-profile", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="vdu-profile", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

16381 except (TypeError, ValueError):

16382 raise ValueError({

16383 'error-string': """vdu_profile must be of a type compatible with list""",

16384 'defined-type': "list",

16385 'generated-type': """YANGDynClass(base=YANGListType("id",yc_vdu_profile_etsi_nfv_nsd__nsd_vnfd_df_vdu_profile, yang_name="vdu-profile", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="vdu-profile", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

16386 })

16387

16388 self.__vdu_profile = t

16389 if hasattr(self, '_set'):

16390 self._set()

16391

16392 def _unset_vdu_profile(self):

16393 self.__vdu_profile = YANGDynClass(base=YANGListType("id",yc_vdu_profile_etsi_nfv_nsd__nsd_vnfd_df_vdu_profile, yang_name="vdu-profile", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="vdu-profile", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

16394

16395

16396 def _get_virtual_link_profile(self):

16397 """

16398 Getter method for virtual_link_profile, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile (list)

16399

16400 YANG Description: Defines the internal VLD along with additional data which

16401 is used in this DF.

16402 """

16403 return self.__virtual_link_profile

16404

16405 def _set_virtual_link_profile(self, v, load=False):

16406 """

16407 Setter method for virtual_link_profile, mapped from YANG variable /nsd/vnfd/df/virtual_link_profile (list)

16408 If this variable is read-only (config: false) in the

16409 source YANG file, then _set_virtual_link_profile is considered as a private

16410 method. Backends looking to populate this variable should

16411 do so via calling thisObj._set_virtual_link_profile() directly.

16412

16413 YANG Description: Defines the internal VLD along with additional data which

16414 is used in this DF.

16415 """

16416 if hasattr(v, "_utype"):

16417 v = v._utype(v)

16418 try:

16419 t = YANGDynClass(v,base=YANGListType("id flavour",yc_virtual_link_profile_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile, yang_name="virtual-link-profile", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id flavour', extensions=None), is_container='list', yang_name="virtual-link-profile", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

16420 except (TypeError, ValueError):

16421 raise ValueError({

16422 'error-string': """virtual_link_profile must be of a type compatible with list""",

16423 'defined-type': "list",

16424 'generated-type': """YANGDynClass(base=YANGListType("id flavour",yc_virtual_link_profile_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile, yang_name="virtual-link-profile", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id flavour', extensions=None), is_container='list', yang_name="virtual-link-profile", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

16425 })

16426

16427 self.__virtual_link_profile = t

16428 if hasattr(self, '_set'):

16429 self._set()

16430

16431 def _unset_virtual_link_profile(self):

16432 self.__virtual_link_profile = YANGDynClass(base=YANGListType("id flavour",yc_virtual_link_profile_etsi_nfv_nsd__nsd_vnfd_df_virtual_link_profile, yang_name="virtual-link-profile", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id flavour', extensions=None), is_container='list', yang_name="virtual-link-profile", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

16433

16434

16435 def _get_instantiation_level(self):

16436 """

16437 Getter method for instantiation_level, mapped from YANG variable /nsd/vnfd/df/instantiation_level (list)

16438

16439 YANG Description: Describes the various levels of resources that can be

16440 used to instantiate the VNF using this flavour.

16441 Examples: Small, Medium, Large. If there is only one

16442'instantiationLevel' entry, it shall be treated as the

16443 default instantiation level for this DF.

16444

16445 The InstantiationLevel information element describes a

16446 given level of resources to be instantiated within a

16447 deployment flavour in term of the number of VNFC instances

16448 to be created from each VDU.

16449 All the VDUs referenced in the level shall be part of the

16450 corresponding deployment flavour and their number shall

16451 be within the range (min/max) for this deployment flavour.

16452 """

16453 return self.__instantiation_level

16454

16455 def _set_instantiation_level(self, v, load=False):

16456 """

16457 Setter method for instantiation_level, mapped from YANG variable /nsd/vnfd/df/instantiation_level (list)

16458 If this variable is read-only (config: false) in the

16459 source YANG file, then _set_instantiation_level is considered as a private

16460 method. Backends looking to populate this variable should

16461 do so via calling thisObj._set_instantiation_level() directly.

16462

16463 YANG Description: Describes the various levels of resources that can be

16464 used to instantiate the VNF using this flavour.

16465 Examples: Small, Medium, Large. If there is only one

16466'instantiationLevel' entry, it shall be treated as the

16467 default instantiation level for this DF.

16468

16469 The InstantiationLevel information element describes a

16470 given level of resources to be instantiated within a

16471 deployment flavour in term of the number of VNFC instances

16472 to be created from each VDU.

16473 All the VDUs referenced in the level shall be part of the

16474 corresponding deployment flavour and their number shall

16475 be within the range (min/max) for this deployment flavour.

16476 """

16477 if hasattr(v, "_utype"):

16478 v = v._utype(v)

16479 try:

16480 t = YANGDynClass(v,base=YANGListType("id",yc_instantiation_level_etsi_nfv_nsd__nsd_vnfd_df_instantiation_level, yang_name="instantiation-level", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="instantiation-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

16481 except (TypeError, ValueError):

16482 raise ValueError({

16483 'error-string': """instantiation_level must be of a type compatible with list""",

16484 'defined-type': "list",

16485 'generated-type': """YANGDynClass(base=YANGListType("id",yc_instantiation_level_etsi_nfv_nsd__nsd_vnfd_df_instantiation_level, yang_name="instantiation-level", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="instantiation-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

16486 })

16487

16488 self.__instantiation_level = t

16489 if hasattr(self, '_set'):

16490 self._set()

16491

16492 def _unset_instantiation_level(self):

16493 self.__instantiation_level = YANGDynClass(base=YANGListType("id",yc_instantiation_level_etsi_nfv_nsd__nsd_vnfd_df_instantiation_level, yang_name="instantiation-level", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="instantiation-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

16494

16495

16496 def _get_default_instantiation_level(self):

16497 """

16498 Getter method for default_instantiation_level, mapped from YANG variable /nsd/vnfd/df/default_instantiation_level (leafref)

16499

16500 YANG Description: This attribute references the 'instantiationLevel'

16501 entry which defines the default instantiation level for

16502 this DF. It shall be present if there are multiple

16503'instantiationLevel' entries.

16504 """

16505 return self.__default_instantiation_level

16506

16507 def _set_default_instantiation_level(self, v, load=False):

16508 """

16509 Setter method for default_instantiation_level, mapped from YANG variable /nsd/vnfd/df/default_instantiation_level (leafref)

16510 If this variable is read-only (config: false) in the

16511 source YANG file, then _set_default_instantiation_level is considered as a private

16512 method. Backends looking to populate this variable should

16513 do so via calling thisObj._set_default_instantiation_level() directly.

16514

16515 YANG Description: This attribute references the 'instantiationLevel'

16516 entry which defines the default instantiation level for

16517 this DF. It shall be present if there are multiple

16518'instantiationLevel' entries.

16519 """

16520 if hasattr(v, "_utype"):

16521 v = v._utype(v)

16522 try:

16523 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="default-instantiation-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

16524 except (TypeError, ValueError):

16525 raise ValueError({

16526 'error-string': """default_instantiation_level must be of a type compatible with leafref""",

16527 'defined-type': "leafref",

16528 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="default-instantiation-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

16529 })

16530

16531 self.__default_instantiation_level = t

16532 if hasattr(self, '_set'):

16533 self._set()

16534

16535 def _unset_default_instantiation_level(self):

16536 self.__default_instantiation_level = YANGDynClass(base=str, is_leaf=True, yang_name="default-instantiation-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

16537

16538

16539 def _get_supported_operation(self):

16540 """

16541 Getter method for supported_operation, mapped from YANG variable /nsd/vnfd/df/supported_operation (identityref)

16542

16543 YANG Description: Indicates which operations are available for this DF via

16544 the VNF LCM interface. Instantiate VNF, Query VNF and

16545 Terminate VNF are supported in all DF and therefore

16546 need not be included in this list.

16547 """

16548 return self.__supported_operation

16549

16550 def _set_supported_operation(self, v, load=False):

16551 """

16552 Setter method for supported_operation, mapped from YANG variable /nsd/vnfd/df/supported_operation (identityref)

16553 If this variable is read-only (config: false) in the

16554 source YANG file, then _set_supported_operation is considered as a private

16555 method. Backends looking to populate this variable should

16556 do so via calling thisObj._set_supported_operation() directly.

16557

16558 YANG Description: Indicates which operations are available for this DF via

16559 the VNF LCM interface. Instantiate VNF, Query VNF and

16560 Terminate VNF are supported in all DF and therefore

16561 need not be included in this list.

16562 """

16563 if hasattr(v, "_utype"):

16564 v = v._utype(v)

16565 try:

16566 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'instantiate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:instantiate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:instantiate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:instantiate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:instantiate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'scale-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:scale-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:scale-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:scale-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:scale-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'scale-vnf-to-level': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:scale-vnf-to-level': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:scale-vnf-to-level': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:scale-vnf-to-level': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:scale-vnf-to-level': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'change-vnf-flavour': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:change-vnf-flavour': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:change-vnf-flavour': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:change-vnf-flavour': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:change-vnf-flavour': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'terminate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:terminate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:terminate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:terminate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:terminate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'query-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:query-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:query-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:query-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:query-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'heal-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:heal-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:heal-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:heal-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:heal-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'operate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:operate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:operate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:operate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:operate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'modify-vnf-information': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:modify-vnf-information': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:modify-vnf-information': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:modify-vnf-information': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:modify-vnf-information': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},)), is_leaf=False, yang_name="supported-operation", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

16567 except (TypeError, ValueError):

16568 raise ValueError({

16569 'error-string': """supported_operation must be of a type compatible with identityref""",

16570 'defined-type': "etsi-nfv-nsd:identityref",

16571 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'instantiate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:instantiate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:instantiate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:instantiate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:instantiate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'scale-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:scale-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:scale-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:scale-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:scale-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'scale-vnf-to-level': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:scale-vnf-to-level': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:scale-vnf-to-level': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:scale-vnf-to-level': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:scale-vnf-to-level': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'change-vnf-flavour': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:change-vnf-flavour': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:change-vnf-flavour': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:change-vnf-flavour': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:change-vnf-flavour': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'terminate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:terminate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:terminate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:terminate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:terminate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'query-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:query-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:query-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:query-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:query-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'heal-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:heal-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:heal-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:heal-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:heal-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'operate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:operate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:operate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:operate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:operate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'modify-vnf-information': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:modify-vnf-information': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:modify-vnf-information': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:modify-vnf-information': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:modify-vnf-information': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},)), is_leaf=False, yang_name="supported-operation", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)""",

16572 })

16573

16574 self.__supported_operation = t

16575 if hasattr(self, '_set'):

16576 self._set()

16577

16578 def _unset_supported_operation(self):

16579 self.__supported_operation = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'instantiate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:instantiate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:instantiate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:instantiate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:instantiate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'scale-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:scale-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:scale-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:scale-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:scale-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'scale-vnf-to-level': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:scale-vnf-to-level': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:scale-vnf-to-level': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:scale-vnf-to-level': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:scale-vnf-to-level': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'change-vnf-flavour': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:change-vnf-flavour': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:change-vnf-flavour': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:change-vnf-flavour': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:change-vnf-flavour': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'terminate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:terminate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:terminate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:terminate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:terminate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'query-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:query-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:query-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:query-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:query-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'heal-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:heal-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:heal-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:heal-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:heal-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'operate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:operate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:operate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:operate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:operate-vnf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'modify-vnf-information': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:modify-vnf-information': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:modify-vnf-information': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:modify-vnf-information': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:modify-vnf-information': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},)), is_leaf=False, yang_name="supported-operation", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

16580

16581

16582 def _get_lcm_operations_configuration(self):

16583 """

16584 Getter method for lcm_operations_configuration, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration (container)

16585

16586 YANG Description: This information element is a container for all

16587 attributes that affect the invocation of the VNF

16588 Lifecycle Management operations, structured by

16589 operation.

16590 """

16591 return self.__lcm_operations_configuration

16592

16593 def _set_lcm_operations_configuration(self, v, load=False):

16594 """

16595 Setter method for lcm_operations_configuration, mapped from YANG variable /nsd/vnfd/df/lcm_operations_configuration (container)

16596 If this variable is read-only (config: false) in the

16597 source YANG file, then _set_lcm_operations_configuration is considered as a private

16598 method. Backends looking to populate this variable should

16599 do so via calling thisObj._set_lcm_operations_configuration() directly.

16600

16601 YANG Description: This information element is a container for all

16602 attributes that affect the invocation of the VNF

16603 Lifecycle Management operations, structured by

16604 operation.

16605 """

16606 if hasattr(v, "_utype"):

16607 v = v._utype(v)

16608 try:

16609 t = YANGDynClass(v,base=yc_lcm_operations_configuration_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration, is_container='container', yang_name="lcm-operations-configuration", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

16610 except (TypeError, ValueError):

16611 raise ValueError({

16612 'error-string': """lcm_operations_configuration must be of a type compatible with container""",

16613 'defined-type': "container",

16614 'generated-type': """YANGDynClass(base=yc_lcm_operations_configuration_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration, is_container='container', yang_name="lcm-operations-configuration", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

16615 })

16616

16617 self.__lcm_operations_configuration = t

16618 if hasattr(self, '_set'):

16619 self._set()

16620

16621 def _unset_lcm_operations_configuration(self):

16622 self.__lcm_operations_configuration = YANGDynClass(base=yc_lcm_operations_configuration_etsi_nfv_nsd__nsd_vnfd_df_lcm_operations_configuration, is_container='container', yang_name="lcm-operations-configuration", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

16623

16624

16625 def _get_affinity_or_anti_affinity_group(self):

16626 """

16627 Getter method for affinity_or_anti_affinity_group, mapped from YANG variable /nsd/vnfd/df/affinity_or_anti_affinity_group (list)

16628

16629 YANG Description: The AffinityOrAntiAffinityGroup describes the affinity

16630 or anti-affinity relationship applicable between the

16631 virtualization containers to be created based on

16632 different VDUs, or between internal VLs to be created

16633 based on different VnfVirtualLinkDesc(s).

16634

16635 Per VNF, the affinity/anti-affinity rules defined using

16636 this information element, using the

16637 LocalAffinityOrAntiAffinityRule information element, and

16638 using the placement constraints in the

16639 GrantLifecycleOperation as defined in ETSI GS NFV-IFA

16640 007 [i.3] should be conflict-free. In case of conflicts,

16641 the placement constraints in the

16642 GrantLifecycleOperation shall take precedence.

16643 """

16644 return self.__affinity_or_anti_affinity_group

16645

16646 def _set_affinity_or_anti_affinity_group(self, v, load=False):

16647 """

16648 Setter method for affinity_or_anti_affinity_group, mapped from YANG variable /nsd/vnfd/df/affinity_or_anti_affinity_group (list)

16649 If this variable is read-only (config: false) in the

16650 source YANG file, then _set_affinity_or_anti_affinity_group is considered as a private

16651 method. Backends looking to populate this variable should

16652 do so via calling thisObj._set_affinity_or_anti_affinity_group() directly.

16653

16654 YANG Description: The AffinityOrAntiAffinityGroup describes the affinity

16655 or anti-affinity relationship applicable between the

16656 virtualization containers to be created based on

16657 different VDUs, or between internal VLs to be created

16658 based on different VnfVirtualLinkDesc(s).

16659

16660 Per VNF, the affinity/anti-affinity rules defined using

16661 this information element, using the

16662 LocalAffinityOrAntiAffinityRule information element, and

16663 using the placement constraints in the

16664 GrantLifecycleOperation as defined in ETSI GS NFV-IFA

16665 007 [i.3] should be conflict-free. In case of conflicts,

16666 the placement constraints in the

16667 GrantLifecycleOperation shall take precedence.

16668 """

16669 if hasattr(v, "_utype"):

16670 v = v._utype(v)

16671 try:

16672 t = YANGDynClass(v,base=YANGListType("id",yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_vnfd_df_affinity_or_anti_affinity_group, yang_name="affinity-or-anti-affinity-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

16673 except (TypeError, ValueError):

16674 raise ValueError({

16675 'error-string': """affinity_or_anti_affinity_group must be of a type compatible with list""",

16676 'defined-type': "list",

16677 'generated-type': """YANGDynClass(base=YANGListType("id",yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_vnfd_df_affinity_or_anti_affinity_group, yang_name="affinity-or-anti-affinity-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

16678 })

16679

16680 self.__affinity_or_anti_affinity_group = t

16681 if hasattr(self, '_set'):

16682 self._set()

16683

16684 def _unset_affinity_or_anti_affinity_group(self):

16685 self.__affinity_or_anti_affinity_group = YANGDynClass(base=YANGListType("id",yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_vnfd_df_affinity_or_anti_affinity_group, yang_name="affinity-or-anti-affinity-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

16686

16687

16688 def _get_indicator(self):

16689 """

16690 Getter method for indicator, mapped from YANG variable /nsd/vnfd/df/indicator (list)

16691

16692 YANG Description: Declares the VNF indicators that are supported by this

16693 VNF (specific to this DF).

16694 """

16695 return self.__indicator

16696

16697 def _set_indicator(self, v, load=False):

16698 """

16699 Setter method for indicator, mapped from YANG variable /nsd/vnfd/df/indicator (list)

16700 If this variable is read-only (config: false) in the

16701 source YANG file, then _set_indicator is considered as a private

16702 method. Backends looking to populate this variable should

16703 do so via calling thisObj._set_indicator() directly.

16704

16705 YANG Description: Declares the VNF indicators that are supported by this

16706 VNF (specific to this DF).

16707 """

16708 if hasattr(v, "_utype"):

16709 v = v._utype(v)

16710 try:

16711 t = YANGDynClass(v,base=YANGListType("id",yc_indicator_etsi_nfv_nsd__nsd_vnfd_df_indicator, yang_name="indicator", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="indicator", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

16712 except (TypeError, ValueError):

16713 raise ValueError({

16714 'error-string': """indicator must be of a type compatible with list""",

16715 'defined-type': "list",

16716 'generated-type': """YANGDynClass(base=YANGListType("id",yc_indicator_etsi_nfv_nsd__nsd_vnfd_df_indicator, yang_name="indicator", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="indicator", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

16717 })

16718

16719 self.__indicator = t

16720 if hasattr(self, '_set'):

16721 self._set()

16722

16723 def _unset_indicator(self):

16724 self.__indicator = YANGDynClass(base=YANGListType("id",yc_indicator_etsi_nfv_nsd__nsd_vnfd_df_indicator, yang_name="indicator", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="indicator", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

16725

16726

16727 def _get_supported_vnf_interfaces(self):

16728 """

16729 Getter method for supported_vnf_interfaces, mapped from YANG variable /nsd/vnfd/df/supported_vnf_interfaces (list)

16730

16731 YANG Description: Indicates which interfaces the VNF produces and provides

16732 additional details on how to access the interface

16733 endpoints.

16734 """

16735 return self.__supported_vnf_interfaces

16736

16737 def _set_supported_vnf_interfaces(self, v, load=False):

16738 """

16739 Setter method for supported_vnf_interfaces, mapped from YANG variable /nsd/vnfd/df/supported_vnf_interfaces (list)

16740 If this variable is read-only (config: false) in the

16741 source YANG file, then _set_supported_vnf_interfaces is considered as a private

16742 method. Backends looking to populate this variable should

16743 do so via calling thisObj._set_supported_vnf_interfaces() directly.

16744

16745 YANG Description: Indicates which interfaces the VNF produces and provides

16746 additional details on how to access the interface

16747 endpoints.

16748 """

16749 if hasattr(v, "_utype"):

16750 v = v._utype(v)

16751 try:

16752 t = YANGDynClass(v,base=YANGListType("name",yc_supported_vnf_interfaces_etsi_nfv_nsd__nsd_vnfd_df_supported_vnf_interfaces, yang_name="supported-vnf-interfaces", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="supported-vnf-interfaces", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

16753 except (TypeError, ValueError):

16754 raise ValueError({

16755 'error-string': """supported_vnf_interfaces must be of a type compatible with list""",

16756 'defined-type': "list",

16757 'generated-type': """YANGDynClass(base=YANGListType("name",yc_supported_vnf_interfaces_etsi_nfv_nsd__nsd_vnfd_df_supported_vnf_interfaces, yang_name="supported-vnf-interfaces", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="supported-vnf-interfaces", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

16758 })

16759

16760 self.__supported_vnf_interfaces = t

16761 if hasattr(self, '_set'):

16762 self._set()

16763

16764 def _unset_supported_vnf_interfaces(self):

16765 self.__supported_vnf_interfaces = YANGDynClass(base=YANGListType("name",yc_supported_vnf_interfaces_etsi_nfv_nsd__nsd_vnfd_df_supported_vnf_interfaces, yang_name="supported-vnf-interfaces", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="supported-vnf-interfaces", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

16766

16767

16768 def _get_monitoring_parameter(self):

16769 """

16770 Getter method for monitoring_parameter, mapped from YANG variable /nsd/vnfd/df/monitoring_parameter (list)

16771

16772 YANG Description: Defines the virtualised resources monitoring parameters

16773 on VNF level.

16774 """

16775 return self.__monitoring_parameter

16776

16777 def _set_monitoring_parameter(self, v, load=False):

16778 """

16779 Setter method for monitoring_parameter, mapped from YANG variable /nsd/vnfd/df/monitoring_parameter (list)

16780 If this variable is read-only (config: false) in the

16781 source YANG file, then _set_monitoring_parameter is considered as a private

16782 method. Backends looking to populate this variable should

16783 do so via calling thisObj._set_monitoring_parameter() directly.

16784

16785 YANG Description: Defines the virtualised resources monitoring parameters

16786 on VNF level.

16787 """

16788 if hasattr(v, "_utype"):

16789 v = v._utype(v)

16790 try:

16791 t = YANGDynClass(v,base=YANGListType("id",yc_monitoring_parameter_etsi_nfv_nsd__nsd_vnfd_df_monitoring_parameter, yang_name="monitoring-parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="monitoring-parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

16792 except (TypeError, ValueError):

16793 raise ValueError({

16794 'error-string': """monitoring_parameter must be of a type compatible with list""",

16795 'defined-type': "list",

16796 'generated-type': """YANGDynClass(base=YANGListType("id",yc_monitoring_parameter_etsi_nfv_nsd__nsd_vnfd_df_monitoring_parameter, yang_name="monitoring-parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="monitoring-parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

16797 })

16798

16799 self.__monitoring_parameter = t

16800 if hasattr(self, '_set'):

16801 self._set()

16802

16803 def _unset_monitoring_parameter(self):

16804 self.__monitoring_parameter = YANGDynClass(base=YANGListType("id",yc_monitoring_parameter_etsi_nfv_nsd__nsd_vnfd_df_monitoring_parameter, yang_name="monitoring-parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="monitoring-parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

16805

16806

16807 def _get_scaling_aspect(self):

16808 """

16809 Getter method for scaling_aspect, mapped from YANG variable /nsd/vnfd/df/scaling_aspect (list)

16810

16811 YANG Description: The scaling aspects supported by this DF of the VNF.

16812 scalingAspect shall be present if the VNF supports

16813 scaling.

16814 """

16815 return self.__scaling_aspect

16816

16817 def _set_scaling_aspect(self, v, load=False):

16818 """

16819 Setter method for scaling_aspect, mapped from YANG variable /nsd/vnfd/df/scaling_aspect (list)

16820 If this variable is read-only (config: false) in the

16821 source YANG file, then _set_scaling_aspect is considered as a private

16822 method. Backends looking to populate this variable should

16823 do so via calling thisObj._set_scaling_aspect() directly.

16824

16825 YANG Description: The scaling aspects supported by this DF of the VNF.

16826 scalingAspect shall be present if the VNF supports

16827 scaling.

16828 """

16829 if hasattr(v, "_utype"):

16830 v = v._utype(v)

16831 try:

16832 t = YANGDynClass(v,base=YANGListType("id",yc_scaling_aspect_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect, yang_name="scaling-aspect", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="scaling-aspect", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

16833 except (TypeError, ValueError):

16834 raise ValueError({

16835 'error-string': """scaling_aspect must be of a type compatible with list""",

16836 'defined-type': "list",

16837 'generated-type': """YANGDynClass(base=YANGListType("id",yc_scaling_aspect_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect, yang_name="scaling-aspect", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="scaling-aspect", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

16838 })

16839

16840 self.__scaling_aspect = t

16841 if hasattr(self, '_set'):

16842 self._set()

16843

16844 def _unset_scaling_aspect(self):

16845 self.__scaling_aspect = YANGDynClass(base=YANGListType("id",yc_scaling_aspect_etsi_nfv_nsd__nsd_vnfd_df_scaling_aspect, yang_name="scaling-aspect", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="scaling-aspect", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

16846

16847 id = __builtin__.property(_get_id, _set_id)

16848 description = __builtin__.property(_get_description, _set_description)

16849 vdu_profile = __builtin__.property(_get_vdu_profile, _set_vdu_profile)

16850 virtual_link_profile = __builtin__.property(_get_virtual_link_profile, _set_virtual_link_profile)

16851 instantiation_level = __builtin__.property(_get_instantiation_level, _set_instantiation_level)

16852 default_instantiation_level = __builtin__.property(_get_default_instantiation_level, _set_default_instantiation_level)

16853 supported_operation = __builtin__.property(_get_supported_operation, _set_supported_operation)

16854 lcm_operations_configuration = __builtin__.property(_get_lcm_operations_configuration, _set_lcm_operations_configuration)

16855 affinity_or_anti_affinity_group = __builtin__.property(_get_affinity_or_anti_affinity_group, _set_affinity_or_anti_affinity_group)

16856 indicator = __builtin__.property(_get_indicator, _set_indicator)

16857 supported_vnf_interfaces = __builtin__.property(_get_supported_vnf_interfaces, _set_supported_vnf_interfaces)

16858 monitoring_parameter = __builtin__.property(_get_monitoring_parameter, _set_monitoring_parameter)

16859 scaling_aspect = __builtin__.property(_get_scaling_aspect, _set_scaling_aspect)

16860

16861

16862 _pyangbind_elements = OrderedDict([('id', id), ('description', description), ('vdu_profile', vdu_profile), ('virtual_link_profile', virtual_link_profile), ('instantiation_level', instantiation_level), ('default_instantiation_level', default_instantiation_level), ('supported_operation', supported_operation), ('lcm_operations_configuration', lcm_operations_configuration), ('affinity_or_anti_affinity_group', affinity_or_anti_affinity_group), ('indicator', indicator), ('supported_vnf_interfaces', supported_vnf_interfaces), ('monitoring_parameter', monitoring_parameter), ('scaling_aspect', scaling_aspect), ])

16863

16864

16865 class yc_additional_configurable_property_etsi_nfv_nsd__nsd_vnfd_configurable_properties_additional_configurable_property(PybindBase):

16866 """

16867 This class was auto-generated by the PythonClass plugin for PYANG

16868 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/configurable-properties/additional-configurable-property. Each member element of

16869 the container is represented as a class variable - with a specific

16870 YANG type.

16871

16872 YANG Description: It provides VNF specific configurable properties that can

16873 be modified using the ModifyVnfConfiguration operation.

16874 """

16875 __slots__ = ('_path_helper', '_extmethods', '__key','__value',)

16876

16877 _yang_name = 'additional-configurable-property'

16878 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

16879

16880 _pybind_generated_by = 'container'

16881

16882 def __init__(self, *args, **kwargs):

16883

16884 self._path_helper = False

16885

16886 self._extmethods = False

16887 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

16888 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

16889

16890 load = kwargs.pop("load", None)

16891 if args:

16892 if len(args) > 1:

16893 raise TypeError("cannot create a YANG container with >1 argument")

16894 all_attr = True

16895 for e in self._pyangbind_elements:

16896 if not hasattr(args[0], e):

16897 all_attr = False

16898 break

16899 if not all_attr:

16900 raise ValueError("Supplied object did not have the correct attributes")

16901 for e in self._pyangbind_elements:

16902 nobj = getattr(args[0], e)

16903 if nobj._changed() is False:

16904 continue

16905 setmethod = getattr(self, "_set_%s" % e)

16906 if load is None:

16907 setmethod(getattr(args[0], e))

16908 else:

16909 setmethod(getattr(args[0], e), load=load)

16910

16911 def _path(self):

16912 if hasattr(self, "_parent"):

16913 return self._parent._path()+[self._yang_name]

16914 else:

16915 return ['nsd', 'vnfd', 'configurable-properties', 'additional-configurable-property']

16916

16917 def _get_key(self):

16918 """

16919 Getter method for key, mapped from YANG variable /nsd/vnfd/configurable_properties/additional_configurable_property/key (string)

16920 """

16921 return self.__key

16922

16923 def _set_key(self, v, load=False):

16924 """

16925 Setter method for key, mapped from YANG variable /nsd/vnfd/configurable_properties/additional_configurable_property/key (string)

16926 If this variable is read-only (config: false) in the

16927 source YANG file, then _set_key is considered as a private

16928 method. Backends looking to populate this variable should

16929 do so via calling thisObj._set_key() directly.

16930 """

16931 parent = getattr(self, "_parent", None)

16932 if parent is not None and load is False:

16933 raise AttributeError("Cannot set keys directly when" +

16934 " within an instantiated list")

16935

16936 if hasattr(v, "_utype"):

16937 v = v._utype(v)

16938 try:

16939 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

16940 except (TypeError, ValueError):

16941 raise ValueError({

16942 'error-string': """key must be of a type compatible with string""",

16943 'defined-type': "string",

16944 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

16945 })

16946

16947 self.__key = t

16948 if hasattr(self, '_set'):

16949 self._set()

16950

16951 def _unset_key(self):

16952 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

16953

16954

16955 def _get_value(self):

16956 """

16957 Getter method for value, mapped from YANG variable /nsd/vnfd/configurable_properties/additional_configurable_property/value (string)

16958 """

16959 return self.__value

16960

16961 def _set_value(self, v, load=False):

16962 """

16963 Setter method for value, mapped from YANG variable /nsd/vnfd/configurable_properties/additional_configurable_property/value (string)

16964 If this variable is read-only (config: false) in the

16965 source YANG file, then _set_value is considered as a private

16966 method. Backends looking to populate this variable should

16967 do so via calling thisObj._set_value() directly.

16968 """

16969 if hasattr(v, "_utype"):

16970 v = v._utype(v)

16971 try:

16972 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

16973 except (TypeError, ValueError):

16974 raise ValueError({

16975 'error-string': """value must be of a type compatible with string""",

16976 'defined-type': "string",

16977 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

16978 })

16979

16980 self.__value = t

16981 if hasattr(self, '_set'):

16982 self._set()

16983

16984 def _unset_value(self):

16985 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

16986

16987 key = __builtin__.property(_get_key, _set_key)

16988 value = __builtin__.property(_get_value, _set_value)

16989

16990

16991 _pyangbind_elements = OrderedDict([('key', key), ('value', value), ])

16992

16993

16994 class yc_configurable_properties_etsi_nfv_nsd__nsd_vnfd_configurable_properties(PybindBase):

16995 """

16996 This class was auto-generated by the PythonClass plugin for PYANG

16997 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/configurable-properties. Each member element of

16998 the container is represented as a class variable - with a specific

16999 YANG type.

17000

17001 YANG Description: Describes the configurable properties of the VNF

17002(e.g. related to auto scaling and auto healing).

17003 """

17004 __slots__ = ('_path_helper', '_extmethods', '__is_auto_scalable_enabled','__is_auto_heal_enabled','__additional_configurable_property',)

17005

17006 _yang_name = 'configurable-properties'

17007 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

17008

17009 _pybind_generated_by = 'container'

17010

17011 def __init__(self, *args, **kwargs):

17012

17013 self._path_helper = False

17014

17015 self._extmethods = False

17016 self.__is_auto_scalable_enabled = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="is-auto-scalable-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

17017 self.__is_auto_heal_enabled = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="is-auto-heal-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

17018 self.__additional_configurable_property = YANGDynClass(base=YANGListType("key",yc_additional_configurable_property_etsi_nfv_nsd__nsd_vnfd_configurable_properties_additional_configurable_property, yang_name="additional-configurable-property", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="additional-configurable-property", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

17019

17020 load = kwargs.pop("load", None)

17021 if args:

17022 if len(args) > 1:

17023 raise TypeError("cannot create a YANG container with >1 argument")

17024 all_attr = True

17025 for e in self._pyangbind_elements:

17026 if not hasattr(args[0], e):

17027 all_attr = False

17028 break

17029 if not all_attr:

17030 raise ValueError("Supplied object did not have the correct attributes")

17031 for e in self._pyangbind_elements:

17032 nobj = getattr(args[0], e)

17033 if nobj._changed() is False:

17034 continue

17035 setmethod = getattr(self, "_set_%s" % e)

17036 if load is None:

17037 setmethod(getattr(args[0], e))

17038 else:

17039 setmethod(getattr(args[0], e), load=load)

17040

17041 def _path(self):

17042 if hasattr(self, "_parent"):

17043 return self._parent._path()+[self._yang_name]

17044 else:

17045 return ['nsd', 'vnfd', 'configurable-properties']

17046

17047 def _get_is_auto_scalable_enabled(self):

17048 """

17049 Getter method for is_auto_scalable_enabled, mapped from YANG variable /nsd/vnfd/configurable_properties/is_auto_scalable_enabled (boolean)

17050

17051 YANG Description: It permits to enable (TRUE) / disable (FALSE) the

17052 auto-scaling functionality.

17053 """

17054 return self.__is_auto_scalable_enabled

17055

17056 def _set_is_auto_scalable_enabled(self, v, load=False):

17057 """

17058 Setter method for is_auto_scalable_enabled, mapped from YANG variable /nsd/vnfd/configurable_properties/is_auto_scalable_enabled (boolean)

17059 If this variable is read-only (config: false) in the

17060 source YANG file, then _set_is_auto_scalable_enabled is considered as a private

17061 method. Backends looking to populate this variable should

17062 do so via calling thisObj._set_is_auto_scalable_enabled() directly.

17063

17064 YANG Description: It permits to enable (TRUE) / disable (FALSE) the

17065 auto-scaling functionality.

17066 """

17067 if hasattr(v, "_utype"):

17068 v = v._utype(v)

17069 try:

17070 t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="is-auto-scalable-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

17071 except (TypeError, ValueError):

17072 raise ValueError({

17073 'error-string': """is_auto_scalable_enabled must be of a type compatible with boolean""",

17074 'defined-type': "boolean",

17075 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="is-auto-scalable-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)""",

17076 })

17077

17078 self.__is_auto_scalable_enabled = t

17079 if hasattr(self, '_set'):

17080 self._set()

17081

17082 def _unset_is_auto_scalable_enabled(self):

17083 self.__is_auto_scalable_enabled = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="is-auto-scalable-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

17084

17085

17086 def _get_is_auto_heal_enabled(self):

17087 """

17088 Getter method for is_auto_heal_enabled, mapped from YANG variable /nsd/vnfd/configurable_properties/is_auto_heal_enabled (boolean)

17089

17090 YANG Description: It permits to enable (TRUE) / disable (FALSE) the

17091 auto-healing functionality.

17092 """

17093 return self.__is_auto_heal_enabled

17094

17095 def _set_is_auto_heal_enabled(self, v, load=False):

17096 """

17097 Setter method for is_auto_heal_enabled, mapped from YANG variable /nsd/vnfd/configurable_properties/is_auto_heal_enabled (boolean)

17098 If this variable is read-only (config: false) in the

17099 source YANG file, then _set_is_auto_heal_enabled is considered as a private

17100 method. Backends looking to populate this variable should

17101 do so via calling thisObj._set_is_auto_heal_enabled() directly.

17102

17103 YANG Description: It permits to enable (TRUE) / disable (FALSE) the

17104 auto-healing functionality.

17105 """

17106 if hasattr(v, "_utype"):

17107 v = v._utype(v)

17108 try:

17109 t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="is-auto-heal-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

17110 except (TypeError, ValueError):

17111 raise ValueError({

17112 'error-string': """is_auto_heal_enabled must be of a type compatible with boolean""",

17113 'defined-type': "boolean",

17114 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="is-auto-heal-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)""",

17115 })

17116

17117 self.__is_auto_heal_enabled = t

17118 if hasattr(self, '_set'):

17119 self._set()

17120

17121 def _unset_is_auto_heal_enabled(self):

17122 self.__is_auto_heal_enabled = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="is-auto-heal-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

17123

17124

17125 def _get_additional_configurable_property(self):

17126 """

17127 Getter method for additional_configurable_property, mapped from YANG variable /nsd/vnfd/configurable_properties/additional_configurable_property (list)

17128

17129 YANG Description: It provides VNF specific configurable properties that can

17130 be modified using the ModifyVnfConfiguration operation.

17131 """

17132 return self.__additional_configurable_property

17133

17134 def _set_additional_configurable_property(self, v, load=False):

17135 """

17136 Setter method for additional_configurable_property, mapped from YANG variable /nsd/vnfd/configurable_properties/additional_configurable_property (list)

17137 If this variable is read-only (config: false) in the

17138 source YANG file, then _set_additional_configurable_property is considered as a private

17139 method. Backends looking to populate this variable should

17140 do so via calling thisObj._set_additional_configurable_property() directly.

17141

17142 YANG Description: It provides VNF specific configurable properties that can

17143 be modified using the ModifyVnfConfiguration operation.

17144 """

17145 if hasattr(v, "_utype"):

17146 v = v._utype(v)

17147 try:

17148 t = YANGDynClass(v,base=YANGListType("key",yc_additional_configurable_property_etsi_nfv_nsd__nsd_vnfd_configurable_properties_additional_configurable_property, yang_name="additional-configurable-property", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="additional-configurable-property", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

17149 except (TypeError, ValueError):

17150 raise ValueError({

17151 'error-string': """additional_configurable_property must be of a type compatible with list""",

17152 'defined-type': "list",

17153 'generated-type': """YANGDynClass(base=YANGListType("key",yc_additional_configurable_property_etsi_nfv_nsd__nsd_vnfd_configurable_properties_additional_configurable_property, yang_name="additional-configurable-property", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="additional-configurable-property", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

17154 })

17155

17156 self.__additional_configurable_property = t

17157 if hasattr(self, '_set'):

17158 self._set()

17159

17160 def _unset_additional_configurable_property(self):

17161 self.__additional_configurable_property = YANGDynClass(base=YANGListType("key",yc_additional_configurable_property_etsi_nfv_nsd__nsd_vnfd_configurable_properties_additional_configurable_property, yang_name="additional-configurable-property", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="additional-configurable-property", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

17162

17163 is_auto_scalable_enabled = __builtin__.property(_get_is_auto_scalable_enabled, _set_is_auto_scalable_enabled)

17164 is_auto_heal_enabled = __builtin__.property(_get_is_auto_heal_enabled, _set_is_auto_heal_enabled)

17165 additional_configurable_property = __builtin__.property(_get_additional_configurable_property, _set_additional_configurable_property)

17166

17167

17168 _pyangbind_elements = OrderedDict([('is_auto_scalable_enabled', is_auto_scalable_enabled), ('is_auto_heal_enabled', is_auto_heal_enabled), ('additional_configurable_property', additional_configurable_property), ])

17169

17170

17171 class yc_modifiable_attributes_etsi_nfv_nsd__nsd_vnfd_modifiable_attributes(PybindBase):

17172 """

17173 This class was auto-generated by the PythonClass plugin for PYANG

17174 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/modifiable-attributes. Each member element of

17175 the container is represented as a class variable - with a specific

17176 YANG type.

17177

17178 YANG Description: Describes the modifiable attributes of the VNF.

17179 """

17180 __slots__ = ('_path_helper', '_extmethods', '__extension','__metadata',)

17181

17182 _yang_name = 'modifiable-attributes'

17183 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

17184

17185 _pybind_generated_by = 'container'

17186

17187 def __init__(self, *args, **kwargs):

17188

17189 self._path_helper = False

17190

17191 self._extmethods = False

17192 self.__extension = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="extension", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17193 self.__metadata = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="metadata", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17194

17195 load = kwargs.pop("load", None)

17196 if args:

17197 if len(args) > 1:

17198 raise TypeError("cannot create a YANG container with >1 argument")

17199 all_attr = True

17200 for e in self._pyangbind_elements:

17201 if not hasattr(args[0], e):

17202 all_attr = False

17203 break

17204 if not all_attr:

17205 raise ValueError("Supplied object did not have the correct attributes")

17206 for e in self._pyangbind_elements:

17207 nobj = getattr(args[0], e)

17208 if nobj._changed() is False:

17209 continue

17210 setmethod = getattr(self, "_set_%s" % e)

17211 if load is None:

17212 setmethod(getattr(args[0], e))

17213 else:

17214 setmethod(getattr(args[0], e), load=load)

17215

17216 def _path(self):

17217 if hasattr(self, "_parent"):

17218 return self._parent._path()+[self._yang_name]

17219 else:

17220 return ['nsd', 'vnfd', 'modifiable-attributes']

17221

17222 def _get_extension(self):

17223 """

17224 Getter method for extension, mapped from YANG variable /nsd/vnfd/modifiable_attributes/extension (string)

17225

17226 YANG Description: Additional VNF-specific attributes of VnfInfo that

17227 affect the lifecycle management of a VNF instance and

17228 that are writeable.

17229

17230 For each VNF instance, these attributes are stored

17231 persistently by the VNFM and can be queried and

17232 modified through the VNFM.

17233

17234 These attributes are intended to be consumed by the

17235 VNFM or by the lifecycle management scripts during the

17236 execution of VNF lifecycle management operations.

17237

17238 Modifying these values has no direct effect on the VNF

17239 instance; however, modified values can be considered

17240 during subsequent VNF lifecycle management operations,

17241 which means that the modified values can indirectly

17242 affect the configuration of the VNF instance.

17243 """

17244 return self.__extension

17245

17246 def _set_extension(self, v, load=False):

17247 """

17248 Setter method for extension, mapped from YANG variable /nsd/vnfd/modifiable_attributes/extension (string)

17249 If this variable is read-only (config: false) in the

17250 source YANG file, then _set_extension is considered as a private

17251 method. Backends looking to populate this variable should

17252 do so via calling thisObj._set_extension() directly.

17253

17254 YANG Description: Additional VNF-specific attributes of VnfInfo that

17255 affect the lifecycle management of a VNF instance and

17256 that are writeable.

17257

17258 For each VNF instance, these attributes are stored

17259 persistently by the VNFM and can be queried and

17260 modified through the VNFM.

17261

17262 These attributes are intended to be consumed by the

17263 VNFM or by the lifecycle management scripts during the

17264 execution of VNF lifecycle management operations.

17265

17266 Modifying these values has no direct effect on the VNF

17267 instance; however, modified values can be considered

17268 during subsequent VNF lifecycle management operations,

17269 which means that the modified values can indirectly

17270 affect the configuration of the VNF instance.

17271 """

17272 if hasattr(v, "_utype"):

17273 v = v._utype(v)

17274 try:

17275 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="extension", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17276 except (TypeError, ValueError):

17277 raise ValueError({

17278 'error-string': """extension must be of a type compatible with string""",

17279 'defined-type': "string",

17280 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="extension", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

17281 })

17282

17283 self.__extension = t

17284 if hasattr(self, '_set'):

17285 self._set()

17286

17287 def _unset_extension(self):

17288 self.__extension = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="extension", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17289

17290

17291 def _get_metadata(self):

17292 """

17293 Getter method for metadata, mapped from YANG variable /nsd/vnfd/modifiable_attributes/metadata (string)

17294

17295 YANG Description: Additional VNF-specific attributes of VnfInfo that are

17296 writeable and that provide metadata describing the VNF

17297 instance.

17298

17299 For each VNF instance, these attributes are stored

17300 persistently by the VNFM and can be queried and modified

17301 through the VNFM.

17302

17303 These attributes are intended to provide information to

17304 functional blocks external to the VNFM and will not be

17305 used by the VNFM or the VNF lifecycle management

17306 scripts when executing lifecycle management operations.

17307

17308 Modifying these attributes has no effect on the VNF

17309 instance. It only affects the attribute values stored by

17310 the VNFM.

17311 """

17312 return self.__metadata

17313

17314 def _set_metadata(self, v, load=False):

17315 """

17316 Setter method for metadata, mapped from YANG variable /nsd/vnfd/modifiable_attributes/metadata (string)

17317 If this variable is read-only (config: false) in the

17318 source YANG file, then _set_metadata is considered as a private

17319 method. Backends looking to populate this variable should

17320 do so via calling thisObj._set_metadata() directly.

17321

17322 YANG Description: Additional VNF-specific attributes of VnfInfo that are

17323 writeable and that provide metadata describing the VNF

17324 instance.

17325

17326 For each VNF instance, these attributes are stored

17327 persistently by the VNFM and can be queried and modified

17328 through the VNFM.

17329

17330 These attributes are intended to provide information to

17331 functional blocks external to the VNFM and will not be

17332 used by the VNFM or the VNF lifecycle management

17333 scripts when executing lifecycle management operations.

17334

17335 Modifying these attributes has no effect on the VNF

17336 instance. It only affects the attribute values stored by

17337 the VNFM.

17338 """

17339 if hasattr(v, "_utype"):

17340 v = v._utype(v)

17341 try:

17342 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="metadata", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17343 except (TypeError, ValueError):

17344 raise ValueError({

17345 'error-string': """metadata must be of a type compatible with string""",

17346 'defined-type': "string",

17347 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="metadata", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

17348 })

17349

17350 self.__metadata = t

17351 if hasattr(self, '_set'):

17352 self._set()

17353

17354 def _unset_metadata(self):

17355 self.__metadata = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="metadata", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17356

17357 extension = __builtin__.property(_get_extension, _set_extension)

17358 metadata = __builtin__.property(_get_metadata, _set_metadata)

17359

17360

17361 _pyangbind_elements = OrderedDict([('extension', extension), ('metadata', metadata), ])

17362

17363

17364 class yc_script_input_etsi_nfv_nsd__nsd_vnfd_lifecycle_management_script_script_input(PybindBase):

17365 """

17366 This class was auto-generated by the PythonClass plugin for PYANG

17367 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/lifecycle-management-script/script-input. Each member element of

17368 the container is represented as a class variable - with a specific

17369 YANG type.

17370

17371 YANG Description: Array of KVP requirements with the key as the parameter

17372 name and the value as the parameter that need to be

17373 passed as an input to the script.

17374 """

17375 __slots__ = ('_path_helper', '_extmethods', '__key','__value',)

17376

17377 _yang_name = 'script-input'

17378 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

17379

17380 _pybind_generated_by = 'container'

17381

17382 def __init__(self, *args, **kwargs):

17383

17384 self._path_helper = False

17385

17386 self._extmethods = False

17387 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17388 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17389

17390 load = kwargs.pop("load", None)

17391 if args:

17392 if len(args) > 1:

17393 raise TypeError("cannot create a YANG container with >1 argument")

17394 all_attr = True

17395 for e in self._pyangbind_elements:

17396 if not hasattr(args[0], e):

17397 all_attr = False

17398 break

17399 if not all_attr:

17400 raise ValueError("Supplied object did not have the correct attributes")

17401 for e in self._pyangbind_elements:

17402 nobj = getattr(args[0], e)

17403 if nobj._changed() is False:

17404 continue

17405 setmethod = getattr(self, "_set_%s" % e)

17406 if load is None:

17407 setmethod(getattr(args[0], e))

17408 else:

17409 setmethod(getattr(args[0], e), load=load)

17410

17411 def _path(self):

17412 if hasattr(self, "_parent"):

17413 return self._parent._path()+[self._yang_name]

17414 else:

17415 return ['nsd', 'vnfd', 'lifecycle-management-script', 'script-input']

17416

17417 def _get_key(self):

17418 """

17419 Getter method for key, mapped from YANG variable /nsd/vnfd/lifecycle_management_script/script_input/key (string)

17420

17421 YANG Description: Includes a VNF LCM script (e.g. written in a DSL as

17422 specified in requirement VNF_PACK.LCM.001) triggered to

17423 react to one of the events listed in the event

17424 attribute.

17425

17426 The string value specified here is a path to a file in

17427 the VNF package.

17428 """

17429 return self.__key

17430

17431 def _set_key(self, v, load=False):

17432 """

17433 Setter method for key, mapped from YANG variable /nsd/vnfd/lifecycle_management_script/script_input/key (string)

17434 If this variable is read-only (config: false) in the

17435 source YANG file, then _set_key is considered as a private

17436 method. Backends looking to populate this variable should

17437 do so via calling thisObj._set_key() directly.

17438

17439 YANG Description: Includes a VNF LCM script (e.g. written in a DSL as

17440 specified in requirement VNF_PACK.LCM.001) triggered to

17441 react to one of the events listed in the event

17442 attribute.

17443

17444 The string value specified here is a path to a file in

17445 the VNF package.

17446 """

17447 parent = getattr(self, "_parent", None)

17448 if parent is not None and load is False:

17449 raise AttributeError("Cannot set keys directly when" +

17450 " within an instantiated list")

17451

17452 if hasattr(v, "_utype"):

17453 v = v._utype(v)

17454 try:

17455 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17456 except (TypeError, ValueError):

17457 raise ValueError({

17458 'error-string': """key must be of a type compatible with string""",

17459 'defined-type': "string",

17460 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

17461 })

17462

17463 self.__key = t

17464 if hasattr(self, '_set'):

17465 self._set()

17466

17467 def _unset_key(self):

17468 self.__key = YANGDynClass(base=str, is_leaf=True, yang_name="key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17469

17470

17471 def _get_value(self):

17472 """

17473 Getter method for value, mapped from YANG variable /nsd/vnfd/lifecycle_management_script/script_input/value (string)

17474 """

17475 return self.__value

17476

17477 def _set_value(self, v, load=False):

17478 """

17479 Setter method for value, mapped from YANG variable /nsd/vnfd/lifecycle_management_script/script_input/value (string)

17480 If this variable is read-only (config: false) in the

17481 source YANG file, then _set_value is considered as a private

17482 method. Backends looking to populate this variable should

17483 do so via calling thisObj._set_value() directly.

17484 """

17485 if hasattr(v, "_utype"):

17486 v = v._utype(v)

17487 try:

17488 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17489 except (TypeError, ValueError):

17490 raise ValueError({

17491 'error-string': """value must be of a type compatible with string""",

17492 'defined-type': "string",

17493 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

17494 })

17495

17496 self.__value = t

17497 if hasattr(self, '_set'):

17498 self._set()

17499

17500 def _unset_value(self):

17501 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17502

17503 key = __builtin__.property(_get_key, _set_key)

17504 value = __builtin__.property(_get_value, _set_value)

17505

17506

17507 _pyangbind_elements = OrderedDict([('key', key), ('value', value), ])

17508

17509

17510 class yc_lifecycle_management_script_etsi_nfv_nsd__nsd_vnfd_lifecycle_management_script(PybindBase):

17511 """

17512 This class was auto-generated by the PythonClass plugin for PYANG

17513 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/lifecycle-management-script. Each member element of

17514 the container is represented as a class variable - with a specific

17515 YANG type.

17516

17517 YANG Description: Includes a list of events and corresponding management

17518 scripts performed for the VNF.

17519 """

17520 __slots__ = ('_path_helper', '_extmethods', '__id','__event','__lcm_transition_event','__script','__script_dsl','__script_input',)

17521

17522 _yang_name = 'lifecycle-management-script'

17523 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

17524

17525 _pybind_generated_by = 'container'

17526

17527 def __init__(self, *args, **kwargs):

17528

17529 self._path_helper = False

17530

17531 self._extmethods = False

17532 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17533 self.__event = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'start-instantiation': {}, 'end-instantiation': {}, 'start-scaling': {}, 'end-scaling': {}, 'start-healing': {}, 'end-healing': {}, 'start-termination': {}, 'end-termination': {}, 'start-vnf-flavour-change': {}, 'end-vnf-flavour-change': {}, 'start-vnf-operation-change': {}, 'end-vnf-operation-change': {}, 'start-vnf-ext-conn-change': {}, 'end-vnf-ext-conn-change': {}, 'start-vnfinfo-modification': {}, 'end-vnfinfo-modification': {}},)), is_leaf=False, yang_name="event", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='internal-lifecycle-management-script-event', is_config=True)

17534 self.__lcm_transition_event = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="lcm-transition-event", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17535 self.__script = YANGDynClass(base=str, is_leaf=True, yang_name="script", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17536 self.__script_dsl = YANGDynClass(base=str, is_leaf=True, yang_name="script-dsl", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17537 self.__script_input = YANGDynClass(base=YANGListType("key",yc_script_input_etsi_nfv_nsd__nsd_vnfd_lifecycle_management_script_script_input, yang_name="script-input", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="script-input", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

17538

17539 load = kwargs.pop("load", None)

17540 if args:

17541 if len(args) > 1:

17542 raise TypeError("cannot create a YANG container with >1 argument")

17543 all_attr = True

17544 for e in self._pyangbind_elements:

17545 if not hasattr(args[0], e):

17546 all_attr = False

17547 break

17548 if not all_attr:

17549 raise ValueError("Supplied object did not have the correct attributes")

17550 for e in self._pyangbind_elements:

17551 nobj = getattr(args[0], e)

17552 if nobj._changed() is False:

17553 continue

17554 setmethod = getattr(self, "_set_%s" % e)

17555 if load is None:

17556 setmethod(getattr(args[0], e))

17557 else:

17558 setmethod(getattr(args[0], e), load=load)

17559

17560 def _path(self):

17561 if hasattr(self, "_parent"):

17562 return self._parent._path()+[self._yang_name]

17563 else:

17564 return ['nsd', 'vnfd', 'lifecycle-management-script']

17565

17566 def _get_id(self):

17567 """

17568 Getter method for id, mapped from YANG variable /nsd/vnfd/lifecycle_management_script/id (string)

17569

17570 YANG Description: A unique string that identfies the script in question.

17571 """

17572 return self.__id

17573

17574 def _set_id(self, v, load=False):

17575 """

17576 Setter method for id, mapped from YANG variable /nsd/vnfd/lifecycle_management_script/id (string)

17577 If this variable is read-only (config: false) in the

17578 source YANG file, then _set_id is considered as a private

17579 method. Backends looking to populate this variable should

17580 do so via calling thisObj._set_id() directly.

17581

17582 YANG Description: A unique string that identfies the script in question.

17583 """

17584 parent = getattr(self, "_parent", None)

17585 if parent is not None and load is False:

17586 raise AttributeError("Cannot set keys directly when" +

17587 " within an instantiated list")

17588

17589 if hasattr(v, "_utype"):

17590 v = v._utype(v)

17591 try:

17592 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17593 except (TypeError, ValueError):

17594 raise ValueError({

17595 'error-string': """id must be of a type compatible with string""",

17596 'defined-type': "string",

17597 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

17598 })

17599

17600 self.__id = t

17601 if hasattr(self, '_set'):

17602 self._set()

17603

17604 def _unset_id(self):

17605 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17606

17607

17608 def _get_event(self):

17609 """

17610 Getter method for event, mapped from YANG variable /nsd/vnfd/lifecycle_management_script/event (internal-lifecycle-management-script-event)

17611

17612 YANG Description: Describes VNF lifecycle event(s) or an external stimulus

17613 detected on a VNFM reference point.

17614 """

17615 return self.__event

17616

17617 def _set_event(self, v, load=False):

17618 """

17619 Setter method for event, mapped from YANG variable /nsd/vnfd/lifecycle_management_script/event (internal-lifecycle-management-script-event)

17620 If this variable is read-only (config: false) in the

17621 source YANG file, then _set_event is considered as a private

17622 method. Backends looking to populate this variable should

17623 do so via calling thisObj._set_event() directly.

17624

17625 YANG Description: Describes VNF lifecycle event(s) or an external stimulus

17626 detected on a VNFM reference point.

17627 """

17628 if hasattr(v, "_utype"):

17629 v = v._utype(v)

17630 try:

17631 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'start-instantiation': {}, 'end-instantiation': {}, 'start-scaling': {}, 'end-scaling': {}, 'start-healing': {}, 'end-healing': {}, 'start-termination': {}, 'end-termination': {}, 'start-vnf-flavour-change': {}, 'end-vnf-flavour-change': {}, 'start-vnf-operation-change': {}, 'end-vnf-operation-change': {}, 'start-vnf-ext-conn-change': {}, 'end-vnf-ext-conn-change': {}, 'start-vnfinfo-modification': {}, 'end-vnfinfo-modification': {}},)), is_leaf=False, yang_name="event", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='internal-lifecycle-management-script-event', is_config=True)

17632 except (TypeError, ValueError):

17633 raise ValueError({

17634 'error-string': """event must be of a type compatible with internal-lifecycle-management-script-event""",

17635 'defined-type': "etsi-nfv-nsd:internal-lifecycle-management-script-event",

17636 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'start-instantiation': {}, 'end-instantiation': {}, 'start-scaling': {}, 'end-scaling': {}, 'start-healing': {}, 'end-healing': {}, 'start-termination': {}, 'end-termination': {}, 'start-vnf-flavour-change': {}, 'end-vnf-flavour-change': {}, 'start-vnf-operation-change': {}, 'end-vnf-operation-change': {}, 'start-vnf-ext-conn-change': {}, 'end-vnf-ext-conn-change': {}, 'start-vnfinfo-modification': {}, 'end-vnfinfo-modification': {}},)), is_leaf=False, yang_name="event", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='internal-lifecycle-management-script-event', is_config=True)""",

17637 })

17638

17639 self.__event = t

17640 if hasattr(self, '_set'):

17641 self._set()

17642

17643 def _unset_event(self):

17644 self.__event = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'start-instantiation': {}, 'end-instantiation': {}, 'start-scaling': {}, 'end-scaling': {}, 'start-healing': {}, 'end-healing': {}, 'start-termination': {}, 'end-termination': {}, 'start-vnf-flavour-change': {}, 'end-vnf-flavour-change': {}, 'start-vnf-operation-change': {}, 'end-vnf-operation-change': {}, 'start-vnf-ext-conn-change': {}, 'end-vnf-ext-conn-change': {}, 'start-vnfinfo-modification': {}, 'end-vnfinfo-modification': {}},)), is_leaf=False, yang_name="event", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='internal-lifecycle-management-script-event', is_config=True)

17645

17646

17647 def _get_lcm_transition_event(self):

17648 """

17649 Getter method for lcm_transition_event, mapped from YANG variable /nsd/vnfd/lifecycle_management_script/lcm_transition_event (string)

17650

17651 YANG Description: Describes the transition VNF lifecycle event(s) that

17652 cannot be mapped to any of the enumerated values

17653 defined for the event attribute.

17654 """

17655 return self.__lcm_transition_event

17656

17657 def _set_lcm_transition_event(self, v, load=False):

17658 """

17659 Setter method for lcm_transition_event, mapped from YANG variable /nsd/vnfd/lifecycle_management_script/lcm_transition_event (string)

17660 If this variable is read-only (config: false) in the

17661 source YANG file, then _set_lcm_transition_event is considered as a private

17662 method. Backends looking to populate this variable should

17663 do so via calling thisObj._set_lcm_transition_event() directly.

17664

17665 YANG Description: Describes the transition VNF lifecycle event(s) that

17666 cannot be mapped to any of the enumerated values

17667 defined for the event attribute.

17668 """

17669 if hasattr(v, "_utype"):

17670 v = v._utype(v)

17671 try:

17672 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="lcm-transition-event", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17673 except (TypeError, ValueError):

17674 raise ValueError({

17675 'error-string': """lcm_transition_event must be of a type compatible with string""",

17676 'defined-type': "string",

17677 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="lcm-transition-event", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

17678 })

17679

17680 self.__lcm_transition_event = t

17681 if hasattr(self, '_set'):

17682 self._set()

17683

17684 def _unset_lcm_transition_event(self):

17685 self.__lcm_transition_event = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="lcm-transition-event", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17686

17687

17688 def _get_script(self):

17689 """

17690 Getter method for script, mapped from YANG variable /nsd/vnfd/lifecycle_management_script/script (string)

17691

17692 YANG Description: Includes a VNF LCM script (e.g. written in a DSL as

17693 specified in requirement VNF_PACK.LCM.001) triggered to

17694 react to one of the events listed in the event

17695 attribute.

17696 """

17697 return self.__script

17698

17699 def _set_script(self, v, load=False):

17700 """

17701 Setter method for script, mapped from YANG variable /nsd/vnfd/lifecycle_management_script/script (string)

17702 If this variable is read-only (config: false) in the

17703 source YANG file, then _set_script is considered as a private

17704 method. Backends looking to populate this variable should

17705 do so via calling thisObj._set_script() directly.

17706

17707 YANG Description: Includes a VNF LCM script (e.g. written in a DSL as

17708 specified in requirement VNF_PACK.LCM.001) triggered to

17709 react to one of the events listed in the event

17710 attribute.

17711 """

17712 if hasattr(v, "_utype"):

17713 v = v._utype(v)

17714 try:

17715 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="script", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17716 except (TypeError, ValueError):

17717 raise ValueError({

17718 'error-string': """script must be of a type compatible with string""",

17719 'defined-type': "string",

17720 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="script", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

17721 })

17722

17723 self.__script = t

17724 if hasattr(self, '_set'):

17725 self._set()

17726

17727 def _unset_script(self):

17728 self.__script = YANGDynClass(base=str, is_leaf=True, yang_name="script", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17729

17730

17731 def _get_script_dsl(self):

17732 """

17733 Getter method for script_dsl, mapped from YANG variable /nsd/vnfd/lifecycle_management_script/script_dsl (string)

17734

17735 YANG Description: Defines the domain specific language (i.e. the type) of

17736 script that is provided. Types of scripts could include

17737 bash, python, etc.

17738 """

17739 return self.__script_dsl

17740

17741 def _set_script_dsl(self, v, load=False):

17742 """

17743 Setter method for script_dsl, mapped from YANG variable /nsd/vnfd/lifecycle_management_script/script_dsl (string)

17744 If this variable is read-only (config: false) in the

17745 source YANG file, then _set_script_dsl is considered as a private

17746 method. Backends looking to populate this variable should

17747 do so via calling thisObj._set_script_dsl() directly.

17748

17749 YANG Description: Defines the domain specific language (i.e. the type) of

17750 script that is provided. Types of scripts could include

17751 bash, python, etc.

17752 """

17753 if hasattr(v, "_utype"):

17754 v = v._utype(v)

17755 try:

17756 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="script-dsl", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17757 except (TypeError, ValueError):

17758 raise ValueError({

17759 'error-string': """script_dsl must be of a type compatible with string""",

17760 'defined-type': "string",

17761 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="script-dsl", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

17762 })

17763

17764 self.__script_dsl = t

17765 if hasattr(self, '_set'):

17766 self._set()

17767

17768 def _unset_script_dsl(self):

17769 self.__script_dsl = YANGDynClass(base=str, is_leaf=True, yang_name="script-dsl", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17770

17771

17772 def _get_script_input(self):

17773 """

17774 Getter method for script_input, mapped from YANG variable /nsd/vnfd/lifecycle_management_script/script_input (list)

17775

17776 YANG Description: Array of KVP requirements with the key as the parameter

17777 name and the value as the parameter that need to be

17778 passed as an input to the script.

17779 """

17780 return self.__script_input

17781

17782 def _set_script_input(self, v, load=False):

17783 """

17784 Setter method for script_input, mapped from YANG variable /nsd/vnfd/lifecycle_management_script/script_input (list)

17785 If this variable is read-only (config: false) in the

17786 source YANG file, then _set_script_input is considered as a private

17787 method. Backends looking to populate this variable should

17788 do so via calling thisObj._set_script_input() directly.

17789

17790 YANG Description: Array of KVP requirements with the key as the parameter

17791 name and the value as the parameter that need to be

17792 passed as an input to the script.

17793 """

17794 if hasattr(v, "_utype"):

17795 v = v._utype(v)

17796 try:

17797 t = YANGDynClass(v,base=YANGListType("key",yc_script_input_etsi_nfv_nsd__nsd_vnfd_lifecycle_management_script_script_input, yang_name="script-input", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="script-input", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

17798 except (TypeError, ValueError):

17799 raise ValueError({

17800 'error-string': """script_input must be of a type compatible with list""",

17801 'defined-type': "list",

17802 'generated-type': """YANGDynClass(base=YANGListType("key",yc_script_input_etsi_nfv_nsd__nsd_vnfd_lifecycle_management_script_script_input, yang_name="script-input", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="script-input", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

17803 })

17804

17805 self.__script_input = t

17806 if hasattr(self, '_set'):

17807 self._set()

17808

17809 def _unset_script_input(self):

17810 self.__script_input = YANGDynClass(base=YANGListType("key",yc_script_input_etsi_nfv_nsd__nsd_vnfd_lifecycle_management_script_script_input, yang_name="script-input", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='key', extensions=None), is_container='list', yang_name="script-input", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

17811

17812 id = __builtin__.property(_get_id, _set_id)

17813 event = __builtin__.property(_get_event, _set_event)

17814 lcm_transition_event = __builtin__.property(_get_lcm_transition_event, _set_lcm_transition_event)

17815 script = __builtin__.property(_get_script, _set_script)

17816 script_dsl = __builtin__.property(_get_script_dsl, _set_script_dsl)

17817 script_input = __builtin__.property(_get_script_input, _set_script_input)

17818

17819

17820 _pyangbind_elements = OrderedDict([('id', id), ('event', event), ('lcm_transition_event', lcm_transition_event), ('script', script), ('script_dsl', script_dsl), ('script_input', script_input), ])

17821

17822

17823 class yc_element_group_etsi_nfv_nsd__nsd_vnfd_element_group(PybindBase):

17824 """

17825 This class was auto-generated by the PythonClass plugin for PYANG

17826 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/element-group. Each member element of

17827 the container is represented as a class variable - with a specific

17828 YANG type.

17829

17830 YANG Description: Describes the associated elements of a VNFD for a certain

17831 purpose during VNF lifecycle management.

17832 """

17833 __slots__ = ('_path_helper', '_extmethods', '__id','__description','__vdu','__virtual_link_desc',)

17834

17835 _yang_name = 'element-group'

17836 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

17837

17838 _pybind_generated_by = 'container'

17839

17840 def __init__(self, *args, **kwargs):

17841

17842 self._path_helper = False

17843

17844 self._extmethods = False

17845 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17846 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17847 self.__vdu = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="vdu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

17848 self.__virtual_link_desc = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="virtual-link-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

17849

17850 load = kwargs.pop("load", None)

17851 if args:

17852 if len(args) > 1:

17853 raise TypeError("cannot create a YANG container with >1 argument")

17854 all_attr = True

17855 for e in self._pyangbind_elements:

17856 if not hasattr(args[0], e):

17857 all_attr = False

17858 break

17859 if not all_attr:

17860 raise ValueError("Supplied object did not have the correct attributes")

17861 for e in self._pyangbind_elements:

17862 nobj = getattr(args[0], e)

17863 if nobj._changed() is False:

17864 continue

17865 setmethod = getattr(self, "_set_%s" % e)

17866 if load is None:

17867 setmethod(getattr(args[0], e))

17868 else:

17869 setmethod(getattr(args[0], e), load=load)

17870

17871 def _path(self):

17872 if hasattr(self, "_parent"):

17873 return self._parent._path()+[self._yang_name]

17874 else:

17875 return ['nsd', 'vnfd', 'element-group']

17876

17877 def _get_id(self):

17878 """

17879 Getter method for id, mapped from YANG variable /nsd/vnfd/element_group/id (string)

17880

17881 YANG Description: Unique identifier of this group in the VNFD.

17882 """

17883 return self.__id

17884

17885 def _set_id(self, v, load=False):

17886 """

17887 Setter method for id, mapped from YANG variable /nsd/vnfd/element_group/id (string)

17888 If this variable is read-only (config: false) in the

17889 source YANG file, then _set_id is considered as a private

17890 method. Backends looking to populate this variable should

17891 do so via calling thisObj._set_id() directly.

17892

17893 YANG Description: Unique identifier of this group in the VNFD.

17894 """

17895 parent = getattr(self, "_parent", None)

17896 if parent is not None and load is False:

17897 raise AttributeError("Cannot set keys directly when" +

17898 " within an instantiated list")

17899

17900 if hasattr(v, "_utype"):

17901 v = v._utype(v)

17902 try:

17903 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17904 except (TypeError, ValueError):

17905 raise ValueError({

17906 'error-string': """id must be of a type compatible with string""",

17907 'defined-type': "string",

17908 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

17909 })

17910

17911 self.__id = t

17912 if hasattr(self, '_set'):

17913 self._set()

17914

17915 def _unset_id(self):

17916 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17917

17918

17919 def _get_description(self):

17920 """

17921 Getter method for description, mapped from YANG variable /nsd/vnfd/element_group/description (string)

17922

17923 YANG Description: Human readable description of the group.

17924 """

17925 return self.__description

17926

17927 def _set_description(self, v, load=False):

17928 """

17929 Setter method for description, mapped from YANG variable /nsd/vnfd/element_group/description (string)

17930 If this variable is read-only (config: false) in the

17931 source YANG file, then _set_description is considered as a private

17932 method. Backends looking to populate this variable should

17933 do so via calling thisObj._set_description() directly.

17934

17935 YANG Description: Human readable description of the group.

17936 """

17937 if hasattr(v, "_utype"):

17938 v = v._utype(v)

17939 try:

17940 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17941 except (TypeError, ValueError):

17942 raise ValueError({

17943 'error-string': """description must be of a type compatible with string""",

17944 'defined-type': "string",

17945 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

17946 })

17947

17948 self.__description = t

17949 if hasattr(self, '_set'):

17950 self._set()

17951

17952 def _unset_description(self):

17953 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

17954

17955

17956 def _get_vdu(self):

17957 """

17958 Getter method for vdu, mapped from YANG variable /nsd/vnfd/element_group/vdu (leafref)

17959

17960 YANG Description: References to Vdus that are part of this group.

17961 """

17962 return self.__vdu

17963

17964 def _set_vdu(self, v, load=False):

17965 """

17966 Setter method for vdu, mapped from YANG variable /nsd/vnfd/element_group/vdu (leafref)

17967 If this variable is read-only (config: false) in the

17968 source YANG file, then _set_vdu is considered as a private

17969 method. Backends looking to populate this variable should

17970 do so via calling thisObj._set_vdu() directly.

17971

17972 YANG Description: References to Vdus that are part of this group.

17973 """

17974 if hasattr(v, "_utype"):

17975 v = v._utype(v)

17976 try:

17977 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="vdu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

17978 except (TypeError, ValueError):

17979 raise ValueError({

17980 'error-string': """vdu must be of a type compatible with leafref""",

17981 'defined-type': "leafref",

17982 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="vdu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

17983 })

17984

17985 self.__vdu = t

17986 if hasattr(self, '_set'):

17987 self._set()

17988

17989 def _unset_vdu(self):

17990 self.__vdu = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="vdu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

17991

17992

17993 def _get_virtual_link_desc(self):

17994 """

17995 Getter method for virtual_link_desc, mapped from YANG variable /nsd/vnfd/element_group/virtual_link_desc (leafref)

17996

17997 YANG Description: References to VnfVirtualLinkDesc that are part of this

17998 group.

17999 """

18000 return self.__virtual_link_desc

18001

18002 def _set_virtual_link_desc(self, v, load=False):

18003 """

18004 Setter method for virtual_link_desc, mapped from YANG variable /nsd/vnfd/element_group/virtual_link_desc (leafref)

18005 If this variable is read-only (config: false) in the

18006 source YANG file, then _set_virtual_link_desc is considered as a private

18007 method. Backends looking to populate this variable should

18008 do so via calling thisObj._set_virtual_link_desc() directly.

18009

18010 YANG Description: References to VnfVirtualLinkDesc that are part of this

18011 group.

18012 """

18013 if hasattr(v, "_utype"):

18014 v = v._utype(v)

18015 try:

18016 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="virtual-link-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

18017 except (TypeError, ValueError):

18018 raise ValueError({

18019 'error-string': """virtual_link_desc must be of a type compatible with leafref""",

18020 'defined-type': "leafref",

18021 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="virtual-link-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

18022 })

18023

18024 self.__virtual_link_desc = t

18025 if hasattr(self, '_set'):

18026 self._set()

18027

18028 def _unset_virtual_link_desc(self):

18029 self.__virtual_link_desc = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="virtual-link-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

18030

18031 id = __builtin__.property(_get_id, _set_id)

18032 description = __builtin__.property(_get_description, _set_description)

18033 vdu = __builtin__.property(_get_vdu, _set_vdu)

18034 virtual_link_desc = __builtin__.property(_get_virtual_link_desc, _set_virtual_link_desc)

18035

18036

18037 _pyangbind_elements = OrderedDict([('id', id), ('description', description), ('vdu', vdu), ('virtual_link_desc', virtual_link_desc), ])

18038

18039

18040 class yc_indicator_etsi_nfv_nsd__nsd_vnfd_indicator(PybindBase):

18041 """

18042 This class was auto-generated by the PythonClass plugin for PYANG

18043 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd/indicator. Each member element of

18044 the container is represented as a class variable - with a specific

18045 YANG type.

18046

18047 YANG Description: Declares the VNF indicators that are supported by this

18048 VNF.

18049 """

18050 __slots__ = ('_path_helper', '_extmethods', '__id','__name','__indicator_value','__source',)

18051

18052 _yang_name = 'indicator'

18053 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

18054

18055 _pybind_generated_by = 'container'

18056

18057 def __init__(self, *args, **kwargs):

18058

18059 self._path_helper = False

18060

18061 self._extmethods = False

18062 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18063 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18064 self.__indicator_value = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="indicator-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18065 self.__source = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'vnf': {}, 'em': {}, 'both': {}},), is_leaf=True, yang_name="source", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

18066

18067 load = kwargs.pop("load", None)

18068 if args:

18069 if len(args) > 1:

18070 raise TypeError("cannot create a YANG container with >1 argument")

18071 all_attr = True

18072 for e in self._pyangbind_elements:

18073 if not hasattr(args[0], e):

18074 all_attr = False

18075 break

18076 if not all_attr:

18077 raise ValueError("Supplied object did not have the correct attributes")

18078 for e in self._pyangbind_elements:

18079 nobj = getattr(args[0], e)

18080 if nobj._changed() is False:

18081 continue

18082 setmethod = getattr(self, "_set_%s" % e)

18083 if load is None:

18084 setmethod(getattr(args[0], e))

18085 else:

18086 setmethod(getattr(args[0], e), load=load)

18087

18088 def _path(self):

18089 if hasattr(self, "_parent"):

18090 return self._parent._path()+[self._yang_name]

18091 else:

18092 return ['nsd', 'vnfd', 'indicator']

18093

18094 def _get_id(self):

18095 """

18096 Getter method for id, mapped from YANG variable /nsd/vnfd/indicator/id (string)

18097

18098 YANG Description: Unique identifier

18099 """

18100 return self.__id

18101

18102 def _set_id(self, v, load=False):

18103 """

18104 Setter method for id, mapped from YANG variable /nsd/vnfd/indicator/id (string)

18105 If this variable is read-only (config: false) in the

18106 source YANG file, then _set_id is considered as a private

18107 method. Backends looking to populate this variable should

18108 do so via calling thisObj._set_id() directly.

18109

18110 YANG Description: Unique identifier

18111 """

18112 parent = getattr(self, "_parent", None)

18113 if parent is not None and load is False:

18114 raise AttributeError("Cannot set keys directly when" +

18115 " within an instantiated list")

18116

18117 if hasattr(v, "_utype"):

18118 v = v._utype(v)

18119 try:

18120 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18121 except (TypeError, ValueError):

18122 raise ValueError({

18123 'error-string': """id must be of a type compatible with string""",

18124 'defined-type': "string",

18125 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

18126 })

18127

18128 self.__id = t

18129 if hasattr(self, '_set'):

18130 self._set()

18131

18132 def _unset_id(self):

18133 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18134

18135

18136 def _get_name(self):

18137 """

18138 Getter method for name, mapped from YANG variable /nsd/vnfd/indicator/name (string)

18139

18140 YANG Description: The human readable name of the VnfIndicator.

18141 """

18142 return self.__name

18143

18144 def _set_name(self, v, load=False):

18145 """

18146 Setter method for name, mapped from YANG variable /nsd/vnfd/indicator/name (string)

18147 If this variable is read-only (config: false) in the

18148 source YANG file, then _set_name is considered as a private

18149 method. Backends looking to populate this variable should

18150 do so via calling thisObj._set_name() directly.

18151

18152 YANG Description: The human readable name of the VnfIndicator.

18153 """

18154 if hasattr(v, "_utype"):

18155 v = v._utype(v)

18156 try:

18157 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18158 except (TypeError, ValueError):

18159 raise ValueError({

18160 'error-string': """name must be of a type compatible with string""",

18161 'defined-type': "string",

18162 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

18163 })

18164

18165 self.__name = t

18166 if hasattr(self, '_set'):

18167 self._set()

18168

18169 def _unset_name(self):

18170 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18171

18172

18173 def _get_indicator_value(self):

18174 """

18175 Getter method for indicator_value, mapped from YANG variable /nsd/vnfd/indicator/indicator_value (string)

18176

18177 YANG Description: Defines the allowed values or value ranges of this

18178 indicator.

18179 """

18180 return self.__indicator_value

18181

18182 def _set_indicator_value(self, v, load=False):

18183 """

18184 Setter method for indicator_value, mapped from YANG variable /nsd/vnfd/indicator/indicator_value (string)

18185 If this variable is read-only (config: false) in the

18186 source YANG file, then _set_indicator_value is considered as a private

18187 method. Backends looking to populate this variable should

18188 do so via calling thisObj._set_indicator_value() directly.

18189

18190 YANG Description: Defines the allowed values or value ranges of this

18191 indicator.

18192 """

18193 if hasattr(v, "_utype"):

18194 v = v._utype(v)

18195 try:

18196 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="indicator-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18197 except (TypeError, ValueError):

18198 raise ValueError({

18199 'error-string': """indicator_value must be of a type compatible with string""",

18200 'defined-type': "string",

18201 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="indicator-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

18202 })

18203

18204 self.__indicator_value = t

18205 if hasattr(self, '_set'):

18206 self._set()

18207

18208 def _unset_indicator_value(self):

18209 self.__indicator_value = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="indicator-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18210

18211

18212 def _get_source(self):

18213 """

18214 Getter method for source, mapped from YANG variable /nsd/vnfd/indicator/source (enumeration)

18215

18216 YANG Description: Describe the source of the indicator. The possible values

18217 are:

18218• VNF.

18219• EM.

18220• Both.

18221 This tells the consumer where to send the subscription

18222 request.

18223 """

18224 return self.__source

18225

18226 def _set_source(self, v, load=False):

18227 """

18228 Setter method for source, mapped from YANG variable /nsd/vnfd/indicator/source (enumeration)

18229 If this variable is read-only (config: false) in the

18230 source YANG file, then _set_source is considered as a private

18231 method. Backends looking to populate this variable should

18232 do so via calling thisObj._set_source() directly.

18233

18234 YANG Description: Describe the source of the indicator. The possible values

18235 are:

18236• VNF.

18237• EM.

18238• Both.

18239 This tells the consumer where to send the subscription

18240 request.

18241 """

18242 if hasattr(v, "_utype"):

18243 v = v._utype(v)

18244 try:

18245 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'vnf': {}, 'em': {}, 'both': {}},), is_leaf=True, yang_name="source", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

18246 except (TypeError, ValueError):

18247 raise ValueError({

18248 'error-string': """source must be of a type compatible with enumeration""",

18249 'defined-type': "etsi-nfv-nsd:enumeration",

18250 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'vnf': {}, 'em': {}, 'both': {}},), is_leaf=True, yang_name="source", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)""",

18251 })

18252

18253 self.__source = t

18254 if hasattr(self, '_set'):

18255 self._set()

18256

18257 def _unset_source(self):

18258 self.__source = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'vnf': {}, 'em': {}, 'both': {}},), is_leaf=True, yang_name="source", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

18259

18260 id = __builtin__.property(_get_id, _set_id)

18261 name = __builtin__.property(_get_name, _set_name)

18262 indicator_value = __builtin__.property(_get_indicator_value, _set_indicator_value)

18263 source = __builtin__.property(_get_source, _set_source)

18264

18265

18266 _pyangbind_elements = OrderedDict([('id', id), ('name', name), ('indicator_value', indicator_value), ('source', source), ])

18267

18268

18269 class yc_vnfd_etsi_nfv_nsd__nsd_vnfd(PybindBase):

18270 """

18271 This class was auto-generated by the PythonClass plugin for PYANG

18272 from YANG module etsi-nfv-nsd - based on the path /nsd/vnfd. Each member element of

18273 the container is represented as a class variable - with a specific

18274 YANG type.

18275

18276 YANG Description: A VNF Descriptor (VNFD) is a deployment template which

18277 describes a VNF in terms of deployment and operational

18278 behaviour requirements. It also contains connectivity,

18279 interface and virtualised resource requirements

18280 """

18281 __slots__ = ('_path_helper', '_extmethods', '__id','__provider','__product_name','__software_version','__version','__product_info_name','__product_info_description','__vnfm_info','__localization_language','__default_localization_language','__vdu','__virtual_compute_desc','__virtual_storage_desc','__sw_image_desc','__int_virtual_link_desc','__security_group_rule','__ext_cpd','__df','__configurable_properties','__modifiable_attributes','__lifecycle_management_script','__element_group','__indicator','__auto_scale',)

18282

18283 _yang_name = 'vnfd'

18284 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

18285

18286 _pybind_generated_by = 'container'

18287

18288 def __init__(self, *args, **kwargs):

18289

18290 self._path_helper = False

18291

18292 self._extmethods = False

18293 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18294 self.__provider = YANGDynClass(base=str, is_leaf=True, yang_name="provider", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18295 self.__product_name = YANGDynClass(base=str, is_leaf=True, yang_name="product-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18296 self.__software_version = YANGDynClass(base=str, is_leaf=True, yang_name="software-version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18297 self.__version = YANGDynClass(base=str, is_leaf=True, yang_name="version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18298 self.__product_info_name = YANGDynClass(base=str, is_leaf=True, yang_name="product-info-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18299 self.__product_info_description = YANGDynClass(base=str, is_leaf=True, yang_name="product-info-description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18300 self.__vnfm_info = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="vnfm-info", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18301 self.__localization_language = YANGDynClass(base=str, is_leaf=True, yang_name="localization-language", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18302 self.__default_localization_language = YANGDynClass(base=str, is_leaf=True, yang_name="default-localization-language", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18303 self.__vdu = YANGDynClass(base=YANGListType("id",yc_vdu_etsi_nfv_nsd__nsd_vnfd_vdu, yang_name="vdu", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="vdu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

18304 self.__virtual_compute_desc = YANGDynClass(base=YANGListType("id",yc_virtual_compute_desc_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc, yang_name="virtual-compute-desc", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="virtual-compute-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

18305 self.__virtual_storage_desc = YANGDynClass(base=YANGListType("id",yc_virtual_storage_desc_etsi_nfv_nsd__nsd_vnfd_virtual_storage_desc, yang_name="virtual-storage-desc", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="virtual-storage-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

18306 self.__sw_image_desc = YANGDynClass(base=YANGListType("id",yc_sw_image_desc_etsi_nfv_nsd__nsd_vnfd_sw_image_desc, yang_name="sw-image-desc", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="sw-image-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

18307 self.__int_virtual_link_desc = YANGDynClass(base=YANGListType("id",yc_int_virtual_link_desc_etsi_nfv_nsd__nsd_vnfd_int_virtual_link_desc, yang_name="int-virtual-link-desc", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="int-virtual-link-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

18308 self.__security_group_rule = YANGDynClass(base=YANGListType("id",yc_security_group_rule_etsi_nfv_nsd__nsd_vnfd_security_group_rule, yang_name="security-group-rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="security-group-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

18309 self.__ext_cpd = YANGDynClass(base=YANGListType("id",yc_ext_cpd_etsi_nfv_nsd__nsd_vnfd_ext_cpd, yang_name="ext-cpd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="ext-cpd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

18310 self.__df = YANGDynClass(base=YANGListType("id",yc_df_etsi_nfv_nsd__nsd_vnfd_df, yang_name="df", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="df", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

18311 self.__configurable_properties = YANGDynClass(base=yc_configurable_properties_etsi_nfv_nsd__nsd_vnfd_configurable_properties, is_container='container', yang_name="configurable-properties", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

18312 self.__modifiable_attributes = YANGDynClass(base=yc_modifiable_attributes_etsi_nfv_nsd__nsd_vnfd_modifiable_attributes, is_container='container', yang_name="modifiable-attributes", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

18313 self.__lifecycle_management_script = YANGDynClass(base=YANGListType("id",yc_lifecycle_management_script_etsi_nfv_nsd__nsd_vnfd_lifecycle_management_script, yang_name="lifecycle-management-script", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="lifecycle-management-script", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

18314 self.__element_group = YANGDynClass(base=YANGListType("id",yc_element_group_etsi_nfv_nsd__nsd_vnfd_element_group, yang_name="element-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="element-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

18315 self.__indicator = YANGDynClass(base=YANGListType("id",yc_indicator_etsi_nfv_nsd__nsd_vnfd_indicator, yang_name="indicator", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="indicator", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

18316 self.__auto_scale = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="auto-scale", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18317

18318 load = kwargs.pop("load", None)

18319 if args:

18320 if len(args) > 1:

18321 raise TypeError("cannot create a YANG container with >1 argument")

18322 all_attr = True

18323 for e in self._pyangbind_elements:

18324 if not hasattr(args[0], e):

18325 all_attr = False

18326 break

18327 if not all_attr:

18328 raise ValueError("Supplied object did not have the correct attributes")

18329 for e in self._pyangbind_elements:

18330 nobj = getattr(args[0], e)

18331 if nobj._changed() is False:

18332 continue

18333 setmethod = getattr(self, "_set_%s" % e)

18334 if load is None:

18335 setmethod(getattr(args[0], e))

18336 else:

18337 setmethod(getattr(args[0], e), load=load)

18338

18339 def _path(self):

18340 if hasattr(self, "_parent"):

18341 return self._parent._path()+[self._yang_name]

18342 else:

18343 return ['nsd', 'vnfd']

18344

18345 def _get_id(self):

18346 """

18347 Getter method for id, mapped from YANG variable /nsd/vnfd/id (string)

18348

18349 YANG Description: Identifier of this VNFD information element. This attribute

18350 shall be globally unique. The format will be defined in the

18351 data model specification phase.

18352 """

18353 return self.__id

18354

18355 def _set_id(self, v, load=False):

18356 """

18357 Setter method for id, mapped from YANG variable /nsd/vnfd/id (string)

18358 If this variable is read-only (config: false) in the

18359 source YANG file, then _set_id is considered as a private

18360 method. Backends looking to populate this variable should

18361 do so via calling thisObj._set_id() directly.

18362

18363 YANG Description: Identifier of this VNFD information element. This attribute

18364 shall be globally unique. The format will be defined in the

18365 data model specification phase.

18366 """

18367 parent = getattr(self, "_parent", None)

18368 if parent is not None and load is False:

18369 raise AttributeError("Cannot set keys directly when" +

18370 " within an instantiated list")

18371

18372 if hasattr(v, "_utype"):

18373 v = v._utype(v)

18374 try:

18375 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18376 except (TypeError, ValueError):

18377 raise ValueError({

18378 'error-string': """id must be of a type compatible with string""",

18379 'defined-type': "string",

18380 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

18381 })

18382

18383 self.__id = t

18384 if hasattr(self, '_set'):

18385 self._set()

18386

18387 def _unset_id(self):

18388 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18389

18390

18391 def _get_provider(self):

18392 """

18393 Getter method for provider, mapped from YANG variable /nsd/vnfd/provider (string)

18394

18395 YANG Description: Provider of the VNF and of the VNFD

18396 """

18397 return self.__provider

18398

18399 def _set_provider(self, v, load=False):

18400 """

18401 Setter method for provider, mapped from YANG variable /nsd/vnfd/provider (string)

18402 If this variable is read-only (config: false) in the

18403 source YANG file, then _set_provider is considered as a private

18404 method. Backends looking to populate this variable should

18405 do so via calling thisObj._set_provider() directly.

18406

18407 YANG Description: Provider of the VNF and of the VNFD

18408 """

18409 if hasattr(v, "_utype"):

18410 v = v._utype(v)

18411 try:

18412 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="provider", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18413 except (TypeError, ValueError):

18414 raise ValueError({

18415 'error-string': """provider must be of a type compatible with string""",

18416 'defined-type': "string",

18417 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="provider", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

18418 })

18419

18420 self.__provider = t

18421 if hasattr(self, '_set'):

18422 self._set()

18423

18424 def _unset_provider(self):

18425 self.__provider = YANGDynClass(base=str, is_leaf=True, yang_name="provider", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18426

18427

18428 def _get_product_name(self):

18429 """

18430 Getter method for product_name, mapped from YANG variable /nsd/vnfd/product_name (string)

18431

18432 YANG Description: Name to identify the VNF Product. Invariant for the VNF

18433 Product lifetime.

18434 """

18435 return self.__product_name

18436

18437 def _set_product_name(self, v, load=False):

18438 """

18439 Setter method for product_name, mapped from YANG variable /nsd/vnfd/product_name (string)

18440 If this variable is read-only (config: false) in the

18441 source YANG file, then _set_product_name is considered as a private

18442 method. Backends looking to populate this variable should

18443 do so via calling thisObj._set_product_name() directly.

18444

18445 YANG Description: Name to identify the VNF Product. Invariant for the VNF

18446 Product lifetime.

18447 """

18448 if hasattr(v, "_utype"):

18449 v = v._utype(v)

18450 try:

18451 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="product-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18452 except (TypeError, ValueError):

18453 raise ValueError({

18454 'error-string': """product_name must be of a type compatible with string""",

18455 'defined-type': "string",

18456 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="product-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

18457 })

18458

18459 self.__product_name = t

18460 if hasattr(self, '_set'):

18461 self._set()

18462

18463 def _unset_product_name(self):

18464 self.__product_name = YANGDynClass(base=str, is_leaf=True, yang_name="product-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18465

18466

18467 def _get_software_version(self):

18468 """

18469 Getter method for software_version, mapped from YANG variable /nsd/vnfd/software_version (string)

18470

18471 YANG Description: Software version of the VNF. This is changed when there is

18472 any change to the software that is included in the VNF

18473 Package

18474 """

18475 return self.__software_version

18476

18477 def _set_software_version(self, v, load=False):

18478 """

18479 Setter method for software_version, mapped from YANG variable /nsd/vnfd/software_version (string)

18480 If this variable is read-only (config: false) in the

18481 source YANG file, then _set_software_version is considered as a private

18482 method. Backends looking to populate this variable should

18483 do so via calling thisObj._set_software_version() directly.

18484

18485 YANG Description: Software version of the VNF. This is changed when there is

18486 any change to the software that is included in the VNF

18487 Package

18488 """

18489 if hasattr(v, "_utype"):

18490 v = v._utype(v)

18491 try:

18492 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="software-version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18493 except (TypeError, ValueError):

18494 raise ValueError({

18495 'error-string': """software_version must be of a type compatible with string""",

18496 'defined-type': "string",

18497 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="software-version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

18498 })

18499

18500 self.__software_version = t

18501 if hasattr(self, '_set'):

18502 self._set()

18503

18504 def _unset_software_version(self):

18505 self.__software_version = YANGDynClass(base=str, is_leaf=True, yang_name="software-version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18506

18507

18508 def _get_version(self):

18509 """

18510 Getter method for version, mapped from YANG variable /nsd/vnfd/version (string)

18511

18512 YANG Description: Identifies the version of the VNFD

18513 """

18514 return self.__version

18515

18516 def _set_version(self, v, load=False):

18517 """

18518 Setter method for version, mapped from YANG variable /nsd/vnfd/version (string)

18519 If this variable is read-only (config: false) in the

18520 source YANG file, then _set_version is considered as a private

18521 method. Backends looking to populate this variable should

18522 do so via calling thisObj._set_version() directly.

18523

18524 YANG Description: Identifies the version of the VNFD

18525 """

18526 if hasattr(v, "_utype"):

18527 v = v._utype(v)

18528 try:

18529 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18530 except (TypeError, ValueError):

18531 raise ValueError({

18532 'error-string': """version must be of a type compatible with string""",

18533 'defined-type': "string",

18534 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

18535 })

18536

18537 self.__version = t

18538 if hasattr(self, '_set'):

18539 self._set()

18540

18541 def _unset_version(self):

18542 self.__version = YANGDynClass(base=str, is_leaf=True, yang_name="version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18543

18544

18545 def _get_product_info_name(self):

18546 """

18547 Getter method for product_info_name, mapped from YANG variable /nsd/vnfd/product_info_name (string)

18548

18549 YANG Description: Human readable name of the VNFD. Can change

18550 during the VNF Product lifetime.

18551 """

18552 return self.__product_info_name

18553

18554 def _set_product_info_name(self, v, load=False):

18555 """

18556 Setter method for product_info_name, mapped from YANG variable /nsd/vnfd/product_info_name (string)

18557 If this variable is read-only (config: false) in the

18558 source YANG file, then _set_product_info_name is considered as a private

18559 method. Backends looking to populate this variable should

18560 do so via calling thisObj._set_product_info_name() directly.

18561

18562 YANG Description: Human readable name of the VNFD. Can change

18563 during the VNF Product lifetime.

18564 """

18565 if hasattr(v, "_utype"):

18566 v = v._utype(v)

18567 try:

18568 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="product-info-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18569 except (TypeError, ValueError):

18570 raise ValueError({

18571 'error-string': """product_info_name must be of a type compatible with string""",

18572 'defined-type': "string",

18573 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="product-info-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

18574 })

18575

18576 self.__product_info_name = t

18577 if hasattr(self, '_set'):

18578 self._set()

18579

18580 def _unset_product_info_name(self):

18581 self.__product_info_name = YANGDynClass(base=str, is_leaf=True, yang_name="product-info-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18582

18583

18584 def _get_product_info_description(self):

18585 """

18586 Getter method for product_info_description, mapped from YANG variable /nsd/vnfd/product_info_description (string)

18587

18588 YANG Description: Human readable description of the VNFD. Can change during

18589 the VNF Product lifetime.

18590 """

18591 return self.__product_info_description

18592

18593 def _set_product_info_description(self, v, load=False):

18594 """

18595 Setter method for product_info_description, mapped from YANG variable /nsd/vnfd/product_info_description (string)

18596 If this variable is read-only (config: false) in the

18597 source YANG file, then _set_product_info_description is considered as a private

18598 method. Backends looking to populate this variable should

18599 do so via calling thisObj._set_product_info_description() directly.

18600

18601 YANG Description: Human readable description of the VNFD. Can change during

18602 the VNF Product lifetime.

18603 """

18604 if hasattr(v, "_utype"):

18605 v = v._utype(v)

18606 try:

18607 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="product-info-description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18608 except (TypeError, ValueError):

18609 raise ValueError({

18610 'error-string': """product_info_description must be of a type compatible with string""",

18611 'defined-type': "string",

18612 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="product-info-description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

18613 })

18614

18615 self.__product_info_description = t

18616 if hasattr(self, '_set'):

18617 self._set()

18618

18619 def _unset_product_info_description(self):

18620 self.__product_info_description = YANGDynClass(base=str, is_leaf=True, yang_name="product-info-description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18621

18622

18623 def _get_vnfm_info(self):

18624 """

18625 Getter method for vnfm_info, mapped from YANG variable /nsd/vnfd/vnfm_info (string)

18626

18627 YANG Description: Identifies VNFM(s) compatible with the VNF described in

18628 this version of the VNFD.

18629 """

18630 return self.__vnfm_info

18631

18632 def _set_vnfm_info(self, v, load=False):

18633 """

18634 Setter method for vnfm_info, mapped from YANG variable /nsd/vnfd/vnfm_info (string)

18635 If this variable is read-only (config: false) in the

18636 source YANG file, then _set_vnfm_info is considered as a private

18637 method. Backends looking to populate this variable should

18638 do so via calling thisObj._set_vnfm_info() directly.

18639

18640 YANG Description: Identifies VNFM(s) compatible with the VNF described in

18641 this version of the VNFD.

18642 """

18643 if hasattr(v, "_utype"):

18644 v = v._utype(v)

18645 try:

18646 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="vnfm-info", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18647 except (TypeError, ValueError):

18648 raise ValueError({

18649 'error-string': """vnfm_info must be of a type compatible with string""",

18650 'defined-type': "string",

18651 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="vnfm-info", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

18652 })

18653

18654 self.__vnfm_info = t

18655 if hasattr(self, '_set'):

18656 self._set()

18657

18658 def _unset_vnfm_info(self):

18659 self.__vnfm_info = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="vnfm-info", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18660

18661

18662 def _get_localization_language(self):

18663 """

18664 Getter method for localization_language, mapped from YANG variable /nsd/vnfd/localization_language (string)

18665

18666 YANG Description: Information about the language of the VNF.

18667 """

18668 return self.__localization_language

18669

18670 def _set_localization_language(self, v, load=False):

18671 """

18672 Setter method for localization_language, mapped from YANG variable /nsd/vnfd/localization_language (string)

18673 If this variable is read-only (config: false) in the

18674 source YANG file, then _set_localization_language is considered as a private

18675 method. Backends looking to populate this variable should

18676 do so via calling thisObj._set_localization_language() directly.

18677

18678 YANG Description: Information about the language of the VNF.

18679 """

18680 if hasattr(v, "_utype"):

18681 v = v._utype(v)

18682 try:

18683 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="localization-language", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18684 except (TypeError, ValueError):

18685 raise ValueError({

18686 'error-string': """localization_language must be of a type compatible with string""",

18687 'defined-type': "string",

18688 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="localization-language", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

18689 })

18690

18691 self.__localization_language = t

18692 if hasattr(self, '_set'):

18693 self._set()

18694

18695 def _unset_localization_language(self):

18696 self.__localization_language = YANGDynClass(base=str, is_leaf=True, yang_name="localization-language", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18697

18698

18699 def _get_default_localization_language(self):

18700 """

18701 Getter method for default_localization_language, mapped from YANG variable /nsd/vnfd/default_localization_language (string)

18702

18703 YANG Description: Default localization language that is instantiated if no

18704 information about selected localization language is

18705 available. Shall be present if 'localization-language'

18706 is present and shall be absent otherwise.

18707 """

18708 return self.__default_localization_language

18709

18710 def _set_default_localization_language(self, v, load=False):

18711 """

18712 Setter method for default_localization_language, mapped from YANG variable /nsd/vnfd/default_localization_language (string)

18713 If this variable is read-only (config: false) in the

18714 source YANG file, then _set_default_localization_language is considered as a private

18715 method. Backends looking to populate this variable should

18716 do so via calling thisObj._set_default_localization_language() directly.

18717

18718 YANG Description: Default localization language that is instantiated if no

18719 information about selected localization language is

18720 available. Shall be present if 'localization-language'

18721 is present and shall be absent otherwise.

18722 """

18723 if hasattr(v, "_utype"):

18724 v = v._utype(v)

18725 try:

18726 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="default-localization-language", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18727 except (TypeError, ValueError):

18728 raise ValueError({

18729 'error-string': """default_localization_language must be of a type compatible with string""",

18730 'defined-type': "string",

18731 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="default-localization-language", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

18732 })

18733

18734 self.__default_localization_language = t

18735 if hasattr(self, '_set'):

18736 self._set()

18737

18738 def _unset_default_localization_language(self):

18739 self.__default_localization_language = YANGDynClass(base=str, is_leaf=True, yang_name="default-localization-language", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

18740

18741

18742 def _get_vdu(self):

18743 """

18744 Getter method for vdu, mapped from YANG variable /nsd/vnfd/vdu (list)

18745

18746 YANG Description: The Virtualisation Deployment Unit (VDU) is a construct supporting

18747 the description of the deployment and operational behaviour of a

18748 VNF component, or the entire VNF if it was not componentized in

18749 components.

18750 """

18751 return self.__vdu

18752

18753 def _set_vdu(self, v, load=False):

18754 """

18755 Setter method for vdu, mapped from YANG variable /nsd/vnfd/vdu (list)

18756 If this variable is read-only (config: false) in the

18757 source YANG file, then _set_vdu is considered as a private

18758 method. Backends looking to populate this variable should

18759 do so via calling thisObj._set_vdu() directly.

18760

18761 YANG Description: The Virtualisation Deployment Unit (VDU) is a construct supporting

18762 the description of the deployment and operational behaviour of a

18763 VNF component, or the entire VNF if it was not componentized in

18764 components.

18765 """

18766 if hasattr(v, "_utype"):

18767 v = v._utype(v)

18768 try:

18769 t = YANGDynClass(v,base=YANGListType("id",yc_vdu_etsi_nfv_nsd__nsd_vnfd_vdu, yang_name="vdu", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="vdu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

18770 except (TypeError, ValueError):

18771 raise ValueError({

18772 'error-string': """vdu must be of a type compatible with list""",

18773 'defined-type': "list",

18774 'generated-type': """YANGDynClass(base=YANGListType("id",yc_vdu_etsi_nfv_nsd__nsd_vnfd_vdu, yang_name="vdu", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="vdu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

18775 })

18776

18777 self.__vdu = t

18778 if hasattr(self, '_set'):

18779 self._set()

18780

18781 def _unset_vdu(self):

18782 self.__vdu = YANGDynClass(base=YANGListType("id",yc_vdu_etsi_nfv_nsd__nsd_vnfd_vdu, yang_name="vdu", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="vdu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

18783

18784

18785 def _get_virtual_compute_desc(self):

18786 """

18787 Getter method for virtual_compute_desc, mapped from YANG variable /nsd/vnfd/virtual_compute_desc (list)

18788

18789 YANG Description: Defines descriptors of virtual compute resources to be

18790 used by the VNF.

18791 """

18792 return self.__virtual_compute_desc

18793

18794 def _set_virtual_compute_desc(self, v, load=False):

18795 """

18796 Setter method for virtual_compute_desc, mapped from YANG variable /nsd/vnfd/virtual_compute_desc (list)

18797 If this variable is read-only (config: false) in the

18798 source YANG file, then _set_virtual_compute_desc is considered as a private

18799 method. Backends looking to populate this variable should

18800 do so via calling thisObj._set_virtual_compute_desc() directly.

18801

18802 YANG Description: Defines descriptors of virtual compute resources to be

18803 used by the VNF.

18804 """

18805 if hasattr(v, "_utype"):

18806 v = v._utype(v)

18807 try:

18808 t = YANGDynClass(v,base=YANGListType("id",yc_virtual_compute_desc_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc, yang_name="virtual-compute-desc", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="virtual-compute-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

18809 except (TypeError, ValueError):

18810 raise ValueError({

18811 'error-string': """virtual_compute_desc must be of a type compatible with list""",

18812 'defined-type': "list",

18813 'generated-type': """YANGDynClass(base=YANGListType("id",yc_virtual_compute_desc_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc, yang_name="virtual-compute-desc", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="virtual-compute-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

18814 })

18815

18816 self.__virtual_compute_desc = t

18817 if hasattr(self, '_set'):

18818 self._set()

18819

18820 def _unset_virtual_compute_desc(self):

18821 self.__virtual_compute_desc = YANGDynClass(base=YANGListType("id",yc_virtual_compute_desc_etsi_nfv_nsd__nsd_vnfd_virtual_compute_desc, yang_name="virtual-compute-desc", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="virtual-compute-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

18822

18823

18824 def _get_virtual_storage_desc(self):

18825 """

18826 Getter method for virtual_storage_desc, mapped from YANG variable /nsd/vnfd/virtual_storage_desc (list)

18827

18828 YANG Description: Storage requirements for a Virtual Storage instance

18829 attached to the VNFC created from this VDU

18830 """

18831 return self.__virtual_storage_desc

18832

18833 def _set_virtual_storage_desc(self, v, load=False):

18834 """

18835 Setter method for virtual_storage_desc, mapped from YANG variable /nsd/vnfd/virtual_storage_desc (list)

18836 If this variable is read-only (config: false) in the

18837 source YANG file, then _set_virtual_storage_desc is considered as a private

18838 method. Backends looking to populate this variable should

18839 do so via calling thisObj._set_virtual_storage_desc() directly.

18840

18841 YANG Description: Storage requirements for a Virtual Storage instance

18842 attached to the VNFC created from this VDU

18843 """

18844 if hasattr(v, "_utype"):

18845 v = v._utype(v)

18846 try:

18847 t = YANGDynClass(v,base=YANGListType("id",yc_virtual_storage_desc_etsi_nfv_nsd__nsd_vnfd_virtual_storage_desc, yang_name="virtual-storage-desc", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="virtual-storage-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

18848 except (TypeError, ValueError):

18849 raise ValueError({

18850 'error-string': """virtual_storage_desc must be of a type compatible with list""",

18851 'defined-type': "list",

18852 'generated-type': """YANGDynClass(base=YANGListType("id",yc_virtual_storage_desc_etsi_nfv_nsd__nsd_vnfd_virtual_storage_desc, yang_name="virtual-storage-desc", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="virtual-storage-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

18853 })

18854

18855 self.__virtual_storage_desc = t

18856 if hasattr(self, '_set'):

18857 self._set()

18858

18859 def _unset_virtual_storage_desc(self):

18860 self.__virtual_storage_desc = YANGDynClass(base=YANGListType("id",yc_virtual_storage_desc_etsi_nfv_nsd__nsd_vnfd_virtual_storage_desc, yang_name="virtual-storage-desc", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="virtual-storage-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

18861

18862

18863 def _get_sw_image_desc(self):

18864 """

18865 Getter method for sw_image_desc, mapped from YANG variable /nsd/vnfd/sw_image_desc (list)

18866

18867 YANG Description: Defines descriptors of software images to be used by the

18868 VNF.

18869 """

18870 return self.__sw_image_desc

18871

18872 def _set_sw_image_desc(self, v, load=False):

18873 """

18874 Setter method for sw_image_desc, mapped from YANG variable /nsd/vnfd/sw_image_desc (list)

18875 If this variable is read-only (config: false) in the

18876 source YANG file, then _set_sw_image_desc is considered as a private

18877 method. Backends looking to populate this variable should

18878 do so via calling thisObj._set_sw_image_desc() directly.

18879

18880 YANG Description: Defines descriptors of software images to be used by the

18881 VNF.

18882 """

18883 if hasattr(v, "_utype"):

18884 v = v._utype(v)

18885 try:

18886 t = YANGDynClass(v,base=YANGListType("id",yc_sw_image_desc_etsi_nfv_nsd__nsd_vnfd_sw_image_desc, yang_name="sw-image-desc", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="sw-image-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

18887 except (TypeError, ValueError):

18888 raise ValueError({

18889 'error-string': """sw_image_desc must be of a type compatible with list""",

18890 'defined-type': "list",

18891 'generated-type': """YANGDynClass(base=YANGListType("id",yc_sw_image_desc_etsi_nfv_nsd__nsd_vnfd_sw_image_desc, yang_name="sw-image-desc", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="sw-image-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

18892 })

18893

18894 self.__sw_image_desc = t

18895 if hasattr(self, '_set'):

18896 self._set()

18897

18898 def _unset_sw_image_desc(self):

18899 self.__sw_image_desc = YANGDynClass(base=YANGListType("id",yc_sw_image_desc_etsi_nfv_nsd__nsd_vnfd_sw_image_desc, yang_name="sw-image-desc", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="sw-image-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

18900

18901

18902 def _get_int_virtual_link_desc(self):

18903 """

18904 Getter method for int_virtual_link_desc, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc (list)

18905

18906 YANG Description: Represents the type of network connectivity mandated by the

18907 VNF provider between two or more CPs which includes at

18908 least one internal CP.

18909 """

18910 return self.__int_virtual_link_desc

18911

18912 def _set_int_virtual_link_desc(self, v, load=False):

18913 """

18914 Setter method for int_virtual_link_desc, mapped from YANG variable /nsd/vnfd/int_virtual_link_desc (list)

18915 If this variable is read-only (config: false) in the

18916 source YANG file, then _set_int_virtual_link_desc is considered as a private

18917 method. Backends looking to populate this variable should

18918 do so via calling thisObj._set_int_virtual_link_desc() directly.

18919

18920 YANG Description: Represents the type of network connectivity mandated by the

18921 VNF provider between two or more CPs which includes at

18922 least one internal CP.

18923 """

18924 if hasattr(v, "_utype"):

18925 v = v._utype(v)

18926 try:

18927 t = YANGDynClass(v,base=YANGListType("id",yc_int_virtual_link_desc_etsi_nfv_nsd__nsd_vnfd_int_virtual_link_desc, yang_name="int-virtual-link-desc", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="int-virtual-link-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

18928 except (TypeError, ValueError):

18929 raise ValueError({

18930 'error-string': """int_virtual_link_desc must be of a type compatible with list""",

18931 'defined-type': "list",

18932 'generated-type': """YANGDynClass(base=YANGListType("id",yc_int_virtual_link_desc_etsi_nfv_nsd__nsd_vnfd_int_virtual_link_desc, yang_name="int-virtual-link-desc", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="int-virtual-link-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

18933 })

18934

18935 self.__int_virtual_link_desc = t

18936 if hasattr(self, '_set'):

18937 self._set()

18938

18939 def _unset_int_virtual_link_desc(self):

18940 self.__int_virtual_link_desc = YANGDynClass(base=YANGListType("id",yc_int_virtual_link_desc_etsi_nfv_nsd__nsd_vnfd_int_virtual_link_desc, yang_name="int-virtual-link-desc", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="int-virtual-link-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

18941

18942

18943 def _get_security_group_rule(self):

18944 """

18945 Getter method for security_group_rule, mapped from YANG variable /nsd/vnfd/security_group_rule (list)

18946

18947 YANG Description: Defines security group rules to be used by the VNF.

18948 """

18949 return self.__security_group_rule

18950

18951 def _set_security_group_rule(self, v, load=False):

18952 """

18953 Setter method for security_group_rule, mapped from YANG variable /nsd/vnfd/security_group_rule (list)

18954 If this variable is read-only (config: false) in the

18955 source YANG file, then _set_security_group_rule is considered as a private

18956 method. Backends looking to populate this variable should

18957 do so via calling thisObj._set_security_group_rule() directly.

18958

18959 YANG Description: Defines security group rules to be used by the VNF.

18960 """

18961 if hasattr(v, "_utype"):

18962 v = v._utype(v)

18963 try:

18964 t = YANGDynClass(v,base=YANGListType("id",yc_security_group_rule_etsi_nfv_nsd__nsd_vnfd_security_group_rule, yang_name="security-group-rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="security-group-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

18965 except (TypeError, ValueError):

18966 raise ValueError({

18967 'error-string': """security_group_rule must be of a type compatible with list""",

18968 'defined-type': "list",

18969 'generated-type': """YANGDynClass(base=YANGListType("id",yc_security_group_rule_etsi_nfv_nsd__nsd_vnfd_security_group_rule, yang_name="security-group-rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="security-group-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

18970 })

18971

18972 self.__security_group_rule = t

18973 if hasattr(self, '_set'):

18974 self._set()

18975

18976 def _unset_security_group_rule(self):

18977 self.__security_group_rule = YANGDynClass(base=YANGListType("id",yc_security_group_rule_etsi_nfv_nsd__nsd_vnfd_security_group_rule, yang_name="security-group-rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="security-group-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

18978

18979

18980 def _get_ext_cpd(self):

18981 """

18982 Getter method for ext_cpd, mapped from YANG variable /nsd/vnfd/ext_cpd (list)

18983

18984 YANG Description: Describes an external interface exposed by this VNF enabling

18985 connection with a Virual Link

18986 """

18987 return self.__ext_cpd

18988

18989 def _set_ext_cpd(self, v, load=False):

18990 """

18991 Setter method for ext_cpd, mapped from YANG variable /nsd/vnfd/ext_cpd (list)

18992 If this variable is read-only (config: false) in the

18993 source YANG file, then _set_ext_cpd is considered as a private

18994 method. Backends looking to populate this variable should

18995 do so via calling thisObj._set_ext_cpd() directly.

18996

18997 YANG Description: Describes an external interface exposed by this VNF enabling

18998 connection with a Virual Link

18999 """

19000 if hasattr(v, "_utype"):

19001 v = v._utype(v)

19002 try:

19003 t = YANGDynClass(v,base=YANGListType("id",yc_ext_cpd_etsi_nfv_nsd__nsd_vnfd_ext_cpd, yang_name="ext-cpd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="ext-cpd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

19004 except (TypeError, ValueError):

19005 raise ValueError({

19006 'error-string': """ext_cpd must be of a type compatible with list""",

19007 'defined-type': "list",

19008 'generated-type': """YANGDynClass(base=YANGListType("id",yc_ext_cpd_etsi_nfv_nsd__nsd_vnfd_ext_cpd, yang_name="ext-cpd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="ext-cpd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

19009 })

19010

19011 self.__ext_cpd = t

19012 if hasattr(self, '_set'):

19013 self._set()

19014

19015 def _unset_ext_cpd(self):

19016 self.__ext_cpd = YANGDynClass(base=YANGListType("id",yc_ext_cpd_etsi_nfv_nsd__nsd_vnfd_ext_cpd, yang_name="ext-cpd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="ext-cpd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

19017

19018

19019 def _get_df(self):

19020 """

19021 Getter method for df, mapped from YANG variable /nsd/vnfd/df (list)

19022

19023 YANG Description: Describes a specific Deployment Flavour (DF) of a VNF with

19024 specific requirements for capacity and performance.

19025 """

19026 return self.__df

19027

19028 def _set_df(self, v, load=False):

19029 """

19030 Setter method for df, mapped from YANG variable /nsd/vnfd/df (list)

19031 If this variable is read-only (config: false) in the

19032 source YANG file, then _set_df is considered as a private

19033 method. Backends looking to populate this variable should

19034 do so via calling thisObj._set_df() directly.

19035

19036 YANG Description: Describes a specific Deployment Flavour (DF) of a VNF with

19037 specific requirements for capacity and performance.

19038 """

19039 if hasattr(v, "_utype"):

19040 v = v._utype(v)

19041 try:

19042 t = YANGDynClass(v,base=YANGListType("id",yc_df_etsi_nfv_nsd__nsd_vnfd_df, yang_name="df", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="df", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

19043 except (TypeError, ValueError):

19044 raise ValueError({

19045 'error-string': """df must be of a type compatible with list""",

19046 'defined-type': "list",

19047 'generated-type': """YANGDynClass(base=YANGListType("id",yc_df_etsi_nfv_nsd__nsd_vnfd_df, yang_name="df", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="df", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

19048 })

19049

19050 self.__df = t

19051 if hasattr(self, '_set'):

19052 self._set()

19053

19054 def _unset_df(self):

19055 self.__df = YANGDynClass(base=YANGListType("id",yc_df_etsi_nfv_nsd__nsd_vnfd_df, yang_name="df", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="df", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

19056

19057

19058 def _get_configurable_properties(self):

19059 """

19060 Getter method for configurable_properties, mapped from YANG variable /nsd/vnfd/configurable_properties (container)

19061

19062 YANG Description: Describes the configurable properties of the VNF

19063(e.g. related to auto scaling and auto healing).

19064 """

19065 return self.__configurable_properties

19066

19067 def _set_configurable_properties(self, v, load=False):

19068 """

19069 Setter method for configurable_properties, mapped from YANG variable /nsd/vnfd/configurable_properties (container)

19070 If this variable is read-only (config: false) in the

19071 source YANG file, then _set_configurable_properties is considered as a private

19072 method. Backends looking to populate this variable should

19073 do so via calling thisObj._set_configurable_properties() directly.

19074

19075 YANG Description: Describes the configurable properties of the VNF

19076(e.g. related to auto scaling and auto healing).

19077 """

19078 if hasattr(v, "_utype"):

19079 v = v._utype(v)

19080 try:

19081 t = YANGDynClass(v,base=yc_configurable_properties_etsi_nfv_nsd__nsd_vnfd_configurable_properties, is_container='container', yang_name="configurable-properties", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

19082 except (TypeError, ValueError):

19083 raise ValueError({

19084 'error-string': """configurable_properties must be of a type compatible with container""",

19085 'defined-type': "container",

19086 'generated-type': """YANGDynClass(base=yc_configurable_properties_etsi_nfv_nsd__nsd_vnfd_configurable_properties, is_container='container', yang_name="configurable-properties", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

19087 })

19088

19089 self.__configurable_properties = t

19090 if hasattr(self, '_set'):

19091 self._set()

19092

19093 def _unset_configurable_properties(self):

19094 self.__configurable_properties = YANGDynClass(base=yc_configurable_properties_etsi_nfv_nsd__nsd_vnfd_configurable_properties, is_container='container', yang_name="configurable-properties", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

19095

19096

19097 def _get_modifiable_attributes(self):

19098 """

19099 Getter method for modifiable_attributes, mapped from YANG variable /nsd/vnfd/modifiable_attributes (container)

19100

19101 YANG Description: Describes the modifiable attributes of the VNF.

19102 """

19103 return self.__modifiable_attributes

19104

19105 def _set_modifiable_attributes(self, v, load=False):

19106 """

19107 Setter method for modifiable_attributes, mapped from YANG variable /nsd/vnfd/modifiable_attributes (container)

19108 If this variable is read-only (config: false) in the

19109 source YANG file, then _set_modifiable_attributes is considered as a private

19110 method. Backends looking to populate this variable should

19111 do so via calling thisObj._set_modifiable_attributes() directly.

19112

19113 YANG Description: Describes the modifiable attributes of the VNF.

19114 """

19115 if hasattr(v, "_utype"):

19116 v = v._utype(v)

19117 try:

19118 t = YANGDynClass(v,base=yc_modifiable_attributes_etsi_nfv_nsd__nsd_vnfd_modifiable_attributes, is_container='container', yang_name="modifiable-attributes", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

19119 except (TypeError, ValueError):

19120 raise ValueError({

19121 'error-string': """modifiable_attributes must be of a type compatible with container""",

19122 'defined-type': "container",

19123 'generated-type': """YANGDynClass(base=yc_modifiable_attributes_etsi_nfv_nsd__nsd_vnfd_modifiable_attributes, is_container='container', yang_name="modifiable-attributes", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

19124 })

19125

19126 self.__modifiable_attributes = t

19127 if hasattr(self, '_set'):

19128 self._set()

19129

19130 def _unset_modifiable_attributes(self):

19131 self.__modifiable_attributes = YANGDynClass(base=yc_modifiable_attributes_etsi_nfv_nsd__nsd_vnfd_modifiable_attributes, is_container='container', yang_name="modifiable-attributes", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

19132

19133

19134 def _get_lifecycle_management_script(self):

19135 """

19136 Getter method for lifecycle_management_script, mapped from YANG variable /nsd/vnfd/lifecycle_management_script (list)

19137

19138 YANG Description: Includes a list of events and corresponding management

19139 scripts performed for the VNF.

19140 """

19141 return self.__lifecycle_management_script

19142

19143 def _set_lifecycle_management_script(self, v, load=False):

19144 """

19145 Setter method for lifecycle_management_script, mapped from YANG variable /nsd/vnfd/lifecycle_management_script (list)

19146 If this variable is read-only (config: false) in the

19147 source YANG file, then _set_lifecycle_management_script is considered as a private

19148 method. Backends looking to populate this variable should

19149 do so via calling thisObj._set_lifecycle_management_script() directly.

19150

19151 YANG Description: Includes a list of events and corresponding management

19152 scripts performed for the VNF.

19153 """

19154 if hasattr(v, "_utype"):

19155 v = v._utype(v)

19156 try:

19157 t = YANGDynClass(v,base=YANGListType("id",yc_lifecycle_management_script_etsi_nfv_nsd__nsd_vnfd_lifecycle_management_script, yang_name="lifecycle-management-script", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="lifecycle-management-script", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

19158 except (TypeError, ValueError):

19159 raise ValueError({

19160 'error-string': """lifecycle_management_script must be of a type compatible with list""",

19161 'defined-type': "list",

19162 'generated-type': """YANGDynClass(base=YANGListType("id",yc_lifecycle_management_script_etsi_nfv_nsd__nsd_vnfd_lifecycle_management_script, yang_name="lifecycle-management-script", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="lifecycle-management-script", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

19163 })

19164

19165 self.__lifecycle_management_script = t

19166 if hasattr(self, '_set'):

19167 self._set()

19168

19169 def _unset_lifecycle_management_script(self):

19170 self.__lifecycle_management_script = YANGDynClass(base=YANGListType("id",yc_lifecycle_management_script_etsi_nfv_nsd__nsd_vnfd_lifecycle_management_script, yang_name="lifecycle-management-script", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="lifecycle-management-script", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

19171

19172

19173 def _get_element_group(self):

19174 """

19175 Getter method for element_group, mapped from YANG variable /nsd/vnfd/element_group (list)

19176

19177 YANG Description: Describes the associated elements of a VNFD for a certain

19178 purpose during VNF lifecycle management.

19179 """

19180 return self.__element_group

19181

19182 def _set_element_group(self, v, load=False):

19183 """

19184 Setter method for element_group, mapped from YANG variable /nsd/vnfd/element_group (list)

19185 If this variable is read-only (config: false) in the

19186 source YANG file, then _set_element_group is considered as a private

19187 method. Backends looking to populate this variable should

19188 do so via calling thisObj._set_element_group() directly.

19189

19190 YANG Description: Describes the associated elements of a VNFD for a certain

19191 purpose during VNF lifecycle management.

19192 """

19193 if hasattr(v, "_utype"):

19194 v = v._utype(v)

19195 try:

19196 t = YANGDynClass(v,base=YANGListType("id",yc_element_group_etsi_nfv_nsd__nsd_vnfd_element_group, yang_name="element-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="element-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

19197 except (TypeError, ValueError):

19198 raise ValueError({

19199 'error-string': """element_group must be of a type compatible with list""",

19200 'defined-type': "list",

19201 'generated-type': """YANGDynClass(base=YANGListType("id",yc_element_group_etsi_nfv_nsd__nsd_vnfd_element_group, yang_name="element-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="element-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

19202 })

19203

19204 self.__element_group = t

19205 if hasattr(self, '_set'):

19206 self._set()

19207

19208 def _unset_element_group(self):

19209 self.__element_group = YANGDynClass(base=YANGListType("id",yc_element_group_etsi_nfv_nsd__nsd_vnfd_element_group, yang_name="element-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="element-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

19210

19211

19212 def _get_indicator(self):

19213 """

19214 Getter method for indicator, mapped from YANG variable /nsd/vnfd/indicator (list)

19215

19216 YANG Description: Declares the VNF indicators that are supported by this

19217 VNF.

19218 """

19219 return self.__indicator

19220

19221 def _set_indicator(self, v, load=False):

19222 """

19223 Setter method for indicator, mapped from YANG variable /nsd/vnfd/indicator (list)

19224 If this variable is read-only (config: false) in the

19225 source YANG file, then _set_indicator is considered as a private

19226 method. Backends looking to populate this variable should

19227 do so via calling thisObj._set_indicator() directly.

19228

19229 YANG Description: Declares the VNF indicators that are supported by this

19230 VNF.

19231 """

19232 if hasattr(v, "_utype"):

19233 v = v._utype(v)

19234 try:

19235 t = YANGDynClass(v,base=YANGListType("id",yc_indicator_etsi_nfv_nsd__nsd_vnfd_indicator, yang_name="indicator", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="indicator", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

19236 except (TypeError, ValueError):

19237 raise ValueError({

19238 'error-string': """indicator must be of a type compatible with list""",

19239 'defined-type': "list",

19240 'generated-type': """YANGDynClass(base=YANGListType("id",yc_indicator_etsi_nfv_nsd__nsd_vnfd_indicator, yang_name="indicator", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="indicator", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

19241 })

19242

19243 self.__indicator = t

19244 if hasattr(self, '_set'):

19245 self._set()

19246

19247 def _unset_indicator(self):

19248 self.__indicator = YANGDynClass(base=YANGListType("id",yc_indicator_etsi_nfv_nsd__nsd_vnfd_indicator, yang_name="indicator", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="indicator", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

19249

19250

19251 def _get_auto_scale(self):

19252 """

19253 Getter method for auto_scale, mapped from YANG variable /nsd/vnfd/auto_scale (string)

19254

19255 YANG Description: Rule that determines when a scaling action needs to be

19256 triggered on a VNF instance e.g. based on certain VNF

19257 indicator values or VNF indicator value changes or a

19258 combination of VNF indicator value(s) and monitoring

19259 parameter(s).

19260 """

19261 return self.__auto_scale

19262

19263 def _set_auto_scale(self, v, load=False):

19264 """

19265 Setter method for auto_scale, mapped from YANG variable /nsd/vnfd/auto_scale (string)

19266 If this variable is read-only (config: false) in the

19267 source YANG file, then _set_auto_scale is considered as a private

19268 method. Backends looking to populate this variable should

19269 do so via calling thisObj._set_auto_scale() directly.

19270

19271 YANG Description: Rule that determines when a scaling action needs to be

19272 triggered on a VNF instance e.g. based on certain VNF

19273 indicator values or VNF indicator value changes or a

19274 combination of VNF indicator value(s) and monitoring

19275 parameter(s).

19276 """

19277 if hasattr(v, "_utype"):

19278 v = v._utype(v)

19279 try:

19280 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="auto-scale", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

19281 except (TypeError, ValueError):

19282 raise ValueError({

19283 'error-string': """auto_scale must be of a type compatible with string""",

19284 'defined-type': "string",

19285 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="auto-scale", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

19286 })

19287

19288 self.__auto_scale = t

19289 if hasattr(self, '_set'):

19290 self._set()

19291

19292 def _unset_auto_scale(self):

19293 self.__auto_scale = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="auto-scale", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

19294

19295 id = __builtin__.property(_get_id, _set_id)

19296 provider = __builtin__.property(_get_provider, _set_provider)

19297 product_name = __builtin__.property(_get_product_name, _set_product_name)

19298 software_version = __builtin__.property(_get_software_version, _set_software_version)

19299 version = __builtin__.property(_get_version, _set_version)

19300 product_info_name = __builtin__.property(_get_product_info_name, _set_product_info_name)

19301 product_info_description = __builtin__.property(_get_product_info_description, _set_product_info_description)

19302 vnfm_info = __builtin__.property(_get_vnfm_info, _set_vnfm_info)

19303 localization_language = __builtin__.property(_get_localization_language, _set_localization_language)

19304 default_localization_language = __builtin__.property(_get_default_localization_language, _set_default_localization_language)

19305 vdu = __builtin__.property(_get_vdu, _set_vdu)

19306 virtual_compute_desc = __builtin__.property(_get_virtual_compute_desc, _set_virtual_compute_desc)

19307 virtual_storage_desc = __builtin__.property(_get_virtual_storage_desc, _set_virtual_storage_desc)

19308 sw_image_desc = __builtin__.property(_get_sw_image_desc, _set_sw_image_desc)

19309 int_virtual_link_desc = __builtin__.property(_get_int_virtual_link_desc, _set_int_virtual_link_desc)

19310 security_group_rule = __builtin__.property(_get_security_group_rule, _set_security_group_rule)

19311 ext_cpd = __builtin__.property(_get_ext_cpd, _set_ext_cpd)

19312 df = __builtin__.property(_get_df, _set_df)

19313 configurable_properties = __builtin__.property(_get_configurable_properties, _set_configurable_properties)

19314 modifiable_attributes = __builtin__.property(_get_modifiable_attributes, _set_modifiable_attributes)

19315 lifecycle_management_script = __builtin__.property(_get_lifecycle_management_script, _set_lifecycle_management_script)

19316 element_group = __builtin__.property(_get_element_group, _set_element_group)

19317 indicator = __builtin__.property(_get_indicator, _set_indicator)

19318 auto_scale = __builtin__.property(_get_auto_scale, _set_auto_scale)

19319

19320

19321 _pyangbind_elements = OrderedDict([('id', id), ('provider', provider), ('product_name', product_name), ('software_version', software_version), ('version', version), ('product_info_name', product_info_name), ('product_info_description', product_info_description), ('vnfm_info', vnfm_info), ('localization_language', localization_language), ('default_localization_language', default_localization_language), ('vdu', vdu), ('virtual_compute_desc', virtual_compute_desc), ('virtual_storage_desc', virtual_storage_desc), ('sw_image_desc', sw_image_desc), ('int_virtual_link_desc', int_virtual_link_desc), ('security_group_rule', security_group_rule), ('ext_cpd', ext_cpd), ('df', df), ('configurable_properties', configurable_properties), ('modifiable_attributes', modifiable_attributes), ('lifecycle_management_script', lifecycle_management_script), ('element_group', element_group), ('indicator', indicator), ('auto_scale', auto_scale), ])

19322

19323

19324 class yc_vnf_etsi_nfv_nsd__nsd_nsd_sapd_vnf(PybindBase):

19325 """

19326 This class was auto-generated by the PythonClass plugin for PYANG

19327 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/sapd/vnf. Each member element of

19328 the container is represented as a class variable - with a specific

19329 YANG type.

19330 """

19331 __slots__ = ('_path_helper', '_extmethods', '__vnfd_id','__ext_cpd_id',)

19332

19333 _yang_name = 'vnf'

19334 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

19335

19336 _pybind_generated_by = 'container'

19337

19338 def __init__(self, *args, **kwargs):

19339

19340 self._path_helper = False

19341

19342 self._extmethods = False

19343 self.__vnfd_id = YANGDynClass(base=str, is_leaf=True, yang_name="vnfd-id", parent=self, choice=('cpd-or-virtual-link', 'vnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

19344 self.__ext_cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="ext-cpd-id", parent=self, choice=('cpd-or-virtual-link', 'vnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

19345

19346 load = kwargs.pop("load", None)

19347 if args:

19348 if len(args) > 1:

19349 raise TypeError("cannot create a YANG container with >1 argument")

19350 all_attr = True

19351 for e in self._pyangbind_elements:

19352 if not hasattr(args[0], e):

19353 all_attr = False

19354 break

19355 if not all_attr:

19356 raise ValueError("Supplied object did not have the correct attributes")

19357 for e in self._pyangbind_elements:

19358 nobj = getattr(args[0], e)

19359 if nobj._changed() is False:

19360 continue

19361 setmethod = getattr(self, "_set_%s" % e)

19362 if load is None:

19363 setmethod(getattr(args[0], e))

19364 else:

19365 setmethod(getattr(args[0], e), load=load)

19366

19367 def _path(self):

19368 if hasattr(self, "_parent"):

19369 return self._parent._path()+[self._yang_name]

19370 else:

19371 return ['nsd', 'nsd', 'sapd', 'vnf']

19372

19373 def _get_vnfd_id(self):

19374 """

19375 Getter method for vnfd_id, mapped from YANG variable /nsd/nsd/sapd/vnf/vnfd_id (leafref)

19376 """

19377 return self.__vnfd_id

19378

19379 def _set_vnfd_id(self, v, load=False):

19380 """

19381 Setter method for vnfd_id, mapped from YANG variable /nsd/nsd/sapd/vnf/vnfd_id (leafref)

19382 If this variable is read-only (config: false) in the

19383 source YANG file, then _set_vnfd_id is considered as a private

19384 method. Backends looking to populate this variable should

19385 do so via calling thisObj._set_vnfd_id() directly.

19386 """

19387 if hasattr(v, "_utype"):

19388 v = v._utype(v)

19389 try:

19390 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="vnfd-id", parent=self, choice=('cpd-or-virtual-link', 'vnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

19391 except (TypeError, ValueError):

19392 raise ValueError({

19393 'error-string': """vnfd_id must be of a type compatible with leafref""",

19394 'defined-type': "leafref",

19395 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="vnfd-id", parent=self, choice=('cpd-or-virtual-link', 'vnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

19396 })

19397

19398 self.__vnfd_id = t

19399 if hasattr(self, '_set'):

19400 self._set()

19401

19402 def _unset_vnfd_id(self):

19403 self.__vnfd_id = YANGDynClass(base=str, is_leaf=True, yang_name="vnfd-id", parent=self, choice=('cpd-or-virtual-link', 'vnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

19404

19405

19406 def _get_ext_cpd_id(self):

19407 """

19408 Getter method for ext_cpd_id, mapped from YANG variable /nsd/nsd/sapd/vnf/ext_cpd_id (leafref)

19409 """

19410 return self.__ext_cpd_id

19411

19412 def _set_ext_cpd_id(self, v, load=False):

19413 """

19414 Setter method for ext_cpd_id, mapped from YANG variable /nsd/nsd/sapd/vnf/ext_cpd_id (leafref)

19415 If this variable is read-only (config: false) in the

19416 source YANG file, then _set_ext_cpd_id is considered as a private

19417 method. Backends looking to populate this variable should

19418 do so via calling thisObj._set_ext_cpd_id() directly.

19419 """

19420 if hasattr(v, "_utype"):

19421 v = v._utype(v)

19422 try:

19423 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="ext-cpd-id", parent=self, choice=('cpd-or-virtual-link', 'vnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

19424 except (TypeError, ValueError):

19425 raise ValueError({

19426 'error-string': """ext_cpd_id must be of a type compatible with leafref""",

19427 'defined-type': "leafref",

19428 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="ext-cpd-id", parent=self, choice=('cpd-or-virtual-link', 'vnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

19429 })

19430

19431 self.__ext_cpd_id = t

19432 if hasattr(self, '_set'):

19433 self._set()

19434

19435 def _unset_ext_cpd_id(self):

19436 self.__ext_cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="ext-cpd-id", parent=self, choice=('cpd-or-virtual-link', 'vnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

19437

19438 vnfd_id = __builtin__.property(_get_vnfd_id, _set_vnfd_id)

19439 ext_cpd_id = __builtin__.property(_get_ext_cpd_id, _set_ext_cpd_id)

19440

19441 __choices__ = {'cpd-or-virtual-link': {'vnf': ['vnfd_id', 'ext_cpd_id']}}

19442 _pyangbind_elements = OrderedDict([('vnfd_id', vnfd_id), ('ext_cpd_id', ext_cpd_id), ])

19443

19444

19445 class yc_pnf_etsi_nfv_nsd__nsd_nsd_sapd_pnf(PybindBase):

19446 """

19447 This class was auto-generated by the PythonClass plugin for PYANG

19448 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/sapd/pnf. Each member element of

19449 the container is represented as a class variable - with a specific

19450 YANG type.

19451 """

19452 __slots__ = ('_path_helper', '_extmethods', '__pnfd_id','__ext_cpd_id',)

19453

19454 _yang_name = 'pnf'

19455 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

19456

19457 _pybind_generated_by = 'container'

19458

19459 def __init__(self, *args, **kwargs):

19460

19461 self._path_helper = False

19462

19463 self._extmethods = False

19464 self.__pnfd_id = YANGDynClass(base=str, is_leaf=True, yang_name="pnfd-id", parent=self, choice=('cpd-or-virtual-link', 'pnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

19465 self.__ext_cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="ext-cpd-id", parent=self, choice=('cpd-or-virtual-link', 'pnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

19466

19467 load = kwargs.pop("load", None)

19468 if args:

19469 if len(args) > 1:

19470 raise TypeError("cannot create a YANG container with >1 argument")

19471 all_attr = True

19472 for e in self._pyangbind_elements:

19473 if not hasattr(args[0], e):

19474 all_attr = False

19475 break

19476 if not all_attr:

19477 raise ValueError("Supplied object did not have the correct attributes")

19478 for e in self._pyangbind_elements:

19479 nobj = getattr(args[0], e)

19480 if nobj._changed() is False:

19481 continue

19482 setmethod = getattr(self, "_set_%s" % e)

19483 if load is None:

19484 setmethod(getattr(args[0], e))

19485 else:

19486 setmethod(getattr(args[0], e), load=load)

19487

19488 def _path(self):

19489 if hasattr(self, "_parent"):

19490 return self._parent._path()+[self._yang_name]

19491 else:

19492 return ['nsd', 'nsd', 'sapd', 'pnf']

19493

19494 def _get_pnfd_id(self):

19495 """

19496 Getter method for pnfd_id, mapped from YANG variable /nsd/nsd/sapd/pnf/pnfd_id (leafref)

19497 """

19498 return self.__pnfd_id

19499

19500 def _set_pnfd_id(self, v, load=False):

19501 """

19502 Setter method for pnfd_id, mapped from YANG variable /nsd/nsd/sapd/pnf/pnfd_id (leafref)

19503 If this variable is read-only (config: false) in the

19504 source YANG file, then _set_pnfd_id is considered as a private

19505 method. Backends looking to populate this variable should

19506 do so via calling thisObj._set_pnfd_id() directly.

19507 """

19508 if hasattr(v, "_utype"):

19509 v = v._utype(v)

19510 try:

19511 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="pnfd-id", parent=self, choice=('cpd-or-virtual-link', 'pnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

19512 except (TypeError, ValueError):

19513 raise ValueError({

19514 'error-string': """pnfd_id must be of a type compatible with leafref""",

19515 'defined-type': "leafref",

19516 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="pnfd-id", parent=self, choice=('cpd-or-virtual-link', 'pnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

19517 })

19518

19519 self.__pnfd_id = t

19520 if hasattr(self, '_set'):

19521 self._set()

19522

19523 def _unset_pnfd_id(self):

19524 self.__pnfd_id = YANGDynClass(base=str, is_leaf=True, yang_name="pnfd-id", parent=self, choice=('cpd-or-virtual-link', 'pnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

19525

19526

19527 def _get_ext_cpd_id(self):

19528 """

19529 Getter method for ext_cpd_id, mapped from YANG variable /nsd/nsd/sapd/pnf/ext_cpd_id (leafref)

19530 """

19531 return self.__ext_cpd_id

19532

19533 def _set_ext_cpd_id(self, v, load=False):

19534 """

19535 Setter method for ext_cpd_id, mapped from YANG variable /nsd/nsd/sapd/pnf/ext_cpd_id (leafref)

19536 If this variable is read-only (config: false) in the

19537 source YANG file, then _set_ext_cpd_id is considered as a private

19538 method. Backends looking to populate this variable should

19539 do so via calling thisObj._set_ext_cpd_id() directly.

19540 """

19541 if hasattr(v, "_utype"):

19542 v = v._utype(v)

19543 try:

19544 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="ext-cpd-id", parent=self, choice=('cpd-or-virtual-link', 'pnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

19545 except (TypeError, ValueError):

19546 raise ValueError({

19547 'error-string': """ext_cpd_id must be of a type compatible with leafref""",

19548 'defined-type': "leafref",

19549 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="ext-cpd-id", parent=self, choice=('cpd-or-virtual-link', 'pnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

19550 })

19551

19552 self.__ext_cpd_id = t

19553 if hasattr(self, '_set'):

19554 self._set()

19555

19556 def _unset_ext_cpd_id(self):

19557 self.__ext_cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="ext-cpd-id", parent=self, choice=('cpd-or-virtual-link', 'pnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

19558

19559 pnfd_id = __builtin__.property(_get_pnfd_id, _set_pnfd_id)

19560 ext_cpd_id = __builtin__.property(_get_ext_cpd_id, _set_ext_cpd_id)

19561

19562 __choices__ = {'cpd-or-virtual-link': {'pnf': ['pnfd_id', 'ext_cpd_id']}}

19563 _pyangbind_elements = OrderedDict([('pnfd_id', pnfd_id), ('ext_cpd_id', ext_cpd_id), ])

19564

19565

19566 class yc_ns_etsi_nfv_nsd__nsd_nsd_sapd_ns(PybindBase):

19567 """

19568 This class was auto-generated by the PythonClass plugin for PYANG

19569 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/sapd/ns. Each member element of

19570 the container is represented as a class variable - with a specific

19571 YANG type.

19572 """

19573 __slots__ = ('_path_helper', '_extmethods', '__nsd_id','__ext_cpd_id',)

19574

19575 _yang_name = 'ns'

19576 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

19577

19578 _pybind_generated_by = 'container'

19579

19580 def __init__(self, *args, **kwargs):

19581

19582 self._path_helper = False

19583

19584 self._extmethods = False

19585 self.__nsd_id = YANGDynClass(base=str, is_leaf=True, yang_name="nsd-id", parent=self, choice=('cpd-or-virtual-link', 'ns'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

19586 self.__ext_cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="ext-cpd-id", parent=self, choice=('cpd-or-virtual-link', 'ns'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

19587

19588 load = kwargs.pop("load", None)

19589 if args:

19590 if len(args) > 1:

19591 raise TypeError("cannot create a YANG container with >1 argument")

19592 all_attr = True

19593 for e in self._pyangbind_elements:

19594 if not hasattr(args[0], e):

19595 all_attr = False

19596 break

19597 if not all_attr:

19598 raise ValueError("Supplied object did not have the correct attributes")

19599 for e in self._pyangbind_elements:

19600 nobj = getattr(args[0], e)

19601 if nobj._changed() is False:

19602 continue

19603 setmethod = getattr(self, "_set_%s" % e)

19604 if load is None:

19605 setmethod(getattr(args[0], e))

19606 else:

19607 setmethod(getattr(args[0], e), load=load)

19608

19609 def _path(self):

19610 if hasattr(self, "_parent"):

19611 return self._parent._path()+[self._yang_name]

19612 else:

19613 return ['nsd', 'nsd', 'sapd', 'ns']

19614

19615 def _get_nsd_id(self):

19616 """

19617 Getter method for nsd_id, mapped from YANG variable /nsd/nsd/sapd/ns/nsd_id (leafref)

19618 """

19619 return self.__nsd_id

19620

19621 def _set_nsd_id(self, v, load=False):

19622 """

19623 Setter method for nsd_id, mapped from YANG variable /nsd/nsd/sapd/ns/nsd_id (leafref)

19624 If this variable is read-only (config: false) in the

19625 source YANG file, then _set_nsd_id is considered as a private

19626 method. Backends looking to populate this variable should

19627 do so via calling thisObj._set_nsd_id() directly.

19628 """

19629 if hasattr(v, "_utype"):

19630 v = v._utype(v)

19631 try:

19632 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="nsd-id", parent=self, choice=('cpd-or-virtual-link', 'ns'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

19633 except (TypeError, ValueError):

19634 raise ValueError({

19635 'error-string': """nsd_id must be of a type compatible with leafref""",

19636 'defined-type': "leafref",

19637 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="nsd-id", parent=self, choice=('cpd-or-virtual-link', 'ns'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

19638 })

19639

19640 self.__nsd_id = t

19641 if hasattr(self, '_set'):

19642 self._set()

19643

19644 def _unset_nsd_id(self):

19645 self.__nsd_id = YANGDynClass(base=str, is_leaf=True, yang_name="nsd-id", parent=self, choice=('cpd-or-virtual-link', 'ns'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

19646

19647

19648 def _get_ext_cpd_id(self):

19649 """

19650 Getter method for ext_cpd_id, mapped from YANG variable /nsd/nsd/sapd/ns/ext_cpd_id (leafref)

19651 """

19652 return self.__ext_cpd_id

19653

19654 def _set_ext_cpd_id(self, v, load=False):

19655 """

19656 Setter method for ext_cpd_id, mapped from YANG variable /nsd/nsd/sapd/ns/ext_cpd_id (leafref)

19657 If this variable is read-only (config: false) in the

19658 source YANG file, then _set_ext_cpd_id is considered as a private

19659 method. Backends looking to populate this variable should

19660 do so via calling thisObj._set_ext_cpd_id() directly.

19661 """

19662 if hasattr(v, "_utype"):

19663 v = v._utype(v)

19664 try:

19665 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="ext-cpd-id", parent=self, choice=('cpd-or-virtual-link', 'ns'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

19666 except (TypeError, ValueError):

19667 raise ValueError({

19668 'error-string': """ext_cpd_id must be of a type compatible with leafref""",

19669 'defined-type': "leafref",

19670 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="ext-cpd-id", parent=self, choice=('cpd-or-virtual-link', 'ns'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

19671 })

19672

19673 self.__ext_cpd_id = t

19674 if hasattr(self, '_set'):

19675 self._set()

19676

19677 def _unset_ext_cpd_id(self):

19678 self.__ext_cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="ext-cpd-id", parent=self, choice=('cpd-or-virtual-link', 'ns'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

19679

19680 nsd_id = __builtin__.property(_get_nsd_id, _set_nsd_id)

19681 ext_cpd_id = __builtin__.property(_get_ext_cpd_id, _set_ext_cpd_id)

19682

19683 __choices__ = {'cpd-or-virtual-link': {'ns': ['nsd_id', 'ext_cpd_id']}}

19684 _pyangbind_elements = OrderedDict([('nsd_id', nsd_id), ('ext_cpd_id', ext_cpd_id), ])

19685

19686

19687 class yc_sapd_etsi_nfv_nsd__nsd_nsd_sapd(PybindBase):

19688 """

19689 This class was auto-generated by the PythonClass plugin for PYANG

19690 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/sapd. Each member element of

19691 the container is represented as a class variable - with a specific

19692 YANG type.

19693

19694 YANG Description: Provides the descriptor of a service access point of the

19695 network service.

19696 """

19697 __slots__ = ('_path_helper', '_extmethods', '__id','__address_assignment','__virtual_link_desc','__vnf','__pnf','__ns','__floating_ip_required',)

19698

19699 _yang_name = 'sapd'

19700 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

19701

19702 _pybind_generated_by = 'container'

19703

19704 def __init__(self, *args, **kwargs):

19705

19706 self._path_helper = False

19707

19708 self._extmethods = False

19709 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

19710 self.__address_assignment = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

19711 self.__virtual_link_desc = YANGDynClass(base=str, is_leaf=True, yang_name="virtual-link-desc", parent=self, choice=('cpd-or-virtual-link', 'virtual-link-desc'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

19712 self.__vnf = YANGDynClass(base=yc_vnf_etsi_nfv_nsd__nsd_nsd_sapd_vnf, is_container='container', yang_name="vnf", parent=self, choice=('cpd-or-virtual-link', 'vnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

19713 self.__pnf = YANGDynClass(base=yc_pnf_etsi_nfv_nsd__nsd_nsd_sapd_pnf, is_container='container', yang_name="pnf", parent=self, choice=('cpd-or-virtual-link', 'pnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

19714 self.__ns = YANGDynClass(base=yc_ns_etsi_nfv_nsd__nsd_nsd_sapd_ns, is_container='container', yang_name="ns", parent=self, choice=('cpd-or-virtual-link', 'ns'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

19715 self.__floating_ip_required = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="floating-ip-required", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-various', defining_module='ns-various', yang_type='boolean', is_config=True)

19716

19717 load = kwargs.pop("load", None)

19718 if args:

19719 if len(args) > 1:

19720 raise TypeError("cannot create a YANG container with >1 argument")

19721 all_attr = True

19722 for e in self._pyangbind_elements:

19723 if not hasattr(args[0], e):

19724 all_attr = False

19725 break

19726 if not all_attr:

19727 raise ValueError("Supplied object did not have the correct attributes")

19728 for e in self._pyangbind_elements:

19729 nobj = getattr(args[0], e)

19730 if nobj._changed() is False:

19731 continue

19732 setmethod = getattr(self, "_set_%s" % e)

19733 if load is None:

19734 setmethod(getattr(args[0], e))

19735 else:

19736 setmethod(getattr(args[0], e), load=load)

19737

19738 def _path(self):

19739 if hasattr(self, "_parent"):

19740 return self._parent._path()+[self._yang_name]

19741 else:

19742 return ['nsd', 'nsd', 'sapd']

19743

19744 def _get_id(self):

19745 """

19746 Getter method for id, mapped from YANG variable /nsd/nsd/sapd/id (string)

19747

19748 YANG Description: Identifier of this Cpd information element.

19749 """

19750 return self.__id

19751

19752 def _set_id(self, v, load=False):

19753 """

19754 Setter method for id, mapped from YANG variable /nsd/nsd/sapd/id (string)

19755 If this variable is read-only (config: false) in the

19756 source YANG file, then _set_id is considered as a private

19757 method. Backends looking to populate this variable should

19758 do so via calling thisObj._set_id() directly.

19759

19760 YANG Description: Identifier of this Cpd information element.

19761 """

19762 parent = getattr(self, "_parent", None)

19763 if parent is not None and load is False:

19764 raise AttributeError("Cannot set keys directly when" +

19765 " within an instantiated list")

19766

19767 if hasattr(v, "_utype"):

19768 v = v._utype(v)

19769 try:

19770 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

19771 except (TypeError, ValueError):

19772 raise ValueError({

19773 'error-string': """id must be of a type compatible with string""",

19774 'defined-type': "string",

19775 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

19776 })

19777

19778 self.__id = t

19779 if hasattr(self, '_set'):

19780 self._set()

19781

19782 def _unset_id(self):

19783 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

19784

19785

19786 def _get_address_assignment(self):

19787 """

19788 Getter method for address_assignment, mapped from YANG variable /nsd/nsd/sapd/address_assignment (boolean)

19789

19790 YANG Description: Specify whether the SAP address assignment is under the

19791 responsibility of management and orchestration functions

19792 or not. If it is set to True, management and

19793 orchestration functions are responsible for assigning

19794 addresses to the access points instantiated from this

19795 SAPD.

19796 """

19797 return self.__address_assignment

19798

19799 def _set_address_assignment(self, v, load=False):

19800 """

19801 Setter method for address_assignment, mapped from YANG variable /nsd/nsd/sapd/address_assignment (boolean)

19802 If this variable is read-only (config: false) in the

19803 source YANG file, then _set_address_assignment is considered as a private

19804 method. Backends looking to populate this variable should

19805 do so via calling thisObj._set_address_assignment() directly.

19806

19807 YANG Description: Specify whether the SAP address assignment is under the

19808 responsibility of management and orchestration functions

19809 or not. If it is set to True, management and

19810 orchestration functions are responsible for assigning

19811 addresses to the access points instantiated from this

19812 SAPD.

19813 """

19814 if hasattr(v, "_utype"):

19815 v = v._utype(v)

19816 try:

19817 t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

19818 except (TypeError, ValueError):

19819 raise ValueError({

19820 'error-string': """address_assignment must be of a type compatible with boolean""",

19821 'defined-type': "boolean",

19822 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)""",

19823 })

19824

19825 self.__address_assignment = t

19826 if hasattr(self, '_set'):

19827 self._set()

19828

19829 def _unset_address_assignment(self):

19830 self.__address_assignment = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

19831

19832

19833 def _get_virtual_link_desc(self):

19834 """

19835 Getter method for virtual_link_desc, mapped from YANG variable /nsd/nsd/sapd/virtual_link_desc (leafref)

19836

19837 YANG Description: References the descriptor of the NS VL instance to

19838 which the SAP instantiated from this SAPD connects to.

19839 """

19840 return self.__virtual_link_desc

19841

19842 def _set_virtual_link_desc(self, v, load=False):

19843 """

19844 Setter method for virtual_link_desc, mapped from YANG variable /nsd/nsd/sapd/virtual_link_desc (leafref)

19845 If this variable is read-only (config: false) in the

19846 source YANG file, then _set_virtual_link_desc is considered as a private

19847 method. Backends looking to populate this variable should

19848 do so via calling thisObj._set_virtual_link_desc() directly.

19849

19850 YANG Description: References the descriptor of the NS VL instance to

19851 which the SAP instantiated from this SAPD connects to.

19852 """

19853 if hasattr(v, "_utype"):

19854 v = v._utype(v)

19855 try:

19856 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="virtual-link-desc", parent=self, choice=('cpd-or-virtual-link', 'virtual-link-desc'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

19857 except (TypeError, ValueError):

19858 raise ValueError({

19859 'error-string': """virtual_link_desc must be of a type compatible with leafref""",

19860 'defined-type': "leafref",

19861 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="virtual-link-desc", parent=self, choice=('cpd-or-virtual-link', 'virtual-link-desc'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

19862 })

19863

19864 self.__virtual_link_desc = t

19865 if hasattr(self, '_set'):

19866 self._set()

19867

19868 def _unset_virtual_link_desc(self):

19869 self.__virtual_link_desc = YANGDynClass(base=str, is_leaf=True, yang_name="virtual-link-desc", parent=self, choice=('cpd-or-virtual-link', 'virtual-link-desc'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

19870

19871

19872 def _get_vnf(self):

19873 """

19874 Getter method for vnf, mapped from YANG variable /nsd/nsd/sapd/vnf (container)

19875 """

19876 return self.__vnf

19877

19878 def _set_vnf(self, v, load=False):

19879 """

19880 Setter method for vnf, mapped from YANG variable /nsd/nsd/sapd/vnf (container)

19881 If this variable is read-only (config: false) in the

19882 source YANG file, then _set_vnf is considered as a private

19883 method. Backends looking to populate this variable should

19884 do so via calling thisObj._set_vnf() directly.

19885 """

19886 if hasattr(v, "_utype"):

19887 v = v._utype(v)

19888 try:

19889 t = YANGDynClass(v,base=yc_vnf_etsi_nfv_nsd__nsd_nsd_sapd_vnf, is_container='container', yang_name="vnf", parent=self, choice=('cpd-or-virtual-link', 'vnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

19890 except (TypeError, ValueError):

19891 raise ValueError({

19892 'error-string': """vnf must be of a type compatible with container""",

19893 'defined-type': "container",

19894 'generated-type': """YANGDynClass(base=yc_vnf_etsi_nfv_nsd__nsd_nsd_sapd_vnf, is_container='container', yang_name="vnf", parent=self, choice=('cpd-or-virtual-link', 'vnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

19895 })

19896

19897 self.__vnf = t

19898 if hasattr(self, '_set'):

19899 self._set()

19900

19901 def _unset_vnf(self):

19902 self.__vnf = YANGDynClass(base=yc_vnf_etsi_nfv_nsd__nsd_nsd_sapd_vnf, is_container='container', yang_name="vnf", parent=self, choice=('cpd-or-virtual-link', 'vnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

19903

19904

19905 def _get_pnf(self):

19906 """

19907 Getter method for pnf, mapped from YANG variable /nsd/nsd/sapd/pnf (container)

19908 """

19909 return self.__pnf

19910

19911 def _set_pnf(self, v, load=False):

19912 """

19913 Setter method for pnf, mapped from YANG variable /nsd/nsd/sapd/pnf (container)

19914 If this variable is read-only (config: false) in the

19915 source YANG file, then _set_pnf is considered as a private

19916 method. Backends looking to populate this variable should

19917 do so via calling thisObj._set_pnf() directly.

19918 """

19919 if hasattr(v, "_utype"):

19920 v = v._utype(v)

19921 try:

19922 t = YANGDynClass(v,base=yc_pnf_etsi_nfv_nsd__nsd_nsd_sapd_pnf, is_container='container', yang_name="pnf", parent=self, choice=('cpd-or-virtual-link', 'pnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

19923 except (TypeError, ValueError):

19924 raise ValueError({

19925 'error-string': """pnf must be of a type compatible with container""",

19926 'defined-type': "container",

19927 'generated-type': """YANGDynClass(base=yc_pnf_etsi_nfv_nsd__nsd_nsd_sapd_pnf, is_container='container', yang_name="pnf", parent=self, choice=('cpd-or-virtual-link', 'pnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

19928 })

19929

19930 self.__pnf = t

19931 if hasattr(self, '_set'):

19932 self._set()

19933

19934 def _unset_pnf(self):

19935 self.__pnf = YANGDynClass(base=yc_pnf_etsi_nfv_nsd__nsd_nsd_sapd_pnf, is_container='container', yang_name="pnf", parent=self, choice=('cpd-or-virtual-link', 'pnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

19936

19937

19938 def _get_ns(self):

19939 """

19940 Getter method for ns, mapped from YANG variable /nsd/nsd/sapd/ns (container)

19941 """

19942 return self.__ns

19943

19944 def _set_ns(self, v, load=False):

19945 """

19946 Setter method for ns, mapped from YANG variable /nsd/nsd/sapd/ns (container)

19947 If this variable is read-only (config: false) in the

19948 source YANG file, then _set_ns is considered as a private

19949 method. Backends looking to populate this variable should

19950 do so via calling thisObj._set_ns() directly.

19951 """

19952 if hasattr(v, "_utype"):

19953 v = v._utype(v)

19954 try:

19955 t = YANGDynClass(v,base=yc_ns_etsi_nfv_nsd__nsd_nsd_sapd_ns, is_container='container', yang_name="ns", parent=self, choice=('cpd-or-virtual-link', 'ns'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

19956 except (TypeError, ValueError):

19957 raise ValueError({

19958 'error-string': """ns must be of a type compatible with container""",

19959 'defined-type': "container",

19960 'generated-type': """YANGDynClass(base=yc_ns_etsi_nfv_nsd__nsd_nsd_sapd_ns, is_container='container', yang_name="ns", parent=self, choice=('cpd-or-virtual-link', 'ns'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

19961 })

19962

19963 self.__ns = t

19964 if hasattr(self, '_set'):

19965 self._set()

19966

19967 def _unset_ns(self):

19968 self.__ns = YANGDynClass(base=yc_ns_etsi_nfv_nsd__nsd_nsd_sapd_ns, is_container='container', yang_name="ns", parent=self, choice=('cpd-or-virtual-link', 'ns'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

19969

19970

19971 def _get_floating_ip_required(self):

19972 """

19973 Getter method for floating_ip_required, mapped from YANG variable /nsd/nsd/sapd/floating_ip_required (boolean)

19974

19975 YANG Description: Boolean parameter to indicate whether the CP must be exposed.

19976 A public IP address will be allocated to this CP if exposed is true.

19977 The default is false meaning a floating IP address is not required.

19978 It must be explicitly asked for a floating IP address to be allocated.

19979 """

19980 return self.__floating_ip_required

19981

19982 def _set_floating_ip_required(self, v, load=False):

19983 """

19984 Setter method for floating_ip_required, mapped from YANG variable /nsd/nsd/sapd/floating_ip_required (boolean)

19985 If this variable is read-only (config: false) in the

19986 source YANG file, then _set_floating_ip_required is considered as a private

19987 method. Backends looking to populate this variable should

19988 do so via calling thisObj._set_floating_ip_required() directly.

19989

19990 YANG Description: Boolean parameter to indicate whether the CP must be exposed.

19991 A public IP address will be allocated to this CP if exposed is true.

19992 The default is false meaning a floating IP address is not required.

19993 It must be explicitly asked for a floating IP address to be allocated.

19994 """

19995 if hasattr(v, "_utype"):

19996 v = v._utype(v)

19997 try:

19998 t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="floating-ip-required", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-various', defining_module='ns-various', yang_type='boolean', is_config=True)

19999 except (TypeError, ValueError):

20000 raise ValueError({

20001 'error-string': """floating_ip_required must be of a type compatible with boolean""",

20002 'defined-type': "boolean",

20003 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="floating-ip-required", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-various', defining_module='ns-various', yang_type='boolean', is_config=True)""",

20004 })

20005

20006 self.__floating_ip_required = t

20007 if hasattr(self, '_set'):

20008 self._set()

20009

20010 def _unset_floating_ip_required(self):

20011 self.__floating_ip_required = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="floating-ip-required", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-various', defining_module='ns-various', yang_type='boolean', is_config=True)

20012

20013 id = __builtin__.property(_get_id, _set_id)

20014 address_assignment = __builtin__.property(_get_address_assignment, _set_address_assignment)

20015 virtual_link_desc = __builtin__.property(_get_virtual_link_desc, _set_virtual_link_desc)

20016 vnf = __builtin__.property(_get_vnf, _set_vnf)

20017 pnf = __builtin__.property(_get_pnf, _set_pnf)

20018 ns = __builtin__.property(_get_ns, _set_ns)

20019 floating_ip_required = __builtin__.property(_get_floating_ip_required, _set_floating_ip_required)

20020

20021 __choices__ = {'cpd-or-virtual-link': {'virtual-link-desc': ['virtual_link_desc'], 'vnf': ['vnf'], 'pnf': ['pnf'], 'ns': ['ns']}}

20022 _pyangbind_elements = OrderedDict([('id', id), ('address_assignment', address_assignment), ('virtual_link_desc', virtual_link_desc), ('vnf', vnf), ('pnf', pnf), ('ns', ns), ('floating_ip_required', floating_ip_required), ])

20023

20024

20025 class yc_connectivity_type_etsi_nfv_nsd__nsd_nsd_virtual_link_desc_connectivity_type(PybindBase):

20026 """

20027 This class was auto-generated by the PythonClass plugin for PYANG

20028 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/virtual-link-desc/connectivity-type. Each member element of

20029 the container is represented as a class variable - with a specific

20030 YANG type.

20031 """

20032 __slots__ = ('_path_helper', '_extmethods', '__layer_protocol','__flow_pattern',)

20033

20034 _yang_name = 'connectivity-type'

20035 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

20036

20037 _pybind_generated_by = 'container'

20038

20039 def __init__(self, *args, **kwargs):

20040

20041 self._path_helper = False

20042

20043 self._extmethods = False

20044 self.__layer_protocol = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},)), is_leaf=False, yang_name="layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

20045 self.__flow_pattern = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'line': {}, 'tree': {}, 'mesh': {}},), is_leaf=True, yang_name="flow-pattern", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='flow-pattern', is_config=True)

20046

20047 load = kwargs.pop("load", None)

20048 if args:

20049 if len(args) > 1:

20050 raise TypeError("cannot create a YANG container with >1 argument")

20051 all_attr = True

20052 for e in self._pyangbind_elements:

20053 if not hasattr(args[0], e):

20054 all_attr = False

20055 break

20056 if not all_attr:

20057 raise ValueError("Supplied object did not have the correct attributes")

20058 for e in self._pyangbind_elements:

20059 nobj = getattr(args[0], e)

20060 if nobj._changed() is False:

20061 continue

20062 setmethod = getattr(self, "_set_%s" % e)

20063 if load is None:

20064 setmethod(getattr(args[0], e))

20065 else:

20066 setmethod(getattr(args[0], e), load=load)

20067

20068 def _path(self):

20069 if hasattr(self, "_parent"):

20070 return self._parent._path()+[self._yang_name]

20071 else:

20072 return ['nsd', 'nsd', 'virtual-link-desc', 'connectivity-type']

20073

20074 def _get_layer_protocol(self):

20075 """

20076 Getter method for layer_protocol, mapped from YANG variable /nsd/nsd/virtual_link_desc/connectivity_type/layer_protocol (identityref)

20077

20078 YANG Description: Identifies the protocols that the VL uses (Ethernet,

20079 MPLS, ODU2, IPV4, IPV6, Pseudo-Wire). The top layer

20080 protocol of the VL protocol stack shall always be provided.

20081 The lower layer protocols may be included when there are

20082 specific requirements on these layers.

20083 """

20084 return self.__layer_protocol

20085

20086 def _set_layer_protocol(self, v, load=False):

20087 """

20088 Setter method for layer_protocol, mapped from YANG variable /nsd/nsd/virtual_link_desc/connectivity_type/layer_protocol (identityref)

20089 If this variable is read-only (config: false) in the

20090 source YANG file, then _set_layer_protocol is considered as a private

20091 method. Backends looking to populate this variable should

20092 do so via calling thisObj._set_layer_protocol() directly.

20093

20094 YANG Description: Identifies the protocols that the VL uses (Ethernet,

20095 MPLS, ODU2, IPV4, IPV6, Pseudo-Wire). The top layer

20096 protocol of the VL protocol stack shall always be provided.

20097 The lower layer protocols may be included when there are

20098 specific requirements on these layers.

20099 """

20100 if hasattr(v, "_utype"):

20101 v = v._utype(v)

20102 try:

20103 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},)), is_leaf=False, yang_name="layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

20104 except (TypeError, ValueError):

20105 raise ValueError({

20106 'error-string': """layer_protocol must be of a type compatible with identityref""",

20107 'defined-type': "etsi-nfv-nsd:identityref",

20108 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},)), is_leaf=False, yang_name="layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)""",

20109 })

20110

20111 self.__layer_protocol = t

20112 if hasattr(self, '_set'):

20113 self._set()

20114

20115 def _unset_layer_protocol(self):

20116 self.__layer_protocol = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},)), is_leaf=False, yang_name="layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

20117

20118

20119 def _get_flow_pattern(self):

20120 """

20121 Getter method for flow_pattern, mapped from YANG variable /nsd/nsd/virtual_link_desc/connectivity_type/flow_pattern (flow-pattern)

20122

20123 YANG Description: Identifies the flow pattern of the connectivity (Line,

20124 Tree, Mesh).

20125 """

20126 return self.__flow_pattern

20127

20128 def _set_flow_pattern(self, v, load=False):

20129 """

20130 Setter method for flow_pattern, mapped from YANG variable /nsd/nsd/virtual_link_desc/connectivity_type/flow_pattern (flow-pattern)

20131 If this variable is read-only (config: false) in the

20132 source YANG file, then _set_flow_pattern is considered as a private

20133 method. Backends looking to populate this variable should

20134 do so via calling thisObj._set_flow_pattern() directly.

20135

20136 YANG Description: Identifies the flow pattern of the connectivity (Line,

20137 Tree, Mesh).

20138 """

20139 if hasattr(v, "_utype"):

20140 v = v._utype(v)

20141 try:

20142 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'line': {}, 'tree': {}, 'mesh': {}},), is_leaf=True, yang_name="flow-pattern", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='flow-pattern', is_config=True)

20143 except (TypeError, ValueError):

20144 raise ValueError({

20145 'error-string': """flow_pattern must be of a type compatible with flow-pattern""",

20146 'defined-type': "etsi-nfv-nsd:flow-pattern",

20147 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'line': {}, 'tree': {}, 'mesh': {}},), is_leaf=True, yang_name="flow-pattern", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='flow-pattern', is_config=True)""",

20148 })

20149

20150 self.__flow_pattern = t

20151 if hasattr(self, '_set'):

20152 self._set()

20153

20154 def _unset_flow_pattern(self):

20155 self.__flow_pattern = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'line': {}, 'tree': {}, 'mesh': {}},), is_leaf=True, yang_name="flow-pattern", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='flow-pattern', is_config=True)

20156

20157 layer_protocol = __builtin__.property(_get_layer_protocol, _set_layer_protocol)

20158 flow_pattern = __builtin__.property(_get_flow_pattern, _set_flow_pattern)

20159

20160

20161 _pyangbind_elements = OrderedDict([('layer_protocol', layer_protocol), ('flow_pattern', flow_pattern), ])

20162

20163

20164 class yc_qos_etsi_nfv_nsd__nsd_nsd_virtual_link_desc_df_qos(PybindBase):

20165 """

20166 This class was auto-generated by the PythonClass plugin for PYANG

20167 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/virtual-link-desc/df/qos. Each member element of

20168 the container is represented as a class variable - with a specific

20169 YANG type.

20170

20171 YANG Description: The QoS information element specifies quality of

20172 service parameters applicable to a VL.

20173 """

20174 __slots__ = ('_path_helper', '_extmethods', '__latency','__packet_delay_variation','__packet_loss_ratio','__priority',)

20175

20176 _yang_name = 'qos'

20177 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

20178

20179 _pybind_generated_by = 'container'

20180

20181 def __init__(self, *args, **kwargs):

20182

20183 self._path_helper = False

20184

20185 self._extmethods = False

20186 self.__latency = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="latency", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

20187 self.__packet_delay_variation = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="packet-delay-variation", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

20188 self.__packet_loss_ratio = YANGDynClass(base=RestrictedClassType(base_type=Decimal, restriction_dict={'range': ['0..1.00']}), is_leaf=True, yang_name="packet-loss-ratio", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='decimal64', is_config=True)

20189 self.__priority = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="priority", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

20190

20191 load = kwargs.pop("load", None)

20192 if args:

20193 if len(args) > 1:

20194 raise TypeError("cannot create a YANG container with >1 argument")

20195 all_attr = True

20196 for e in self._pyangbind_elements:

20197 if not hasattr(args[0], e):

20198 all_attr = False

20199 break

20200 if not all_attr:

20201 raise ValueError("Supplied object did not have the correct attributes")

20202 for e in self._pyangbind_elements:

20203 nobj = getattr(args[0], e)

20204 if nobj._changed() is False:

20205 continue

20206 setmethod = getattr(self, "_set_%s" % e)

20207 if load is None:

20208 setmethod(getattr(args[0], e))

20209 else:

20210 setmethod(getattr(args[0], e), load=load)

20211

20212 def _path(self):

20213 if hasattr(self, "_parent"):

20214 return self._parent._path()+[self._yang_name]

20215 else:

20216 return ['nsd', 'nsd', 'virtual-link-desc', 'df', 'qos']

20217

20218 def _get_latency(self):

20219 """

20220 Getter method for latency, mapped from YANG variable /nsd/nsd/virtual_link_desc/df/qos/latency (uint32)

20221

20222 YANG Description: Specifies the maximum latency in ms.

20223 """

20224 return self.__latency

20225

20226 def _set_latency(self, v, load=False):

20227 """

20228 Setter method for latency, mapped from YANG variable /nsd/nsd/virtual_link_desc/df/qos/latency (uint32)

20229 If this variable is read-only (config: false) in the

20230 source YANG file, then _set_latency is considered as a private

20231 method. Backends looking to populate this variable should

20232 do so via calling thisObj._set_latency() directly.

20233

20234 YANG Description: Specifies the maximum latency in ms.

20235 """

20236 if hasattr(v, "_utype"):

20237 v = v._utype(v)

20238 try:

20239 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="latency", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

20240 except (TypeError, ValueError):

20241 raise ValueError({

20242 'error-string': """latency must be of a type compatible with uint32""",

20243 'defined-type': "uint32",

20244 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="latency", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)""",

20245 })

20246

20247 self.__latency = t

20248 if hasattr(self, '_set'):

20249 self._set()

20250

20251 def _unset_latency(self):

20252 self.__latency = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="latency", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

20253

20254

20255 def _get_packet_delay_variation(self):

20256 """

20257 Getter method for packet_delay_variation, mapped from YANG variable /nsd/nsd/virtual_link_desc/df/qos/packet_delay_variation (uint32)

20258

20259 YANG Description: Specifies the maximum jitter in ms.

20260 """

20261 return self.__packet_delay_variation

20262

20263 def _set_packet_delay_variation(self, v, load=False):

20264 """

20265 Setter method for packet_delay_variation, mapped from YANG variable /nsd/nsd/virtual_link_desc/df/qos/packet_delay_variation (uint32)

20266 If this variable is read-only (config: false) in the

20267 source YANG file, then _set_packet_delay_variation is considered as a private

20268 method. Backends looking to populate this variable should

20269 do so via calling thisObj._set_packet_delay_variation() directly.

20270

20271 YANG Description: Specifies the maximum jitter in ms.

20272 """

20273 if hasattr(v, "_utype"):

20274 v = v._utype(v)

20275 try:

20276 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="packet-delay-variation", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

20277 except (TypeError, ValueError):

20278 raise ValueError({

20279 'error-string': """packet_delay_variation must be of a type compatible with uint32""",

20280 'defined-type': "uint32",

20281 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="packet-delay-variation", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)""",

20282 })

20283

20284 self.__packet_delay_variation = t

20285 if hasattr(self, '_set'):

20286 self._set()

20287

20288 def _unset_packet_delay_variation(self):

20289 self.__packet_delay_variation = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="packet-delay-variation", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

20290

20291

20292 def _get_packet_loss_ratio(self):

20293 """

20294 Getter method for packet_loss_ratio, mapped from YANG variable /nsd/nsd/virtual_link_desc/df/qos/packet_loss_ratio (decimal64)

20295

20296 YANG Description: Specifies the maximum packet loss ratio.

20297 """

20298 return self.__packet_loss_ratio

20299

20300 def _set_packet_loss_ratio(self, v, load=False):

20301 """

20302 Setter method for packet_loss_ratio, mapped from YANG variable /nsd/nsd/virtual_link_desc/df/qos/packet_loss_ratio (decimal64)

20303 If this variable is read-only (config: false) in the

20304 source YANG file, then _set_packet_loss_ratio is considered as a private

20305 method. Backends looking to populate this variable should

20306 do so via calling thisObj._set_packet_loss_ratio() directly.

20307

20308 YANG Description: Specifies the maximum packet loss ratio.

20309 """

20310 if hasattr(v, "_utype"):

20311 v = v._utype(v)

20312 try:

20313 t = YANGDynClass(v,base=RestrictedClassType(base_type=Decimal, restriction_dict={'range': ['0..1.00']}), is_leaf=True, yang_name="packet-loss-ratio", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='decimal64', is_config=True)

20314 except (TypeError, ValueError):

20315 raise ValueError({

20316 'error-string': """packet_loss_ratio must be of a type compatible with decimal64""",

20317 'defined-type': "decimal64",

20318 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=Decimal, restriction_dict={'range': ['0..1.00']}), is_leaf=True, yang_name="packet-loss-ratio", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='decimal64', is_config=True)""",

20319 })

20320

20321 self.__packet_loss_ratio = t

20322 if hasattr(self, '_set'):

20323 self._set()

20324

20325 def _unset_packet_loss_ratio(self):

20326 self.__packet_loss_ratio = YANGDynClass(base=RestrictedClassType(base_type=Decimal, restriction_dict={'range': ['0..1.00']}), is_leaf=True, yang_name="packet-loss-ratio", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='decimal64', is_config=True)

20327

20328

20329 def _get_priority(self):

20330 """

20331 Getter method for priority, mapped from YANG variable /nsd/nsd/virtual_link_desc/df/qos/priority (uint32)

20332

20333 YANG Description: Specifies the priority level in case of

20334 congestion on the underlying physical links.

20335 """

20336 return self.__priority

20337

20338 def _set_priority(self, v, load=False):

20339 """

20340 Setter method for priority, mapped from YANG variable /nsd/nsd/virtual_link_desc/df/qos/priority (uint32)

20341 If this variable is read-only (config: false) in the

20342 source YANG file, then _set_priority is considered as a private

20343 method. Backends looking to populate this variable should

20344 do so via calling thisObj._set_priority() directly.

20345

20346 YANG Description: Specifies the priority level in case of

20347 congestion on the underlying physical links.

20348 """

20349 if hasattr(v, "_utype"):

20350 v = v._utype(v)

20351 try:

20352 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="priority", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

20353 except (TypeError, ValueError):

20354 raise ValueError({

20355 'error-string': """priority must be of a type compatible with uint32""",

20356 'defined-type': "uint32",

20357 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="priority", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)""",

20358 })

20359

20360 self.__priority = t

20361 if hasattr(self, '_set'):

20362 self._set()

20363

20364 def _unset_priority(self):

20365 self.__priority = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="priority", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

20366

20367 latency = __builtin__.property(_get_latency, _set_latency)

20368 packet_delay_variation = __builtin__.property(_get_packet_delay_variation, _set_packet_delay_variation)

20369 packet_loss_ratio = __builtin__.property(_get_packet_loss_ratio, _set_packet_loss_ratio)

20370 priority = __builtin__.property(_get_priority, _set_priority)

20371

20372

20373 _pyangbind_elements = OrderedDict([('latency', latency), ('packet_delay_variation', packet_delay_variation), ('packet_loss_ratio', packet_loss_ratio), ('priority', priority), ])

20374

20375

20376 class yc_df_etsi_nfv_nsd__nsd_nsd_virtual_link_desc_df(PybindBase):

20377 """

20378 This class was auto-generated by the PythonClass plugin for PYANG

20379 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/virtual-link-desc/df. Each member element of

20380 the container is represented as a class variable - with a specific

20381 YANG type.

20382

20383 YANG Description: The VirtualLinkDf information element specifies

20384 properties for instantiating a VL according to a

20385 specific flavour.

20386 """

20387 __slots__ = ('_path_helper', '_extmethods', '__id','__qos','__service_availability_level',)

20388

20389 _yang_name = 'df'

20390 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

20391

20392 _pybind_generated_by = 'container'

20393

20394 def __init__(self, *args, **kwargs):

20395

20396 self._path_helper = False

20397

20398 self._extmethods = False

20399 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

20400 self.__qos = YANGDynClass(base=yc_qos_etsi_nfv_nsd__nsd_nsd_virtual_link_desc_df_qos, is_container='container', yang_name="qos", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

20401 self.__service_availability_level = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'level-1': {}, 'level-2': {}, 'level-3': {}},), is_leaf=True, yang_name="service-availability-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

20402

20403 load = kwargs.pop("load", None)

20404 if args:

20405 if len(args) > 1:

20406 raise TypeError("cannot create a YANG container with >1 argument")

20407 all_attr = True

20408 for e in self._pyangbind_elements:

20409 if not hasattr(args[0], e):

20410 all_attr = False

20411 break

20412 if not all_attr:

20413 raise ValueError("Supplied object did not have the correct attributes")

20414 for e in self._pyangbind_elements:

20415 nobj = getattr(args[0], e)

20416 if nobj._changed() is False:

20417 continue

20418 setmethod = getattr(self, "_set_%s" % e)

20419 if load is None:

20420 setmethod(getattr(args[0], e))

20421 else:

20422 setmethod(getattr(args[0], e), load=load)

20423

20424 def _path(self):

20425 if hasattr(self, "_parent"):

20426 return self._parent._path()+[self._yang_name]

20427 else:

20428 return ['nsd', 'nsd', 'virtual-link-desc', 'df']

20429

20430 def _get_id(self):

20431 """

20432 Getter method for id, mapped from YANG variable /nsd/nsd/virtual_link_desc/df/id (string)

20433

20434 YANG Description: Identifies this VirtualLinkDf information element

20435 within a VLD.

20436 """

20437 return self.__id

20438

20439 def _set_id(self, v, load=False):

20440 """

20441 Setter method for id, mapped from YANG variable /nsd/nsd/virtual_link_desc/df/id (string)

20442 If this variable is read-only (config: false) in the

20443 source YANG file, then _set_id is considered as a private

20444 method. Backends looking to populate this variable should

20445 do so via calling thisObj._set_id() directly.

20446

20447 YANG Description: Identifies this VirtualLinkDf information element

20448 within a VLD.

20449 """

20450 parent = getattr(self, "_parent", None)

20451 if parent is not None and load is False:

20452 raise AttributeError("Cannot set keys directly when" +

20453 " within an instantiated list")

20454

20455 if hasattr(v, "_utype"):

20456 v = v._utype(v)

20457 try:

20458 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

20459 except (TypeError, ValueError):

20460 raise ValueError({

20461 'error-string': """id must be of a type compatible with string""",

20462 'defined-type': "string",

20463 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

20464 })

20465

20466 self.__id = t

20467 if hasattr(self, '_set'):

20468 self._set()

20469

20470 def _unset_id(self):

20471 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

20472

20473

20474 def _get_qos(self):

20475 """

20476 Getter method for qos, mapped from YANG variable /nsd/nsd/virtual_link_desc/df/qos (container)

20477

20478 YANG Description: The QoS information element specifies quality of

20479 service parameters applicable to a VL.

20480 """

20481 return self.__qos

20482

20483 def _set_qos(self, v, load=False):

20484 """

20485 Setter method for qos, mapped from YANG variable /nsd/nsd/virtual_link_desc/df/qos (container)

20486 If this variable is read-only (config: false) in the

20487 source YANG file, then _set_qos is considered as a private

20488 method. Backends looking to populate this variable should

20489 do so via calling thisObj._set_qos() directly.

20490

20491 YANG Description: The QoS information element specifies quality of

20492 service parameters applicable to a VL.

20493 """

20494 if hasattr(v, "_utype"):

20495 v = v._utype(v)

20496 try:

20497 t = YANGDynClass(v,base=yc_qos_etsi_nfv_nsd__nsd_nsd_virtual_link_desc_df_qos, is_container='container', yang_name="qos", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

20498 except (TypeError, ValueError):

20499 raise ValueError({

20500 'error-string': """qos must be of a type compatible with container""",

20501 'defined-type': "container",

20502 'generated-type': """YANGDynClass(base=yc_qos_etsi_nfv_nsd__nsd_nsd_virtual_link_desc_df_qos, is_container='container', yang_name="qos", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

20503 })

20504

20505 self.__qos = t

20506 if hasattr(self, '_set'):

20507 self._set()

20508

20509 def _unset_qos(self):

20510 self.__qos = YANGDynClass(base=yc_qos_etsi_nfv_nsd__nsd_nsd_virtual_link_desc_df_qos, is_container='container', yang_name="qos", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

20511

20512

20513 def _get_service_availability_level(self):

20514 """

20515 Getter method for service_availability_level, mapped from YANG variable /nsd/nsd/virtual_link_desc/df/service_availability_level (enumeration)

20516

20517 YANG Description: Specifies one of the three levels defined in ETSI

20518 ETSI GS NFV-REL 001 [i.5]

20519 * Level 1.

20520 * Level 2.

20521 * Level 3.

20522 """

20523 return self.__service_availability_level

20524

20525 def _set_service_availability_level(self, v, load=False):

20526 """

20527 Setter method for service_availability_level, mapped from YANG variable /nsd/nsd/virtual_link_desc/df/service_availability_level (enumeration)

20528 If this variable is read-only (config: false) in the

20529 source YANG file, then _set_service_availability_level is considered as a private

20530 method. Backends looking to populate this variable should

20531 do so via calling thisObj._set_service_availability_level() directly.

20532

20533 YANG Description: Specifies one of the three levels defined in ETSI

20534 ETSI GS NFV-REL 001 [i.5]

20535 * Level 1.

20536 * Level 2.

20537 * Level 3.

20538 """

20539 if hasattr(v, "_utype"):

20540 v = v._utype(v)

20541 try:

20542 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'level-1': {}, 'level-2': {}, 'level-3': {}},), is_leaf=True, yang_name="service-availability-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

20543 except (TypeError, ValueError):

20544 raise ValueError({

20545 'error-string': """service_availability_level must be of a type compatible with enumeration""",

20546 'defined-type': "etsi-nfv-nsd:enumeration",

20547 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'level-1': {}, 'level-2': {}, 'level-3': {}},), is_leaf=True, yang_name="service-availability-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)""",

20548 })

20549

20550 self.__service_availability_level = t

20551 if hasattr(self, '_set'):

20552 self._set()

20553

20554 def _unset_service_availability_level(self):

20555 self.__service_availability_level = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'level-1': {}, 'level-2': {}, 'level-3': {}},), is_leaf=True, yang_name="service-availability-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

20556

20557 id = __builtin__.property(_get_id, _set_id)

20558 qos = __builtin__.property(_get_qos, _set_qos)

20559 service_availability_level = __builtin__.property(_get_service_availability_level, _set_service_availability_level)

20560

20561

20562 _pyangbind_elements = OrderedDict([('id', id), ('qos', qos), ('service_availability_level', service_availability_level), ])

20563

20564

20565 class yc_provider_network_etsi_nfv_nsd__nsd_nsd_virtual_link_desc_provider_network(PybindBase):

20566 """

20567 This class was auto-generated by the PythonClass plugin for PYANG

20568 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/virtual-link-desc/provider-network. Each member element of

20569 the container is represented as a class variable - with a specific

20570 YANG type.

20571

20572 YANG Description: Container for the provider network.

20573 """

20574 __slots__ = ('_path_helper', '_extmethods', '__physical_network','__segmentation_id',)

20575

20576 _yang_name = 'provider-network'

20577 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

20578

20579 _pybind_generated_by = 'container'

20580

20581 def __init__(self, *args, **kwargs):

20582

20583 self._path_helper = False

20584

20585 self._extmethods = False

20586 self.__physical_network = YANGDynClass(base=str, is_leaf=True, yang_name="physical-network", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='string', is_config=True)

20587 self.__segmentation_id = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="segmentation_id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='uint32', is_config=True)

20588

20589 load = kwargs.pop("load", None)

20590 if args:

20591 if len(args) > 1:

20592 raise TypeError("cannot create a YANG container with >1 argument")

20593 all_attr = True

20594 for e in self._pyangbind_elements:

20595 if not hasattr(args[0], e):

20596 all_attr = False

20597 break

20598 if not all_attr:

20599 raise ValueError("Supplied object did not have the correct attributes")

20600 for e in self._pyangbind_elements:

20601 nobj = getattr(args[0], e)

20602 if nobj._changed() is False:

20603 continue

20604 setmethod = getattr(self, "_set_%s" % e)

20605 if load is None:

20606 setmethod(getattr(args[0], e))

20607 else:

20608 setmethod(getattr(args[0], e), load=load)

20609

20610 def _path(self):

20611 if hasattr(self, "_parent"):

20612 return self._parent._path()+[self._yang_name]

20613 else:

20614 return ['nsd', 'nsd', 'virtual-link-desc', 'provider-network']

20615

20616 def _get_physical_network(self):

20617 """

20618 Getter method for physical_network, mapped from YANG variable /nsd/nsd/virtual_link_desc/provider_network/physical_network (string)

20619

20620 YANG Description: Name of the physical network on which the provider

20621 network is built.

20622 """

20623 return self.__physical_network

20624

20625 def _set_physical_network(self, v, load=False):

20626 """

20627 Setter method for physical_network, mapped from YANG variable /nsd/nsd/virtual_link_desc/provider_network/physical_network (string)

20628 If this variable is read-only (config: false) in the

20629 source YANG file, then _set_physical_network is considered as a private

20630 method. Backends looking to populate this variable should

20631 do so via calling thisObj._set_physical_network() directly.

20632

20633 YANG Description: Name of the physical network on which the provider

20634 network is built.

20635 """

20636 if hasattr(v, "_utype"):

20637 v = v._utype(v)

20638 try:

20639 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="physical-network", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='string', is_config=True)

20640 except (TypeError, ValueError):

20641 raise ValueError({

20642 'error-string': """physical_network must be of a type compatible with string""",

20643 'defined-type': "string",

20644 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="physical-network", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='string', is_config=True)""",

20645 })

20646

20647 self.__physical_network = t

20648 if hasattr(self, '_set'):

20649 self._set()

20650

20651 def _unset_physical_network(self):

20652 self.__physical_network = YANGDynClass(base=str, is_leaf=True, yang_name="physical-network", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='string', is_config=True)

20653

20654

20655 def _get_segmentation_id(self):

20656 """

20657 Getter method for segmentation_id, mapped from YANG variable /nsd/nsd/virtual_link_desc/provider_network/segmentation_id (uint32)

20658

20659 YANG Description: ID of segregated virtual networks

20660 """

20661 return self.__segmentation_id

20662

20663 def _set_segmentation_id(self, v, load=False):

20664 """

20665 Setter method for segmentation_id, mapped from YANG variable /nsd/nsd/virtual_link_desc/provider_network/segmentation_id (uint32)

20666 If this variable is read-only (config: false) in the

20667 source YANG file, then _set_segmentation_id is considered as a private

20668 method. Backends looking to populate this variable should

20669 do so via calling thisObj._set_segmentation_id() directly.

20670

20671 YANG Description: ID of segregated virtual networks

20672 """

20673 if hasattr(v, "_utype"):

20674 v = v._utype(v)

20675 try:

20676 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="segmentation_id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='uint32', is_config=True)

20677 except (TypeError, ValueError):

20678 raise ValueError({

20679 'error-string': """segmentation_id must be of a type compatible with uint32""",

20680 'defined-type': "uint32",

20681 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="segmentation_id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='uint32', is_config=True)""",

20682 })

20683

20684 self.__segmentation_id = t

20685 if hasattr(self, '_set'):

20686 self._set()

20687

20688 def _unset_segmentation_id(self):

20689 self.__segmentation_id = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="segmentation_id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='uint32', is_config=True)

20690

20691 physical_network = __builtin__.property(_get_physical_network, _set_physical_network)

20692 segmentation_id = __builtin__.property(_get_segmentation_id, _set_segmentation_id)

20693

20694

20695 _pyangbind_elements = OrderedDict([('physical_network', physical_network), ('segmentation_id', segmentation_id), ])

20696

20697

20698 class yc_virtual_link_desc_etsi_nfv_nsd__nsd_nsd_virtual_link_desc(PybindBase):

20699 """

20700 This class was auto-generated by the PythonClass plugin for PYANG

20701 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/virtual-link-desc. Each member element of

20702 the container is represented as a class variable - with a specific

20703 YANG type.

20704

20705 YANG Description: Provides the constituent VLDs.

20706 """

20707 __slots__ = ('_path_helper', '_extmethods', '__id','__connectivity_type','__df','__test_access','__description','__signature','__algorithm','__certificate','__provider_network','__mgmt_network','__vim_network_name',)

20708

20709 _yang_name = 'virtual-link-desc'

20710 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

20711

20712 _pybind_generated_by = 'container'

20713

20714 def __init__(self, *args, **kwargs):

20715

20716 self._path_helper = False

20717

20718 self._extmethods = False

20719 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

20720 self.__connectivity_type = YANGDynClass(base=yc_connectivity_type_etsi_nfv_nsd__nsd_nsd_virtual_link_desc_connectivity_type, is_container='container', yang_name="connectivity-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

20721 self.__df = YANGDynClass(base=YANGListType("id",yc_df_etsi_nfv_nsd__nsd_nsd_virtual_link_desc_df, yang_name="df", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="df", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

20722 self.__test_access = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'none': {}, 'passive-monitoring': {}, 'active': {}},), is_leaf=True, yang_name="test-access", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

20723 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

20724 self.__signature = YANGDynClass(base=str, is_leaf=True, yang_name="signature", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

20725 self.__algorithm = YANGDynClass(base=str, is_leaf=True, yang_name="algorithm", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

20726 self.__certificate = YANGDynClass(base=str, is_leaf=True, yang_name="certificate", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

20727 self.__provider_network = YANGDynClass(base=yc_provider_network_etsi_nfv_nsd__nsd_nsd_virtual_link_desc_provider_network, is_container='container', yang_name="provider-network", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='container', is_config=True)

20728 self.__mgmt_network = YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="mgmt-network", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='boolean', is_config=True)

20729 self.__vim_network_name = YANGDynClass(base=str, is_leaf=True, yang_name="vim-network-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='string', is_config=True)

20730

20731 load = kwargs.pop("load", None)

20732 if args:

20733 if len(args) > 1:

20734 raise TypeError("cannot create a YANG container with >1 argument")

20735 all_attr = True

20736 for e in self._pyangbind_elements:

20737 if not hasattr(args[0], e):

20738 all_attr = False

20739 break

20740 if not all_attr:

20741 raise ValueError("Supplied object did not have the correct attributes")

20742 for e in self._pyangbind_elements:

20743 nobj = getattr(args[0], e)

20744 if nobj._changed() is False:

20745 continue

20746 setmethod = getattr(self, "_set_%s" % e)

20747 if load is None:

20748 setmethod(getattr(args[0], e))

20749 else:

20750 setmethod(getattr(args[0], e), load=load)

20751

20752 def _path(self):

20753 if hasattr(self, "_parent"):

20754 return self._parent._path()+[self._yang_name]

20755 else:

20756 return ['nsd', 'nsd', 'virtual-link-desc']

20757

20758 def _get_id(self):

20759 """

20760 Getter method for id, mapped from YANG variable /nsd/nsd/virtual_link_desc/id (string)

20761

20762 YANG Description: Identifier of the NsVirtualLinkDesc information element.

20763 It uniquely identifies a VLD.

20764 """

20765 return self.__id

20766

20767 def _set_id(self, v, load=False):

20768 """

20769 Setter method for id, mapped from YANG variable /nsd/nsd/virtual_link_desc/id (string)

20770 If this variable is read-only (config: false) in the

20771 source YANG file, then _set_id is considered as a private

20772 method. Backends looking to populate this variable should

20773 do so via calling thisObj._set_id() directly.

20774

20775 YANG Description: Identifier of the NsVirtualLinkDesc information element.

20776 It uniquely identifies a VLD.

20777 """

20778 parent = getattr(self, "_parent", None)

20779 if parent is not None and load is False:

20780 raise AttributeError("Cannot set keys directly when" +

20781 " within an instantiated list")

20782

20783 if hasattr(v, "_utype"):

20784 v = v._utype(v)

20785 try:

20786 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

20787 except (TypeError, ValueError):

20788 raise ValueError({

20789 'error-string': """id must be of a type compatible with string""",

20790 'defined-type': "string",

20791 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

20792 })

20793

20794 self.__id = t

20795 if hasattr(self, '_set'):

20796 self._set()

20797

20798 def _unset_id(self):

20799 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

20800

20801

20802 def _get_connectivity_type(self):

20803 """

20804 Getter method for connectivity_type, mapped from YANG variable /nsd/nsd/virtual_link_desc/connectivity_type (container)

20805 """

20806 return self.__connectivity_type

20807

20808 def _set_connectivity_type(self, v, load=False):

20809 """

20810 Setter method for connectivity_type, mapped from YANG variable /nsd/nsd/virtual_link_desc/connectivity_type (container)

20811 If this variable is read-only (config: false) in the

20812 source YANG file, then _set_connectivity_type is considered as a private

20813 method. Backends looking to populate this variable should

20814 do so via calling thisObj._set_connectivity_type() directly.

20815 """

20816 if hasattr(v, "_utype"):

20817 v = v._utype(v)

20818 try:

20819 t = YANGDynClass(v,base=yc_connectivity_type_etsi_nfv_nsd__nsd_nsd_virtual_link_desc_connectivity_type, is_container='container', yang_name="connectivity-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

20820 except (TypeError, ValueError):

20821 raise ValueError({

20822 'error-string': """connectivity_type must be of a type compatible with container""",

20823 'defined-type': "container",

20824 'generated-type': """YANGDynClass(base=yc_connectivity_type_etsi_nfv_nsd__nsd_nsd_virtual_link_desc_connectivity_type, is_container='container', yang_name="connectivity-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

20825 })

20826

20827 self.__connectivity_type = t

20828 if hasattr(self, '_set'):

20829 self._set()

20830

20831 def _unset_connectivity_type(self):

20832 self.__connectivity_type = YANGDynClass(base=yc_connectivity_type_etsi_nfv_nsd__nsd_nsd_virtual_link_desc_connectivity_type, is_container='container', yang_name="connectivity-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

20833

20834

20835 def _get_df(self):

20836 """

20837 Getter method for df, mapped from YANG variable /nsd/nsd/virtual_link_desc/df (list)

20838

20839 YANG Description: The VirtualLinkDf information element specifies

20840 properties for instantiating a VL according to a

20841 specific flavour.

20842 """

20843 return self.__df

20844

20845 def _set_df(self, v, load=False):

20846 """

20847 Setter method for df, mapped from YANG variable /nsd/nsd/virtual_link_desc/df (list)

20848 If this variable is read-only (config: false) in the

20849 source YANG file, then _set_df is considered as a private

20850 method. Backends looking to populate this variable should

20851 do so via calling thisObj._set_df() directly.

20852

20853 YANG Description: The VirtualLinkDf information element specifies

20854 properties for instantiating a VL according to a

20855 specific flavour.

20856 """

20857 if hasattr(v, "_utype"):

20858 v = v._utype(v)

20859 try:

20860 t = YANGDynClass(v,base=YANGListType("id",yc_df_etsi_nfv_nsd__nsd_nsd_virtual_link_desc_df, yang_name="df", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="df", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

20861 except (TypeError, ValueError):

20862 raise ValueError({

20863 'error-string': """df must be of a type compatible with list""",

20864 'defined-type': "list",

20865 'generated-type': """YANGDynClass(base=YANGListType("id",yc_df_etsi_nfv_nsd__nsd_nsd_virtual_link_desc_df, yang_name="df", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="df", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

20866 })

20867

20868 self.__df = t

20869 if hasattr(self, '_set'):

20870 self._set()

20871

20872 def _unset_df(self):

20873 self.__df = YANGDynClass(base=YANGListType("id",yc_df_etsi_nfv_nsd__nsd_nsd_virtual_link_desc_df, yang_name="df", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="df", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

20874

20875

20876 def _get_test_access(self):

20877 """

20878 Getter method for test_access, mapped from YANG variable /nsd/nsd/virtual_link_desc/test_access (enumeration)

20879

20880 YANG Description: Specifies test access facilities expected on the VL.

20881 """

20882 return self.__test_access

20883

20884 def _set_test_access(self, v, load=False):

20885 """

20886 Setter method for test_access, mapped from YANG variable /nsd/nsd/virtual_link_desc/test_access (enumeration)

20887 If this variable is read-only (config: false) in the

20888 source YANG file, then _set_test_access is considered as a private

20889 method. Backends looking to populate this variable should

20890 do so via calling thisObj._set_test_access() directly.

20891

20892 YANG Description: Specifies test access facilities expected on the VL.

20893 """

20894 if hasattr(v, "_utype"):

20895 v = v._utype(v)

20896 try:

20897 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'none': {}, 'passive-monitoring': {}, 'active': {}},), is_leaf=True, yang_name="test-access", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

20898 except (TypeError, ValueError):

20899 raise ValueError({

20900 'error-string': """test_access must be of a type compatible with enumeration""",

20901 'defined-type': "etsi-nfv-nsd:enumeration",

20902 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'none': {}, 'passive-monitoring': {}, 'active': {}},), is_leaf=True, yang_name="test-access", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)""",

20903 })

20904

20905 self.__test_access = t

20906 if hasattr(self, '_set'):

20907 self._set()

20908

20909 def _unset_test_access(self):

20910 self.__test_access = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'none': {}, 'passive-monitoring': {}, 'active': {}},), is_leaf=True, yang_name="test-access", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

20911

20912

20913 def _get_description(self):

20914 """

20915 Getter method for description, mapped from YANG variable /nsd/nsd/virtual_link_desc/description (string)

20916

20917 YANG Description: Provides human-readable information on the purpose of

20918 the virtual link (e.g. VL for control plane traffic).

20919 """

20920 return self.__description

20921

20922 def _set_description(self, v, load=False):

20923 """

20924 Setter method for description, mapped from YANG variable /nsd/nsd/virtual_link_desc/description (string)

20925 If this variable is read-only (config: false) in the

20926 source YANG file, then _set_description is considered as a private

20927 method. Backends looking to populate this variable should

20928 do so via calling thisObj._set_description() directly.

20929

20930 YANG Description: Provides human-readable information on the purpose of

20931 the virtual link (e.g. VL for control plane traffic).

20932 """

20933 if hasattr(v, "_utype"):

20934 v = v._utype(v)

20935 try:

20936 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

20937 except (TypeError, ValueError):

20938 raise ValueError({

20939 'error-string': """description must be of a type compatible with string""",

20940 'defined-type': "string",

20941 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

20942 })

20943

20944 self.__description = t

20945 if hasattr(self, '_set'):

20946 self._set()

20947

20948 def _unset_description(self):

20949 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

20950

20951

20952 def _get_signature(self):

20953 """

20954 Getter method for signature, mapped from YANG variable /nsd/nsd/virtual_link_desc/signature (string)

20955

20956 YANG Description: Provides the signature of the signed part of the

20957 descriptor.

20958 """

20959 return self.__signature

20960

20961 def _set_signature(self, v, load=False):

20962 """

20963 Setter method for signature, mapped from YANG variable /nsd/nsd/virtual_link_desc/signature (string)

20964 If this variable is read-only (config: false) in the

20965 source YANG file, then _set_signature is considered as a private

20966 method. Backends looking to populate this variable should

20967 do so via calling thisObj._set_signature() directly.

20968

20969 YANG Description: Provides the signature of the signed part of the

20970 descriptor.

20971 """

20972 if hasattr(v, "_utype"):

20973 v = v._utype(v)

20974 try:

20975 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="signature", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

20976 except (TypeError, ValueError):

20977 raise ValueError({

20978 'error-string': """signature must be of a type compatible with string""",

20979 'defined-type': "string",

20980 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="signature", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

20981 })

20982

20983 self.__signature = t

20984 if hasattr(self, '_set'):

20985 self._set()

20986

20987 def _unset_signature(self):

20988 self.__signature = YANGDynClass(base=str, is_leaf=True, yang_name="signature", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

20989

20990

20991 def _get_algorithm(self):

20992 """

20993 Getter method for algorithm, mapped from YANG variable /nsd/nsd/virtual_link_desc/algorithm (string)

20994

20995 YANG Description: Identifies the algorithm used to compute the signature.

20996 """

20997 return self.__algorithm

20998

20999 def _set_algorithm(self, v, load=False):

21000 """

21001 Setter method for algorithm, mapped from YANG variable /nsd/nsd/virtual_link_desc/algorithm (string)

21002 If this variable is read-only (config: false) in the

21003 source YANG file, then _set_algorithm is considered as a private

21004 method. Backends looking to populate this variable should

21005 do so via calling thisObj._set_algorithm() directly.

21006

21007 YANG Description: Identifies the algorithm used to compute the signature.

21008 """

21009 if hasattr(v, "_utype"):

21010 v = v._utype(v)

21011 try:

21012 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="algorithm", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

21013 except (TypeError, ValueError):

21014 raise ValueError({

21015 'error-string': """algorithm must be of a type compatible with string""",

21016 'defined-type': "string",

21017 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="algorithm", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

21018 })

21019

21020 self.__algorithm = t

21021 if hasattr(self, '_set'):

21022 self._set()

21023

21024 def _unset_algorithm(self):

21025 self.__algorithm = YANGDynClass(base=str, is_leaf=True, yang_name="algorithm", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

21026

21027

21028 def _get_certificate(self):

21029 """

21030 Getter method for certificate, mapped from YANG variable /nsd/nsd/virtual_link_desc/certificate (string)

21031

21032 YANG Description: Provides a certificate or a reference to a certificate to

21033 validate the signature.

21034 """

21035 return self.__certificate

21036

21037 def _set_certificate(self, v, load=False):

21038 """

21039 Setter method for certificate, mapped from YANG variable /nsd/nsd/virtual_link_desc/certificate (string)

21040 If this variable is read-only (config: false) in the

21041 source YANG file, then _set_certificate is considered as a private

21042 method. Backends looking to populate this variable should

21043 do so via calling thisObj._set_certificate() directly.

21044

21045 YANG Description: Provides a certificate or a reference to a certificate to

21046 validate the signature.

21047 """

21048 if hasattr(v, "_utype"):

21049 v = v._utype(v)

21050 try:

21051 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="certificate", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

21052 except (TypeError, ValueError):

21053 raise ValueError({

21054 'error-string': """certificate must be of a type compatible with string""",

21055 'defined-type': "string",

21056 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="certificate", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

21057 })

21058

21059 self.__certificate = t

21060 if hasattr(self, '_set'):

21061 self._set()

21062

21063 def _unset_certificate(self):

21064 self.__certificate = YANGDynClass(base=str, is_leaf=True, yang_name="certificate", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

21065

21066

21067 def _get_provider_network(self):

21068 """

21069 Getter method for provider_network, mapped from YANG variable /nsd/nsd/virtual_link_desc/provider_network (container)

21070

21071 YANG Description: Container for the provider network.

21072 """

21073 return self.__provider_network

21074

21075 def _set_provider_network(self, v, load=False):

21076 """

21077 Setter method for provider_network, mapped from YANG variable /nsd/nsd/virtual_link_desc/provider_network (container)

21078 If this variable is read-only (config: false) in the

21079 source YANG file, then _set_provider_network is considered as a private

21080 method. Backends looking to populate this variable should

21081 do so via calling thisObj._set_provider_network() directly.

21082

21083 YANG Description: Container for the provider network.

21084 """

21085 if hasattr(v, "_utype"):

21086 v = v._utype(v)

21087 try:

21088 t = YANGDynClass(v,base=yc_provider_network_etsi_nfv_nsd__nsd_nsd_virtual_link_desc_provider_network, is_container='container', yang_name="provider-network", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='container', is_config=True)

21089 except (TypeError, ValueError):

21090 raise ValueError({

21091 'error-string': """provider_network must be of a type compatible with container""",

21092 'defined-type': "container",

21093 'generated-type': """YANGDynClass(base=yc_provider_network_etsi_nfv_nsd__nsd_nsd_virtual_link_desc_provider_network, is_container='container', yang_name="provider-network", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='container', is_config=True)""",

21094 })

21095

21096 self.__provider_network = t

21097 if hasattr(self, '_set'):

21098 self._set()

21099

21100 def _unset_provider_network(self):

21101 self.__provider_network = YANGDynClass(base=yc_provider_network_etsi_nfv_nsd__nsd_nsd_virtual_link_desc_provider_network, is_container='container', yang_name="provider-network", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='container', is_config=True)

21102

21103

21104 def _get_mgmt_network(self):

21105 """

21106 Getter method for mgmt_network, mapped from YANG variable /nsd/nsd/virtual_link_desc/mgmt_network (boolean)

21107

21108 YANG Description: Flag indicating whether this network is a VIM management network

21109 """

21110 return self.__mgmt_network

21111

21112 def _set_mgmt_network(self, v, load=False):

21113 """

21114 Setter method for mgmt_network, mapped from YANG variable /nsd/nsd/virtual_link_desc/mgmt_network (boolean)

21115 If this variable is read-only (config: false) in the

21116 source YANG file, then _set_mgmt_network is considered as a private

21117 method. Backends looking to populate this variable should

21118 do so via calling thisObj._set_mgmt_network() directly.

21119

21120 YANG Description: Flag indicating whether this network is a VIM management network

21121 """

21122 if hasattr(v, "_utype"):

21123 v = v._utype(v)

21124 try:

21125 t = YANGDynClass(v,base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="mgmt-network", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='boolean', is_config=True)

21126 except (TypeError, ValueError):

21127 raise ValueError({

21128 'error-string': """mgmt_network must be of a type compatible with boolean""",

21129 'defined-type': "boolean",

21130 'generated-type': """YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="mgmt-network", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='boolean', is_config=True)""",

21131 })

21132

21133 self.__mgmt_network = t

21134 if hasattr(self, '_set'):

21135 self._set()

21136

21137 def _unset_mgmt_network(self):

21138 self.__mgmt_network = YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="mgmt-network", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='boolean', is_config=True)

21139

21140

21141 def _get_vim_network_name(self):

21142 """

21143 Getter method for vim_network_name, mapped from YANG variable /nsd/nsd/virtual_link_desc/vim_network_name (string)

21144

21145 YANG Description: Name of network in VIM account. This is used to indicate

21146 pre-provisioned network name in cloud account.

21147 """

21148 return self.__vim_network_name

21149

21150 def _set_vim_network_name(self, v, load=False):

21151 """

21152 Setter method for vim_network_name, mapped from YANG variable /nsd/nsd/virtual_link_desc/vim_network_name (string)

21153 If this variable is read-only (config: false) in the

21154 source YANG file, then _set_vim_network_name is considered as a private

21155 method. Backends looking to populate this variable should

21156 do so via calling thisObj._set_vim_network_name() directly.

21157

21158 YANG Description: Name of network in VIM account. This is used to indicate

21159 pre-provisioned network name in cloud account.

21160 """

21161 if hasattr(v, "_utype"):

21162 v = v._utype(v)

21163 try:

21164 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="vim-network-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='string', is_config=True)

21165 except (TypeError, ValueError):

21166 raise ValueError({

21167 'error-string': """vim_network_name must be of a type compatible with string""",

21168 'defined-type': "string",

21169 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="vim-network-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='string', is_config=True)""",

21170 })

21171

21172 self.__vim_network_name = t

21173 if hasattr(self, '_set'):

21174 self._set()

21175

21176 def _unset_vim_network_name(self):

21177 self.__vim_network_name = YANGDynClass(base=str, is_leaf=True, yang_name="vim-network-name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='string', is_config=True)

21178

21179 id = __builtin__.property(_get_id, _set_id)

21180 connectivity_type = __builtin__.property(_get_connectivity_type, _set_connectivity_type)

21181 df = __builtin__.property(_get_df, _set_df)

21182 test_access = __builtin__.property(_get_test_access, _set_test_access)

21183 description = __builtin__.property(_get_description, _set_description)

21184 signature = __builtin__.property(_get_signature, _set_signature)

21185 algorithm = __builtin__.property(_get_algorithm, _set_algorithm)

21186 certificate = __builtin__.property(_get_certificate, _set_certificate)

21187 provider_network = __builtin__.property(_get_provider_network, _set_provider_network)

21188 mgmt_network = __builtin__.property(_get_mgmt_network, _set_mgmt_network)

21189 vim_network_name = __builtin__.property(_get_vim_network_name, _set_vim_network_name)

21190

21191

21192 _pyangbind_elements = OrderedDict([('id', id), ('connectivity_type', connectivity_type), ('df', df), ('test_access', test_access), ('description', description), ('signature', signature), ('algorithm', algorithm), ('certificate', certificate), ('provider_network', provider_network), ('mgmt_network', mgmt_network), ('vim_network_name', vim_network_name), ])

21193

21194

21195 class yc_vnf_profile_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_vnf_profile(PybindBase):

21196 """

21197 This class was auto-generated by the PythonClass plugin for PYANG

21198 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/vnffgd/cpd-pool/vnf-profile. Each member element of

21199 the container is represented as a class variable - with a specific

21200 YANG type.

21201 """

21202 __slots__ = ('_path_helper', '_extmethods', '__vnf_profile_id',)

21203

21204 _yang_name = 'vnf-profile'

21205 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

21206

21207 _pybind_generated_by = 'container'

21208

21209 def __init__(self, *args, **kwargs):

21210

21211 self._path_helper = False

21212

21213 self._extmethods = False

21214 self.__vnf_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="vnf-profile-id", parent=self, choice=('constituent-base-element-id', 'vnf-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21215

21216 load = kwargs.pop("load", None)

21217 if args:

21218 if len(args) > 1:

21219 raise TypeError("cannot create a YANG container with >1 argument")

21220 all_attr = True

21221 for e in self._pyangbind_elements:

21222 if not hasattr(args[0], e):

21223 all_attr = False

21224 break

21225 if not all_attr:

21226 raise ValueError("Supplied object did not have the correct attributes")

21227 for e in self._pyangbind_elements:

21228 nobj = getattr(args[0], e)

21229 if nobj._changed() is False:

21230 continue

21231 setmethod = getattr(self, "_set_%s" % e)

21232 if load is None:

21233 setmethod(getattr(args[0], e))

21234 else:

21235 setmethod(getattr(args[0], e), load=load)

21236

21237 def _path(self):

21238 if hasattr(self, "_parent"):

21239 return self._parent._path()+[self._yang_name]

21240 else:

21241 return ['nsd', 'nsd', 'vnffgd', 'cpd-pool', 'vnf-profile']

21242

21243 def _get_vnf_profile_id(self):

21244 """

21245 Getter method for vnf_profile_id, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/vnf_profile/vnf_profile_id (leafref)

21246 """

21247 return self.__vnf_profile_id

21248

21249 def _set_vnf_profile_id(self, v, load=False):

21250 """

21251 Setter method for vnf_profile_id, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/vnf_profile/vnf_profile_id (leafref)

21252 If this variable is read-only (config: false) in the

21253 source YANG file, then _set_vnf_profile_id is considered as a private

21254 method. Backends looking to populate this variable should

21255 do so via calling thisObj._set_vnf_profile_id() directly.

21256 """

21257 if hasattr(v, "_utype"):

21258 v = v._utype(v)

21259 try:

21260 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="vnf-profile-id", parent=self, choice=('constituent-base-element-id', 'vnf-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21261 except (TypeError, ValueError):

21262 raise ValueError({

21263 'error-string': """vnf_profile_id must be of a type compatible with leafref""",

21264 'defined-type': "leafref",

21265 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="vnf-profile-id", parent=self, choice=('constituent-base-element-id', 'vnf-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

21266 })

21267

21268 self.__vnf_profile_id = t

21269 if hasattr(self, '_set'):

21270 self._set()

21271

21272 def _unset_vnf_profile_id(self):

21273 self.__vnf_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="vnf-profile-id", parent=self, choice=('constituent-base-element-id', 'vnf-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21274

21275 vnf_profile_id = __builtin__.property(_get_vnf_profile_id, _set_vnf_profile_id)

21276

21277 __choices__ = {'constituent-base-element-id': {'vnf-profile': ['vnf_profile_id']}}

21278 _pyangbind_elements = OrderedDict([('vnf_profile_id', vnf_profile_id), ])

21279

21280

21281 class yc_pnf_profile_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_pnf_profile(PybindBase):

21282 """

21283 This class was auto-generated by the PythonClass plugin for PYANG

21284 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/vnffgd/cpd-pool/pnf-profile. Each member element of

21285 the container is represented as a class variable - with a specific

21286 YANG type.

21287 """

21288 __slots__ = ('_path_helper', '_extmethods', '__pnf_profile_id',)

21289

21290 _yang_name = 'pnf-profile'

21291 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

21292

21293 _pybind_generated_by = 'container'

21294

21295 def __init__(self, *args, **kwargs):

21296

21297 self._path_helper = False

21298

21299 self._extmethods = False

21300 self.__pnf_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="pnf-profile-id", parent=self, choice=('constituent-base-element-id', 'pnf-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21301

21302 load = kwargs.pop("load", None)

21303 if args:

21304 if len(args) > 1:

21305 raise TypeError("cannot create a YANG container with >1 argument")

21306 all_attr = True

21307 for e in self._pyangbind_elements:

21308 if not hasattr(args[0], e):

21309 all_attr = False

21310 break

21311 if not all_attr:

21312 raise ValueError("Supplied object did not have the correct attributes")

21313 for e in self._pyangbind_elements:

21314 nobj = getattr(args[0], e)

21315 if nobj._changed() is False:

21316 continue

21317 setmethod = getattr(self, "_set_%s" % e)

21318 if load is None:

21319 setmethod(getattr(args[0], e))

21320 else:

21321 setmethod(getattr(args[0], e), load=load)

21322

21323 def _path(self):

21324 if hasattr(self, "_parent"):

21325 return self._parent._path()+[self._yang_name]

21326 else:

21327 return ['nsd', 'nsd', 'vnffgd', 'cpd-pool', 'pnf-profile']

21328

21329 def _get_pnf_profile_id(self):

21330 """

21331 Getter method for pnf_profile_id, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/pnf_profile/pnf_profile_id (leafref)

21332 """

21333 return self.__pnf_profile_id

21334

21335 def _set_pnf_profile_id(self, v, load=False):

21336 """

21337 Setter method for pnf_profile_id, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/pnf_profile/pnf_profile_id (leafref)

21338 If this variable is read-only (config: false) in the

21339 source YANG file, then _set_pnf_profile_id is considered as a private

21340 method. Backends looking to populate this variable should

21341 do so via calling thisObj._set_pnf_profile_id() directly.

21342 """

21343 if hasattr(v, "_utype"):

21344 v = v._utype(v)

21345 try:

21346 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="pnf-profile-id", parent=self, choice=('constituent-base-element-id', 'pnf-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21347 except (TypeError, ValueError):

21348 raise ValueError({

21349 'error-string': """pnf_profile_id must be of a type compatible with leafref""",

21350 'defined-type': "leafref",

21351 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="pnf-profile-id", parent=self, choice=('constituent-base-element-id', 'pnf-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

21352 })

21353

21354 self.__pnf_profile_id = t

21355 if hasattr(self, '_set'):

21356 self._set()

21357

21358 def _unset_pnf_profile_id(self):

21359 self.__pnf_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="pnf-profile-id", parent=self, choice=('constituent-base-element-id', 'pnf-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21360

21361 pnf_profile_id = __builtin__.property(_get_pnf_profile_id, _set_pnf_profile_id)

21362

21363 __choices__ = {'constituent-base-element-id': {'pnf-profile': ['pnf_profile_id']}}

21364 _pyangbind_elements = OrderedDict([('pnf_profile_id', pnf_profile_id), ])

21365

21366

21367 class yc_ns_profile_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_ns_profile(PybindBase):

21368 """

21369 This class was auto-generated by the PythonClass plugin for PYANG

21370 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/vnffgd/cpd-pool/ns-profile. Each member element of

21371 the container is represented as a class variable - with a specific

21372 YANG type.

21373 """

21374 __slots__ = ('_path_helper', '_extmethods', '__ns_profile_id',)

21375

21376 _yang_name = 'ns-profile'

21377 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

21378

21379 _pybind_generated_by = 'container'

21380

21381 def __init__(self, *args, **kwargs):

21382

21383 self._path_helper = False

21384

21385 self._extmethods = False

21386 self.__ns_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="ns-profile-id", parent=self, choice=('constituent-base-element-id', 'ns-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21387

21388 load = kwargs.pop("load", None)

21389 if args:

21390 if len(args) > 1:

21391 raise TypeError("cannot create a YANG container with >1 argument")

21392 all_attr = True

21393 for e in self._pyangbind_elements:

21394 if not hasattr(args[0], e):

21395 all_attr = False

21396 break

21397 if not all_attr:

21398 raise ValueError("Supplied object did not have the correct attributes")

21399 for e in self._pyangbind_elements:

21400 nobj = getattr(args[0], e)

21401 if nobj._changed() is False:

21402 continue

21403 setmethod = getattr(self, "_set_%s" % e)

21404 if load is None:

21405 setmethod(getattr(args[0], e))

21406 else:

21407 setmethod(getattr(args[0], e), load=load)

21408

21409 def _path(self):

21410 if hasattr(self, "_parent"):

21411 return self._parent._path()+[self._yang_name]

21412 else:

21413 return ['nsd', 'nsd', 'vnffgd', 'cpd-pool', 'ns-profile']

21414

21415 def _get_ns_profile_id(self):

21416 """

21417 Getter method for ns_profile_id, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/ns_profile/ns_profile_id (leafref)

21418 """

21419 return self.__ns_profile_id

21420

21421 def _set_ns_profile_id(self, v, load=False):

21422 """

21423 Setter method for ns_profile_id, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/ns_profile/ns_profile_id (leafref)

21424 If this variable is read-only (config: false) in the

21425 source YANG file, then _set_ns_profile_id is considered as a private

21426 method. Backends looking to populate this variable should

21427 do so via calling thisObj._set_ns_profile_id() directly.

21428 """

21429 if hasattr(v, "_utype"):

21430 v = v._utype(v)

21431 try:

21432 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="ns-profile-id", parent=self, choice=('constituent-base-element-id', 'ns-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21433 except (TypeError, ValueError):

21434 raise ValueError({

21435 'error-string': """ns_profile_id must be of a type compatible with leafref""",

21436 'defined-type': "leafref",

21437 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="ns-profile-id", parent=self, choice=('constituent-base-element-id', 'ns-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

21438 })

21439

21440 self.__ns_profile_id = t

21441 if hasattr(self, '_set'):

21442 self._set()

21443

21444 def _unset_ns_profile_id(self):

21445 self.__ns_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="ns-profile-id", parent=self, choice=('constituent-base-element-id', 'ns-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21446

21447 ns_profile_id = __builtin__.property(_get_ns_profile_id, _set_ns_profile_id)

21448

21449 __choices__ = {'constituent-base-element-id': {'ns-profile': ['ns_profile_id']}}

21450 _pyangbind_elements = OrderedDict([('ns_profile_id', ns_profile_id), ])

21451

21452

21453 class yc_vnf_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_vnf(PybindBase):

21454 """

21455 This class was auto-generated by the PythonClass plugin for PYANG

21456 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/vnffgd/cpd-pool/vnf. Each member element of

21457 the container is represented as a class variable - with a specific

21458 YANG type.

21459 """

21460 __slots__ = ('_path_helper', '_extmethods', '__vnfd_id','__cpd_id',)

21461

21462 _yang_name = 'vnf'

21463 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

21464

21465 _pybind_generated_by = 'container'

21466

21467 def __init__(self, *args, **kwargs):

21468

21469 self._path_helper = False

21470

21471 self._extmethods = False

21472 self.__vnfd_id = YANGDynClass(base=str, is_leaf=True, yang_name="vnfd-id", parent=self, choice=('constituent-cpd-id', 'vnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21473 self.__cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="cpd-id", parent=self, choice=('constituent-cpd-id', 'vnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21474

21475 load = kwargs.pop("load", None)

21476 if args:

21477 if len(args) > 1:

21478 raise TypeError("cannot create a YANG container with >1 argument")

21479 all_attr = True

21480 for e in self._pyangbind_elements:

21481 if not hasattr(args[0], e):

21482 all_attr = False

21483 break

21484 if not all_attr:

21485 raise ValueError("Supplied object did not have the correct attributes")

21486 for e in self._pyangbind_elements:

21487 nobj = getattr(args[0], e)

21488 if nobj._changed() is False:

21489 continue

21490 setmethod = getattr(self, "_set_%s" % e)

21491 if load is None:

21492 setmethod(getattr(args[0], e))

21493 else:

21494 setmethod(getattr(args[0], e), load=load)

21495

21496 def _path(self):

21497 if hasattr(self, "_parent"):

21498 return self._parent._path()+[self._yang_name]

21499 else:

21500 return ['nsd', 'nsd', 'vnffgd', 'cpd-pool', 'vnf']

21501

21502 def _get_vnfd_id(self):

21503 """

21504 Getter method for vnfd_id, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/vnf/vnfd_id (leafref)

21505 """

21506 return self.__vnfd_id

21507

21508 def _set_vnfd_id(self, v, load=False):

21509 """

21510 Setter method for vnfd_id, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/vnf/vnfd_id (leafref)

21511 If this variable is read-only (config: false) in the

21512 source YANG file, then _set_vnfd_id is considered as a private

21513 method. Backends looking to populate this variable should

21514 do so via calling thisObj._set_vnfd_id() directly.

21515 """

21516 if hasattr(v, "_utype"):

21517 v = v._utype(v)

21518 try:

21519 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="vnfd-id", parent=self, choice=('constituent-cpd-id', 'vnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21520 except (TypeError, ValueError):

21521 raise ValueError({

21522 'error-string': """vnfd_id must be of a type compatible with leafref""",

21523 'defined-type': "leafref",

21524 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="vnfd-id", parent=self, choice=('constituent-cpd-id', 'vnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

21525 })

21526

21527 self.__vnfd_id = t

21528 if hasattr(self, '_set'):

21529 self._set()

21530

21531 def _unset_vnfd_id(self):

21532 self.__vnfd_id = YANGDynClass(base=str, is_leaf=True, yang_name="vnfd-id", parent=self, choice=('constituent-cpd-id', 'vnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21533

21534

21535 def _get_cpd_id(self):

21536 """

21537 Getter method for cpd_id, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/vnf/cpd_id (leafref)

21538 """

21539 return self.__cpd_id

21540

21541 def _set_cpd_id(self, v, load=False):

21542 """

21543 Setter method for cpd_id, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/vnf/cpd_id (leafref)

21544 If this variable is read-only (config: false) in the

21545 source YANG file, then _set_cpd_id is considered as a private

21546 method. Backends looking to populate this variable should

21547 do so via calling thisObj._set_cpd_id() directly.

21548 """

21549 if hasattr(v, "_utype"):

21550 v = v._utype(v)

21551 try:

21552 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="cpd-id", parent=self, choice=('constituent-cpd-id', 'vnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21553 except (TypeError, ValueError):

21554 raise ValueError({

21555 'error-string': """cpd_id must be of a type compatible with leafref""",

21556 'defined-type': "leafref",

21557 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="cpd-id", parent=self, choice=('constituent-cpd-id', 'vnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

21558 })

21559

21560 self.__cpd_id = t

21561 if hasattr(self, '_set'):

21562 self._set()

21563

21564 def _unset_cpd_id(self):

21565 self.__cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="cpd-id", parent=self, choice=('constituent-cpd-id', 'vnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21566

21567 vnfd_id = __builtin__.property(_get_vnfd_id, _set_vnfd_id)

21568 cpd_id = __builtin__.property(_get_cpd_id, _set_cpd_id)

21569

21570 __choices__ = {'constituent-cpd-id': {'vnf': ['vnfd_id', 'cpd_id']}}

21571 _pyangbind_elements = OrderedDict([('vnfd_id', vnfd_id), ('cpd_id', cpd_id), ])

21572

21573

21574 class yc_pnf_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_pnf(PybindBase):

21575 """

21576 This class was auto-generated by the PythonClass plugin for PYANG

21577 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/vnffgd/cpd-pool/pnf. Each member element of

21578 the container is represented as a class variable - with a specific

21579 YANG type.

21580 """

21581 __slots__ = ('_path_helper', '_extmethods', '__pnfd_id','__pnf_cpd_id',)

21582

21583 _yang_name = 'pnf'

21584 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

21585

21586 _pybind_generated_by = 'container'

21587

21588 def __init__(self, *args, **kwargs):

21589

21590 self._path_helper = False

21591

21592 self._extmethods = False

21593 self.__pnfd_id = YANGDynClass(base=str, is_leaf=True, yang_name="pnfd-id", parent=self, choice=('constituent-cpd-id', 'pnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21594 self.__pnf_cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="pnf-cpd-id", parent=self, choice=('constituent-cpd-id', 'pnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21595

21596 load = kwargs.pop("load", None)

21597 if args:

21598 if len(args) > 1:

21599 raise TypeError("cannot create a YANG container with >1 argument")

21600 all_attr = True

21601 for e in self._pyangbind_elements:

21602 if not hasattr(args[0], e):

21603 all_attr = False

21604 break

21605 if not all_attr:

21606 raise ValueError("Supplied object did not have the correct attributes")

21607 for e in self._pyangbind_elements:

21608 nobj = getattr(args[0], e)

21609 if nobj._changed() is False:

21610 continue

21611 setmethod = getattr(self, "_set_%s" % e)

21612 if load is None:

21613 setmethod(getattr(args[0], e))

21614 else:

21615 setmethod(getattr(args[0], e), load=load)

21616

21617 def _path(self):

21618 if hasattr(self, "_parent"):

21619 return self._parent._path()+[self._yang_name]

21620 else:

21621 return ['nsd', 'nsd', 'vnffgd', 'cpd-pool', 'pnf']

21622

21623 def _get_pnfd_id(self):

21624 """

21625 Getter method for pnfd_id, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/pnf/pnfd_id (leafref)

21626 """

21627 return self.__pnfd_id

21628

21629 def _set_pnfd_id(self, v, load=False):

21630 """

21631 Setter method for pnfd_id, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/pnf/pnfd_id (leafref)

21632 If this variable is read-only (config: false) in the

21633 source YANG file, then _set_pnfd_id is considered as a private

21634 method. Backends looking to populate this variable should

21635 do so via calling thisObj._set_pnfd_id() directly.

21636 """

21637 if hasattr(v, "_utype"):

21638 v = v._utype(v)

21639 try:

21640 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="pnfd-id", parent=self, choice=('constituent-cpd-id', 'pnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21641 except (TypeError, ValueError):

21642 raise ValueError({

21643 'error-string': """pnfd_id must be of a type compatible with leafref""",

21644 'defined-type': "leafref",

21645 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="pnfd-id", parent=self, choice=('constituent-cpd-id', 'pnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

21646 })

21647

21648 self.__pnfd_id = t

21649 if hasattr(self, '_set'):

21650 self._set()

21651

21652 def _unset_pnfd_id(self):

21653 self.__pnfd_id = YANGDynClass(base=str, is_leaf=True, yang_name="pnfd-id", parent=self, choice=('constituent-cpd-id', 'pnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21654

21655

21656 def _get_pnf_cpd_id(self):

21657 """

21658 Getter method for pnf_cpd_id, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/pnf/pnf_cpd_id (leafref)

21659 """

21660 return self.__pnf_cpd_id

21661

21662 def _set_pnf_cpd_id(self, v, load=False):

21663 """

21664 Setter method for pnf_cpd_id, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/pnf/pnf_cpd_id (leafref)

21665 If this variable is read-only (config: false) in the

21666 source YANG file, then _set_pnf_cpd_id is considered as a private

21667 method. Backends looking to populate this variable should

21668 do so via calling thisObj._set_pnf_cpd_id() directly.

21669 """

21670 if hasattr(v, "_utype"):

21671 v = v._utype(v)

21672 try:

21673 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="pnf-cpd-id", parent=self, choice=('constituent-cpd-id', 'pnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21674 except (TypeError, ValueError):

21675 raise ValueError({

21676 'error-string': """pnf_cpd_id must be of a type compatible with leafref""",

21677 'defined-type': "leafref",

21678 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="pnf-cpd-id", parent=self, choice=('constituent-cpd-id', 'pnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

21679 })

21680

21681 self.__pnf_cpd_id = t

21682 if hasattr(self, '_set'):

21683 self._set()

21684

21685 def _unset_pnf_cpd_id(self):

21686 self.__pnf_cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="pnf-cpd-id", parent=self, choice=('constituent-cpd-id', 'pnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21687

21688 pnfd_id = __builtin__.property(_get_pnfd_id, _set_pnfd_id)

21689 pnf_cpd_id = __builtin__.property(_get_pnf_cpd_id, _set_pnf_cpd_id)

21690

21691 __choices__ = {'constituent-cpd-id': {'pnf': ['pnfd_id', 'pnf_cpd_id']}}

21692 _pyangbind_elements = OrderedDict([('pnfd_id', pnfd_id), ('pnf_cpd_id', pnf_cpd_id), ])

21693

21694

21695 class yc_ns_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_ns(PybindBase):

21696 """

21697 This class was auto-generated by the PythonClass plugin for PYANG

21698 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/vnffgd/cpd-pool/ns. Each member element of

21699 the container is represented as a class variable - with a specific

21700 YANG type.

21701 """

21702 __slots__ = ('_path_helper', '_extmethods', '__nsd_id','__sap_cpd_id',)

21703

21704 _yang_name = 'ns'

21705 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

21706

21707 _pybind_generated_by = 'container'

21708

21709 def __init__(self, *args, **kwargs):

21710

21711 self._path_helper = False

21712

21713 self._extmethods = False

21714 self.__nsd_id = YANGDynClass(base=str, is_leaf=True, yang_name="nsd-id", parent=self, choice=('constituent-cpd-id', 'ns'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21715 self.__sap_cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="sap-cpd-id", parent=self, choice=('constituent-cpd-id', 'ns'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21716

21717 load = kwargs.pop("load", None)

21718 if args:

21719 if len(args) > 1:

21720 raise TypeError("cannot create a YANG container with >1 argument")

21721 all_attr = True

21722 for e in self._pyangbind_elements:

21723 if not hasattr(args[0], e):

21724 all_attr = False

21725 break

21726 if not all_attr:

21727 raise ValueError("Supplied object did not have the correct attributes")

21728 for e in self._pyangbind_elements:

21729 nobj = getattr(args[0], e)

21730 if nobj._changed() is False:

21731 continue

21732 setmethod = getattr(self, "_set_%s" % e)

21733 if load is None:

21734 setmethod(getattr(args[0], e))

21735 else:

21736 setmethod(getattr(args[0], e), load=load)

21737

21738 def _path(self):

21739 if hasattr(self, "_parent"):

21740 return self._parent._path()+[self._yang_name]

21741 else:

21742 return ['nsd', 'nsd', 'vnffgd', 'cpd-pool', 'ns']

21743

21744 def _get_nsd_id(self):

21745 """

21746 Getter method for nsd_id, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/ns/nsd_id (leafref)

21747 """

21748 return self.__nsd_id

21749

21750 def _set_nsd_id(self, v, load=False):

21751 """

21752 Setter method for nsd_id, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/ns/nsd_id (leafref)

21753 If this variable is read-only (config: false) in the

21754 source YANG file, then _set_nsd_id is considered as a private

21755 method. Backends looking to populate this variable should

21756 do so via calling thisObj._set_nsd_id() directly.

21757 """

21758 if hasattr(v, "_utype"):

21759 v = v._utype(v)

21760 try:

21761 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="nsd-id", parent=self, choice=('constituent-cpd-id', 'ns'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21762 except (TypeError, ValueError):

21763 raise ValueError({

21764 'error-string': """nsd_id must be of a type compatible with leafref""",

21765 'defined-type': "leafref",

21766 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="nsd-id", parent=self, choice=('constituent-cpd-id', 'ns'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

21767 })

21768

21769 self.__nsd_id = t

21770 if hasattr(self, '_set'):

21771 self._set()

21772

21773 def _unset_nsd_id(self):

21774 self.__nsd_id = YANGDynClass(base=str, is_leaf=True, yang_name="nsd-id", parent=self, choice=('constituent-cpd-id', 'ns'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21775

21776

21777 def _get_sap_cpd_id(self):

21778 """

21779 Getter method for sap_cpd_id, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/ns/sap_cpd_id (leafref)

21780 """

21781 return self.__sap_cpd_id

21782

21783 def _set_sap_cpd_id(self, v, load=False):

21784 """

21785 Setter method for sap_cpd_id, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/ns/sap_cpd_id (leafref)

21786 If this variable is read-only (config: false) in the

21787 source YANG file, then _set_sap_cpd_id is considered as a private

21788 method. Backends looking to populate this variable should

21789 do so via calling thisObj._set_sap_cpd_id() directly.

21790 """

21791 if hasattr(v, "_utype"):

21792 v = v._utype(v)

21793 try:

21794 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="sap-cpd-id", parent=self, choice=('constituent-cpd-id', 'ns'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21795 except (TypeError, ValueError):

21796 raise ValueError({

21797 'error-string': """sap_cpd_id must be of a type compatible with leafref""",

21798 'defined-type': "leafref",

21799 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="sap-cpd-id", parent=self, choice=('constituent-cpd-id', 'ns'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

21800 })

21801

21802 self.__sap_cpd_id = t

21803 if hasattr(self, '_set'):

21804 self._set()

21805

21806 def _unset_sap_cpd_id(self):

21807 self.__sap_cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="sap-cpd-id", parent=self, choice=('constituent-cpd-id', 'ns'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

21808

21809 nsd_id = __builtin__.property(_get_nsd_id, _set_nsd_id)

21810 sap_cpd_id = __builtin__.property(_get_sap_cpd_id, _set_sap_cpd_id)

21811

21812 __choices__ = {'constituent-cpd-id': {'ns': ['nsd_id', 'sap_cpd_id']}}

21813 _pyangbind_elements = OrderedDict([('nsd_id', nsd_id), ('sap_cpd_id', sap_cpd_id), ])

21814

21815

21816 class yc_cpd_pool_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool(PybindBase):

21817 """

21818 This class was auto-generated by the PythonClass plugin for PYANG

21819 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/vnffgd/cpd-pool. Each member element of

21820 the container is represented as a class variable - with a specific

21821 YANG type.

21822

21823 YANG Description: Describes a pool of descriptors of connection points

21824 attached to one of the constituent VNFs and PNFs and/or

21825 one of the SAPs of the parent NS or of a nested NS.

21826 """

21827 __slots__ = ('_path_helper', '_extmethods', '__id','__vnf_profile','__pnf_profile','__ns_profile','__vnf','__pnf','__ns',)

21828

21829 _yang_name = 'cpd-pool'

21830 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

21831

21832 _pybind_generated_by = 'container'

21833

21834 def __init__(self, *args, **kwargs):

21835

21836 self._path_helper = False

21837

21838 self._extmethods = False

21839 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

21840 self.__vnf_profile = YANGDynClass(base=yc_vnf_profile_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_vnf_profile, is_container='container', yang_name="vnf-profile", parent=self, choice=('constituent-base-element-id', 'vnf-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

21841 self.__pnf_profile = YANGDynClass(base=yc_pnf_profile_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_pnf_profile, is_container='container', yang_name="pnf-profile", parent=self, choice=('constituent-base-element-id', 'pnf-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

21842 self.__ns_profile = YANGDynClass(base=yc_ns_profile_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_ns_profile, is_container='container', yang_name="ns-profile", parent=self, choice=('constituent-base-element-id', 'ns-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

21843 self.__vnf = YANGDynClass(base=yc_vnf_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_vnf, is_container='container', yang_name="vnf", parent=self, choice=('constituent-cpd-id', 'vnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

21844 self.__pnf = YANGDynClass(base=yc_pnf_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_pnf, is_container='container', yang_name="pnf", parent=self, choice=('constituent-cpd-id', 'pnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

21845 self.__ns = YANGDynClass(base=yc_ns_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_ns, is_container='container', yang_name="ns", parent=self, choice=('constituent-cpd-id', 'ns'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

21846

21847 load = kwargs.pop("load", None)

21848 if args:

21849 if len(args) > 1:

21850 raise TypeError("cannot create a YANG container with >1 argument")

21851 all_attr = True

21852 for e in self._pyangbind_elements:

21853 if not hasattr(args[0], e):

21854 all_attr = False

21855 break

21856 if not all_attr:

21857 raise ValueError("Supplied object did not have the correct attributes")

21858 for e in self._pyangbind_elements:

21859 nobj = getattr(args[0], e)

21860 if nobj._changed() is False:

21861 continue

21862 setmethod = getattr(self, "_set_%s" % e)

21863 if load is None:

21864 setmethod(getattr(args[0], e))

21865 else:

21866 setmethod(getattr(args[0], e), load=load)

21867

21868 def _path(self):

21869 if hasattr(self, "_parent"):

21870 return self._parent._path()+[self._yang_name]

21871 else:

21872 return ['nsd', 'nsd', 'vnffgd', 'cpd-pool']

21873

21874 def _get_id(self):

21875 """

21876 Getter method for id, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/id (string)

21877 """

21878 return self.__id

21879

21880 def _set_id(self, v, load=False):

21881 """

21882 Setter method for id, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/id (string)

21883 If this variable is read-only (config: false) in the

21884 source YANG file, then _set_id is considered as a private

21885 method. Backends looking to populate this variable should

21886 do so via calling thisObj._set_id() directly.

21887 """

21888 parent = getattr(self, "_parent", None)

21889 if parent is not None and load is False:

21890 raise AttributeError("Cannot set keys directly when" +

21891 " within an instantiated list")

21892

21893 if hasattr(v, "_utype"):

21894 v = v._utype(v)

21895 try:

21896 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

21897 except (TypeError, ValueError):

21898 raise ValueError({

21899 'error-string': """id must be of a type compatible with string""",

21900 'defined-type': "string",

21901 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

21902 })

21903

21904 self.__id = t

21905 if hasattr(self, '_set'):

21906 self._set()

21907

21908 def _unset_id(self):

21909 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

21910

21911

21912 def _get_vnf_profile(self):

21913 """

21914 Getter method for vnf_profile, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/vnf_profile (container)

21915 """

21916 return self.__vnf_profile

21917

21918 def _set_vnf_profile(self, v, load=False):

21919 """

21920 Setter method for vnf_profile, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/vnf_profile (container)

21921 If this variable is read-only (config: false) in the

21922 source YANG file, then _set_vnf_profile is considered as a private

21923 method. Backends looking to populate this variable should

21924 do so via calling thisObj._set_vnf_profile() directly.

21925 """

21926 if hasattr(v, "_utype"):

21927 v = v._utype(v)

21928 try:

21929 t = YANGDynClass(v,base=yc_vnf_profile_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_vnf_profile, is_container='container', yang_name="vnf-profile", parent=self, choice=('constituent-base-element-id', 'vnf-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

21930 except (TypeError, ValueError):

21931 raise ValueError({

21932 'error-string': """vnf_profile must be of a type compatible with container""",

21933 'defined-type': "container",

21934 'generated-type': """YANGDynClass(base=yc_vnf_profile_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_vnf_profile, is_container='container', yang_name="vnf-profile", parent=self, choice=('constituent-base-element-id', 'vnf-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

21935 })

21936

21937 self.__vnf_profile = t

21938 if hasattr(self, '_set'):

21939 self._set()

21940

21941 def _unset_vnf_profile(self):

21942 self.__vnf_profile = YANGDynClass(base=yc_vnf_profile_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_vnf_profile, is_container='container', yang_name="vnf-profile", parent=self, choice=('constituent-base-element-id', 'vnf-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

21943

21944

21945 def _get_pnf_profile(self):

21946 """

21947 Getter method for pnf_profile, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/pnf_profile (container)

21948 """

21949 return self.__pnf_profile

21950

21951 def _set_pnf_profile(self, v, load=False):

21952 """

21953 Setter method for pnf_profile, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/pnf_profile (container)

21954 If this variable is read-only (config: false) in the

21955 source YANG file, then _set_pnf_profile is considered as a private

21956 method. Backends looking to populate this variable should

21957 do so via calling thisObj._set_pnf_profile() directly.

21958 """

21959 if hasattr(v, "_utype"):

21960 v = v._utype(v)

21961 try:

21962 t = YANGDynClass(v,base=yc_pnf_profile_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_pnf_profile, is_container='container', yang_name="pnf-profile", parent=self, choice=('constituent-base-element-id', 'pnf-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

21963 except (TypeError, ValueError):

21964 raise ValueError({

21965 'error-string': """pnf_profile must be of a type compatible with container""",

21966 'defined-type': "container",

21967 'generated-type': """YANGDynClass(base=yc_pnf_profile_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_pnf_profile, is_container='container', yang_name="pnf-profile", parent=self, choice=('constituent-base-element-id', 'pnf-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

21968 })

21969

21970 self.__pnf_profile = t

21971 if hasattr(self, '_set'):

21972 self._set()

21973

21974 def _unset_pnf_profile(self):

21975 self.__pnf_profile = YANGDynClass(base=yc_pnf_profile_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_pnf_profile, is_container='container', yang_name="pnf-profile", parent=self, choice=('constituent-base-element-id', 'pnf-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

21976

21977

21978 def _get_ns_profile(self):

21979 """

21980 Getter method for ns_profile, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/ns_profile (container)

21981 """

21982 return self.__ns_profile

21983

21984 def _set_ns_profile(self, v, load=False):

21985 """

21986 Setter method for ns_profile, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/ns_profile (container)

21987 If this variable is read-only (config: false) in the

21988 source YANG file, then _set_ns_profile is considered as a private

21989 method. Backends looking to populate this variable should

21990 do so via calling thisObj._set_ns_profile() directly.

21991 """

21992 if hasattr(v, "_utype"):

21993 v = v._utype(v)

21994 try:

21995 t = YANGDynClass(v,base=yc_ns_profile_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_ns_profile, is_container='container', yang_name="ns-profile", parent=self, choice=('constituent-base-element-id', 'ns-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

21996 except (TypeError, ValueError):

21997 raise ValueError({

21998 'error-string': """ns_profile must be of a type compatible with container""",

21999 'defined-type': "container",

22000 'generated-type': """YANGDynClass(base=yc_ns_profile_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_ns_profile, is_container='container', yang_name="ns-profile", parent=self, choice=('constituent-base-element-id', 'ns-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

22001 })

22002

22003 self.__ns_profile = t

22004 if hasattr(self, '_set'):

22005 self._set()

22006

22007 def _unset_ns_profile(self):

22008 self.__ns_profile = YANGDynClass(base=yc_ns_profile_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_ns_profile, is_container='container', yang_name="ns-profile", parent=self, choice=('constituent-base-element-id', 'ns-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

22009

22010

22011 def _get_vnf(self):

22012 """

22013 Getter method for vnf, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/vnf (container)

22014 """

22015 return self.__vnf

22016

22017 def _set_vnf(self, v, load=False):

22018 """

22019 Setter method for vnf, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/vnf (container)

22020 If this variable is read-only (config: false) in the

22021 source YANG file, then _set_vnf is considered as a private

22022 method. Backends looking to populate this variable should

22023 do so via calling thisObj._set_vnf() directly.

22024 """

22025 if hasattr(v, "_utype"):

22026 v = v._utype(v)

22027 try:

22028 t = YANGDynClass(v,base=yc_vnf_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_vnf, is_container='container', yang_name="vnf", parent=self, choice=('constituent-cpd-id', 'vnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

22029 except (TypeError, ValueError):

22030 raise ValueError({

22031 'error-string': """vnf must be of a type compatible with container""",

22032 'defined-type': "container",

22033 'generated-type': """YANGDynClass(base=yc_vnf_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_vnf, is_container='container', yang_name="vnf", parent=self, choice=('constituent-cpd-id', 'vnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

22034 })

22035

22036 self.__vnf = t

22037 if hasattr(self, '_set'):

22038 self._set()

22039

22040 def _unset_vnf(self):

22041 self.__vnf = YANGDynClass(base=yc_vnf_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_vnf, is_container='container', yang_name="vnf", parent=self, choice=('constituent-cpd-id', 'vnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

22042

22043

22044 def _get_pnf(self):

22045 """

22046 Getter method for pnf, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/pnf (container)

22047 """

22048 return self.__pnf

22049

22050 def _set_pnf(self, v, load=False):

22051 """

22052 Setter method for pnf, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/pnf (container)

22053 If this variable is read-only (config: false) in the

22054 source YANG file, then _set_pnf is considered as a private

22055 method. Backends looking to populate this variable should

22056 do so via calling thisObj._set_pnf() directly.

22057 """

22058 if hasattr(v, "_utype"):

22059 v = v._utype(v)

22060 try:

22061 t = YANGDynClass(v,base=yc_pnf_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_pnf, is_container='container', yang_name="pnf", parent=self, choice=('constituent-cpd-id', 'pnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

22062 except (TypeError, ValueError):

22063 raise ValueError({

22064 'error-string': """pnf must be of a type compatible with container""",

22065 'defined-type': "container",

22066 'generated-type': """YANGDynClass(base=yc_pnf_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_pnf, is_container='container', yang_name="pnf", parent=self, choice=('constituent-cpd-id', 'pnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

22067 })

22068

22069 self.__pnf = t

22070 if hasattr(self, '_set'):

22071 self._set()

22072

22073 def _unset_pnf(self):

22074 self.__pnf = YANGDynClass(base=yc_pnf_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_pnf, is_container='container', yang_name="pnf", parent=self, choice=('constituent-cpd-id', 'pnf'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

22075

22076

22077 def _get_ns(self):

22078 """

22079 Getter method for ns, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/ns (container)

22080 """

22081 return self.__ns

22082

22083 def _set_ns(self, v, load=False):

22084 """

22085 Setter method for ns, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool/ns (container)

22086 If this variable is read-only (config: false) in the

22087 source YANG file, then _set_ns is considered as a private

22088 method. Backends looking to populate this variable should

22089 do so via calling thisObj._set_ns() directly.

22090 """

22091 if hasattr(v, "_utype"):

22092 v = v._utype(v)

22093 try:

22094 t = YANGDynClass(v,base=yc_ns_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_ns, is_container='container', yang_name="ns", parent=self, choice=('constituent-cpd-id', 'ns'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

22095 except (TypeError, ValueError):

22096 raise ValueError({

22097 'error-string': """ns must be of a type compatible with container""",

22098 'defined-type': "container",

22099 'generated-type': """YANGDynClass(base=yc_ns_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_ns, is_container='container', yang_name="ns", parent=self, choice=('constituent-cpd-id', 'ns'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

22100 })

22101

22102 self.__ns = t

22103 if hasattr(self, '_set'):

22104 self._set()

22105

22106 def _unset_ns(self):

22107 self.__ns = YANGDynClass(base=yc_ns_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool_ns, is_container='container', yang_name="ns", parent=self, choice=('constituent-cpd-id', 'ns'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

22108

22109 id = __builtin__.property(_get_id, _set_id)

22110 vnf_profile = __builtin__.property(_get_vnf_profile, _set_vnf_profile)

22111 pnf_profile = __builtin__.property(_get_pnf_profile, _set_pnf_profile)

22112 ns_profile = __builtin__.property(_get_ns_profile, _set_ns_profile)

22113 vnf = __builtin__.property(_get_vnf, _set_vnf)

22114 pnf = __builtin__.property(_get_pnf, _set_pnf)

22115 ns = __builtin__.property(_get_ns, _set_ns)

22116

22117 __choices__ = {'constituent-base-element-id': {'vnf-profile': ['vnf_profile'], 'pnf-profile': ['pnf_profile'], 'ns-profile': ['ns_profile']}, 'constituent-cpd-id': {'vnf': ['vnf'], 'pnf': ['pnf'], 'ns': ['ns']}}

22118 _pyangbind_elements = OrderedDict([('id', id), ('vnf_profile', vnf_profile), ('pnf_profile', pnf_profile), ('ns_profile', ns_profile), ('vnf', vnf), ('pnf', pnf), ('ns', ns), ])

22119

22120

22121 class yc_constituent_profile_elements_etsi_nfv_nsd__nsd_nsd_vnffgd_nfpd_position_desc_id_cp_profile_id_constituent_profile_elements(PybindBase):

22122 """

22123 This class was auto-generated by the PythonClass plugin for PYANG

22124 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/vnffgd/nfpd/position-desc-id/cp-profile-id/constituent-profile-elements. Each member element of

22125 the container is represented as a class variable - with a specific

22126 YANG type.

22127

22128 YANG Description: Specifies the constituents of the CpProfile.

22129 """

22130 __slots__ = ('_path_helper', '_extmethods', '__id','__cpd_id','__constituent_base_element_id','__order','__ingress_constituent_cpd_id','__egress_constituent_cpd_id',)

22131

22132 _yang_name = 'constituent-profile-elements'

22133 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

22134

22135 _pybind_generated_by = 'container'

22136

22137 def __init__(self, *args, **kwargs):

22138

22139 self._path_helper = False

22140

22141 self._extmethods = False

22142 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

22143 self.__cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

22144 self.__constituent_base_element_id = YANGDynClass(base=str, is_leaf=True, yang_name="constituent-base-element-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='leafref', is_config=True)

22145 self.__order = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), is_leaf=True, yang_name="order", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='uint8', is_config=True)

22146 self.__ingress_constituent_cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="ingress-constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='string', is_config=True)

22147 self.__egress_constituent_cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="egress-constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='string', is_config=True)

22148

22149 load = kwargs.pop("load", None)

22150 if args:

22151 if len(args) > 1:

22152 raise TypeError("cannot create a YANG container with >1 argument")

22153 all_attr = True

22154 for e in self._pyangbind_elements:

22155 if not hasattr(args[0], e):

22156 all_attr = False

22157 break

22158 if not all_attr:

22159 raise ValueError("Supplied object did not have the correct attributes")

22160 for e in self._pyangbind_elements:

22161 nobj = getattr(args[0], e)

22162 if nobj._changed() is False:

22163 continue

22164 setmethod = getattr(self, "_set_%s" % e)

22165 if load is None:

22166 setmethod(getattr(args[0], e))

22167 else:

22168 setmethod(getattr(args[0], e), load=load)

22169

22170 def _path(self):

22171 if hasattr(self, "_parent"):

22172 return self._parent._path()+[self._yang_name]

22173 else:

22174 return ['nsd', 'nsd', 'vnffgd', 'nfpd', 'position-desc-id', 'cp-profile-id', 'constituent-profile-elements']

22175

22176 def _get_id(self):

22177 """

22178 Getter method for id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/cp_profile_id/constituent_profile_elements/id (string)

22179

22180 YANG Description: Specifies the constituents of the CpProfile.

22181 """

22182 return self.__id

22183

22184 def _set_id(self, v, load=False):

22185 """

22186 Setter method for id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/cp_profile_id/constituent_profile_elements/id (string)

22187 If this variable is read-only (config: false) in the

22188 source YANG file, then _set_id is considered as a private

22189 method. Backends looking to populate this variable should

22190 do so via calling thisObj._set_id() directly.

22191

22192 YANG Description: Specifies the constituents of the CpProfile.

22193 """

22194 parent = getattr(self, "_parent", None)

22195 if parent is not None and load is False:

22196 raise AttributeError("Cannot set keys directly when" +

22197 " within an instantiated list")

22198

22199 if hasattr(v, "_utype"):

22200 v = v._utype(v)

22201 try:

22202 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

22203 except (TypeError, ValueError):

22204 raise ValueError({

22205 'error-string': """id must be of a type compatible with string""",

22206 'defined-type': "string",

22207 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

22208 })

22209

22210 self.__id = t

22211 if hasattr(self, '_set'):

22212 self._set()

22213

22214 def _unset_id(self):

22215 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

22216

22217

22218 def _get_cpd_id(self):

22219 """

22220 Getter method for cpd_id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/cp_profile_id/constituent_profile_elements/cpd_id (string)

22221

22222 YANG Description: References the VNF external CPD for a given

22223 VnfProfile, or the PNF external CPD for a given

22224 PnfProfile, or a NS SAPD for a give NsProfile

22225 identified by the constituentBasedElementId.

22226 """

22227 return self.__cpd_id

22228

22229 def _set_cpd_id(self, v, load=False):

22230 """

22231 Setter method for cpd_id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/cp_profile_id/constituent_profile_elements/cpd_id (string)

22232 If this variable is read-only (config: false) in the

22233 source YANG file, then _set_cpd_id is considered as a private

22234 method. Backends looking to populate this variable should

22235 do so via calling thisObj._set_cpd_id() directly.

22236

22237 YANG Description: References the VNF external CPD for a given

22238 VnfProfile, or the PNF external CPD for a given

22239 PnfProfile, or a NS SAPD for a give NsProfile

22240 identified by the constituentBasedElementId.

22241 """

22242 if hasattr(v, "_utype"):

22243 v = v._utype(v)

22244 try:

22245 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

22246 except (TypeError, ValueError):

22247 raise ValueError({

22248 'error-string': """cpd_id must be of a type compatible with string""",

22249 'defined-type': "string",

22250 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

22251 })

22252

22253 self.__cpd_id = t

22254 if hasattr(self, '_set'):

22255 self._set()

22256

22257 def _unset_cpd_id(self):

22258 self.__cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

22259

22260

22261 def _get_constituent_base_element_id(self):

22262 """

22263 Getter method for constituent_base_element_id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/cp_profile_id/constituent_profile_elements/constituent_base_element_id (leafref)

22264 """

22265 return self.__constituent_base_element_id

22266

22267 def _set_constituent_base_element_id(self, v, load=False):

22268 """

22269 Setter method for constituent_base_element_id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/cp_profile_id/constituent_profile_elements/constituent_base_element_id (leafref)

22270 If this variable is read-only (config: false) in the

22271 source YANG file, then _set_constituent_base_element_id is considered as a private

22272 method. Backends looking to populate this variable should

22273 do so via calling thisObj._set_constituent_base_element_id() directly.

22274 """

22275 if hasattr(v, "_utype"):

22276 v = v._utype(v)

22277 try:

22278 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="constituent-base-element-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='leafref', is_config=True)

22279 except (TypeError, ValueError):

22280 raise ValueError({

22281 'error-string': """constituent_base_element_id must be of a type compatible with leafref""",

22282 'defined-type': "leafref",

22283 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="constituent-base-element-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='leafref', is_config=True)""",

22284 })

22285

22286 self.__constituent_base_element_id = t

22287 if hasattr(self, '_set'):

22288 self._set()

22289

22290 def _unset_constituent_base_element_id(self):

22291 self.__constituent_base_element_id = YANGDynClass(base=str, is_leaf=True, yang_name="constituent-base-element-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='leafref', is_config=True)

22292

22293

22294 def _get_order(self):

22295 """

22296 Getter method for order, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/cp_profile_id/constituent_profile_elements/order (uint8)

22297

22298 YANG Description: A number that denotes the order of a VNF in a chain

22299 """

22300 return self.__order

22301

22302 def _set_order(self, v, load=False):

22303 """

22304 Setter method for order, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/cp_profile_id/constituent_profile_elements/order (uint8)

22305 If this variable is read-only (config: false) in the

22306 source YANG file, then _set_order is considered as a private

22307 method. Backends looking to populate this variable should

22308 do so via calling thisObj._set_order() directly.

22309

22310 YANG Description: A number that denotes the order of a VNF in a chain

22311 """

22312 if hasattr(v, "_utype"):

22313 v = v._utype(v)

22314 try:

22315 t = YANGDynClass(v,base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), is_leaf=True, yang_name="order", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='uint8', is_config=True)

22316 except (TypeError, ValueError):

22317 raise ValueError({

22318 'error-string': """order must be of a type compatible with uint8""",

22319 'defined-type': "uint8",

22320 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), is_leaf=True, yang_name="order", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='uint8', is_config=True)""",

22321 })

22322

22323 self.__order = t

22324 if hasattr(self, '_set'):

22325 self._set()

22326

22327 def _unset_order(self):

22328 self.__order = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), is_leaf=True, yang_name="order", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='uint8', is_config=True)

22329

22330

22331 def _get_ingress_constituent_cpd_id(self):

22332 """

22333 Getter method for ingress_constituent_cpd_id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/cp_profile_id/constituent_profile_elements/ingress_constituent_cpd_id (string)

22334

22335 YANG Description: A reference to a connection point name

22336 in a vnfd.

22337 """

22338 return self.__ingress_constituent_cpd_id

22339

22340 def _set_ingress_constituent_cpd_id(self, v, load=False):

22341 """

22342 Setter method for ingress_constituent_cpd_id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/cp_profile_id/constituent_profile_elements/ingress_constituent_cpd_id (string)

22343 If this variable is read-only (config: false) in the

22344 source YANG file, then _set_ingress_constituent_cpd_id is considered as a private

22345 method. Backends looking to populate this variable should

22346 do so via calling thisObj._set_ingress_constituent_cpd_id() directly.

22347

22348 YANG Description: A reference to a connection point name

22349 in a vnfd.

22350 """

22351 if hasattr(v, "_utype"):

22352 v = v._utype(v)

22353 try:

22354 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="ingress-constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='string', is_config=True)

22355 except (TypeError, ValueError):

22356 raise ValueError({

22357 'error-string': """ingress_constituent_cpd_id must be of a type compatible with string""",

22358 'defined-type': "string",

22359 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="ingress-constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='string', is_config=True)""",

22360 })

22361

22362 self.__ingress_constituent_cpd_id = t

22363 if hasattr(self, '_set'):

22364 self._set()

22365

22366 def _unset_ingress_constituent_cpd_id(self):

22367 self.__ingress_constituent_cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="ingress-constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='string', is_config=True)

22368

22369

22370 def _get_egress_constituent_cpd_id(self):

22371 """

22372 Getter method for egress_constituent_cpd_id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/cp_profile_id/constituent_profile_elements/egress_constituent_cpd_id (string)

22373

22374 YANG Description: A reference to a connection point name

22375 in a vnfd.

22376 """

22377 return self.__egress_constituent_cpd_id

22378

22379 def _set_egress_constituent_cpd_id(self, v, load=False):

22380 """

22381 Setter method for egress_constituent_cpd_id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/cp_profile_id/constituent_profile_elements/egress_constituent_cpd_id (string)

22382 If this variable is read-only (config: false) in the

22383 source YANG file, then _set_egress_constituent_cpd_id is considered as a private

22384 method. Backends looking to populate this variable should

22385 do so via calling thisObj._set_egress_constituent_cpd_id() directly.

22386

22387 YANG Description: A reference to a connection point name

22388 in a vnfd.

22389 """

22390 if hasattr(v, "_utype"):

22391 v = v._utype(v)

22392 try:

22393 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="egress-constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='string', is_config=True)

22394 except (TypeError, ValueError):

22395 raise ValueError({

22396 'error-string': """egress_constituent_cpd_id must be of a type compatible with string""",

22397 'defined-type': "string",

22398 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="egress-constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='string', is_config=True)""",

22399 })

22400

22401 self.__egress_constituent_cpd_id = t

22402 if hasattr(self, '_set'):

22403 self._set()

22404

22405 def _unset_egress_constituent_cpd_id(self):

22406 self.__egress_constituent_cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="egress-constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='string', is_config=True)

22407

22408 id = __builtin__.property(_get_id, _set_id)

22409 cpd_id = __builtin__.property(_get_cpd_id, _set_cpd_id)

22410 constituent_base_element_id = __builtin__.property(_get_constituent_base_element_id, _set_constituent_base_element_id)

22411 order = __builtin__.property(_get_order, _set_order)

22412 ingress_constituent_cpd_id = __builtin__.property(_get_ingress_constituent_cpd_id, _set_ingress_constituent_cpd_id)

22413 egress_constituent_cpd_id = __builtin__.property(_get_egress_constituent_cpd_id, _set_egress_constituent_cpd_id)

22414

22415

22416 _pyangbind_elements = OrderedDict([('id', id), ('cpd_id', cpd_id), ('constituent_base_element_id', constituent_base_element_id), ('order', order), ('ingress_constituent_cpd_id', ingress_constituent_cpd_id), ('egress_constituent_cpd_id', egress_constituent_cpd_id), ])

22417

22418

22419 class yc_cp_profile_id_etsi_nfv_nsd__nsd_nsd_vnffgd_nfpd_position_desc_id_cp_profile_id(PybindBase):

22420 """

22421 This class was auto-generated by the PythonClass plugin for PYANG

22422 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/vnffgd/nfpd/position-desc-id/cp-profile-id. Each member element of

22423 the container is represented as a class variable - with a specific

22424 YANG type.

22425

22426 YANG Description: References the profile of a connection point to be

22427 traversed by the traffic flows matching the criteria.

22428 This shall be a connection point attached to one of

22429 the constituent VNFs and PNFs of the parent VNFFG,

22430 or a SAP of one of the constituent nested NSs of the

22431 parent VNFFG.

22432 """

22433 __slots__ = ('_path_helper', '_extmethods', '__id','__constituent_profile_elements',)

22434

22435 _yang_name = 'cp-profile-id'

22436 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

22437

22438 _pybind_generated_by = 'container'

22439

22440 def __init__(self, *args, **kwargs):

22441

22442 self._path_helper = False

22443

22444 self._extmethods = False

22445 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

22446 self.__constituent_profile_elements = YANGDynClass(base=YANGListType("id",yc_constituent_profile_elements_etsi_nfv_nsd__nsd_nsd_vnffgd_nfpd_position_desc_id_cp_profile_id_constituent_profile_elements, yang_name="constituent-profile-elements", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="constituent-profile-elements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

22447

22448 load = kwargs.pop("load", None)

22449 if args:

22450 if len(args) > 1:

22451 raise TypeError("cannot create a YANG container with >1 argument")

22452 all_attr = True

22453 for e in self._pyangbind_elements:

22454 if not hasattr(args[0], e):

22455 all_attr = False

22456 break

22457 if not all_attr:

22458 raise ValueError("Supplied object did not have the correct attributes")

22459 for e in self._pyangbind_elements:

22460 nobj = getattr(args[0], e)

22461 if nobj._changed() is False:

22462 continue

22463 setmethod = getattr(self, "_set_%s" % e)

22464 if load is None:

22465 setmethod(getattr(args[0], e))

22466 else:

22467 setmethod(getattr(args[0], e), load=load)

22468

22469 def _path(self):

22470 if hasattr(self, "_parent"):

22471 return self._parent._path()+[self._yang_name]

22472 else:

22473 return ['nsd', 'nsd', 'vnffgd', 'nfpd', 'position-desc-id', 'cp-profile-id']

22474

22475 def _get_id(self):

22476 """

22477 Getter method for id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/cp_profile_id/id (string)

22478

22479 YANG Description: Identifier of this CpProfile information element.

22480 It uniquely identifies a CpProfile.

22481 """

22482 return self.__id

22483

22484 def _set_id(self, v, load=False):

22485 """

22486 Setter method for id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/cp_profile_id/id (string)

22487 If this variable is read-only (config: false) in the

22488 source YANG file, then _set_id is considered as a private

22489 method. Backends looking to populate this variable should

22490 do so via calling thisObj._set_id() directly.

22491

22492 YANG Description: Identifier of this CpProfile information element.

22493 It uniquely identifies a CpProfile.

22494 """

22495 parent = getattr(self, "_parent", None)

22496 if parent is not None and load is False:

22497 raise AttributeError("Cannot set keys directly when" +

22498 " within an instantiated list")

22499

22500 if hasattr(v, "_utype"):

22501 v = v._utype(v)

22502 try:

22503 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

22504 except (TypeError, ValueError):

22505 raise ValueError({

22506 'error-string': """id must be of a type compatible with string""",

22507 'defined-type': "string",

22508 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

22509 })

22510

22511 self.__id = t

22512 if hasattr(self, '_set'):

22513 self._set()

22514

22515 def _unset_id(self):

22516 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

22517

22518

22519 def _get_constituent_profile_elements(self):

22520 """

22521 Getter method for constituent_profile_elements, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/cp_profile_id/constituent_profile_elements (list)

22522

22523 YANG Description: Specifies the constituents of the CpProfile.

22524 """

22525 return self.__constituent_profile_elements

22526

22527 def _set_constituent_profile_elements(self, v, load=False):

22528 """

22529 Setter method for constituent_profile_elements, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/cp_profile_id/constituent_profile_elements (list)

22530 If this variable is read-only (config: false) in the

22531 source YANG file, then _set_constituent_profile_elements is considered as a private

22532 method. Backends looking to populate this variable should

22533 do so via calling thisObj._set_constituent_profile_elements() directly.

22534

22535 YANG Description: Specifies the constituents of the CpProfile.

22536 """

22537 if hasattr(v, "_utype"):

22538 v = v._utype(v)

22539 try:

22540 t = YANGDynClass(v,base=YANGListType("id",yc_constituent_profile_elements_etsi_nfv_nsd__nsd_nsd_vnffgd_nfpd_position_desc_id_cp_profile_id_constituent_profile_elements, yang_name="constituent-profile-elements", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="constituent-profile-elements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

22541 except (TypeError, ValueError):

22542 raise ValueError({

22543 'error-string': """constituent_profile_elements must be of a type compatible with list""",

22544 'defined-type': "list",

22545 'generated-type': """YANGDynClass(base=YANGListType("id",yc_constituent_profile_elements_etsi_nfv_nsd__nsd_nsd_vnffgd_nfpd_position_desc_id_cp_profile_id_constituent_profile_elements, yang_name="constituent-profile-elements", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="constituent-profile-elements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

22546 })

22547

22548 self.__constituent_profile_elements = t

22549 if hasattr(self, '_set'):

22550 self._set()

22551

22552 def _unset_constituent_profile_elements(self):

22553 self.__constituent_profile_elements = YANGDynClass(base=YANGListType("id",yc_constituent_profile_elements_etsi_nfv_nsd__nsd_nsd_vnffgd_nfpd_position_desc_id_cp_profile_id_constituent_profile_elements, yang_name="constituent-profile-elements", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="constituent-profile-elements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

22554

22555 id = __builtin__.property(_get_id, _set_id)

22556 constituent_profile_elements = __builtin__.property(_get_constituent_profile_elements, _set_constituent_profile_elements)

22557

22558

22559 _pyangbind_elements = OrderedDict([('id', id), ('constituent_profile_elements', constituent_profile_elements), ])

22560

22561

22562 class yc_match_attributes_etsi_nfv_nsd__nsd_nsd_vnffgd_nfpd_position_desc_id_match_attributes(PybindBase):

22563 """

22564 This class was auto-generated by the PythonClass plugin for PYANG

22565 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/vnffgd/nfpd/position-desc-id/match-attributes. Each member element of

22566 the container is represented as a class variable - with a specific

22567 YANG type.

22568

22569 YANG Description: List of match attributes.

22570 """

22571 __slots__ = ('_path_helper', '_extmethods', '__id','__ip_proto','__source_ip_address','__destination_ip_address','__source_port','__destination_port','__constituent_base_element_id','__constituent_cpd_id',)

22572

22573 _yang_name = 'match-attributes'

22574 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

22575

22576 _pybind_generated_by = 'container'

22577

22578 def __init__(self, *args, **kwargs):

22579

22580 self._path_helper = False

22581

22582 self._extmethods = False

22583 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='string', is_config=True)

22584 self.__ip_proto = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), is_leaf=True, yang_name="ip-proto", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='uint8', is_config=True)

22585 self.__source_ip_address = YANGDynClass(base=[RestrictedClassType(base_type=str, restriction_dict={'pattern': '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\\p{N}\\p{L}]+)?'}),RestrictedClassType(base_type=str, restriction_dict={'pattern': '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))(%[\\p{N}\\p{L}]+)?'}),], is_leaf=True, yang_name="source-ip-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='inet:ip-address', is_config=True)

22586 self.__destination_ip_address = YANGDynClass(base=[RestrictedClassType(base_type=str, restriction_dict={'pattern': '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\\p{N}\\p{L}]+)?'}),RestrictedClassType(base_type=str, restriction_dict={'pattern': '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))(%[\\p{N}\\p{L}]+)?'}),], is_leaf=True, yang_name="destination-ip-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='inet:ip-address', is_config=True)

22587 self.__source_port = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), restriction_dict={'range': ['0..65535']}), is_leaf=True, yang_name="source-port", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='inet:port-number', is_config=True)

22588 self.__destination_port = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), restriction_dict={'range': ['0..65535']}), is_leaf=True, yang_name="destination-port", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='inet:port-number', is_config=True)

22589 self.__constituent_base_element_id = YANGDynClass(base=str, is_leaf=True, yang_name="constituent-base-element-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='leafref', is_config=True)

22590 self.__constituent_cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='string', is_config=True)

22591

22592 load = kwargs.pop("load", None)

22593 if args:

22594 if len(args) > 1:

22595 raise TypeError("cannot create a YANG container with >1 argument")

22596 all_attr = True

22597 for e in self._pyangbind_elements:

22598 if not hasattr(args[0], e):

22599 all_attr = False

22600 break

22601 if not all_attr:

22602 raise ValueError("Supplied object did not have the correct attributes")

22603 for e in self._pyangbind_elements:

22604 nobj = getattr(args[0], e)

22605 if nobj._changed() is False:

22606 continue

22607 setmethod = getattr(self, "_set_%s" % e)

22608 if load is None:

22609 setmethod(getattr(args[0], e))

22610 else:

22611 setmethod(getattr(args[0], e), load=load)

22612

22613 def _path(self):

22614 if hasattr(self, "_parent"):

22615 return self._parent._path()+[self._yang_name]

22616 else:

22617 return ['nsd', 'nsd', 'vnffgd', 'nfpd', 'position-desc-id', 'match-attributes']

22618

22619 def _get_id(self):

22620 """

22621 Getter method for id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/match_attributes/id (string)

22622

22623 YANG Description: Identifier for the classifier match attribute rule.

22624 """

22625 return self.__id

22626

22627 def _set_id(self, v, load=False):

22628 """

22629 Setter method for id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/match_attributes/id (string)

22630 If this variable is read-only (config: false) in the

22631 source YANG file, then _set_id is considered as a private

22632 method. Backends looking to populate this variable should

22633 do so via calling thisObj._set_id() directly.

22634

22635 YANG Description: Identifier for the classifier match attribute rule.

22636 """

22637 parent = getattr(self, "_parent", None)

22638 if parent is not None and load is False:

22639 raise AttributeError("Cannot set keys directly when" +

22640 " within an instantiated list")

22641

22642 if hasattr(v, "_utype"):

22643 v = v._utype(v)

22644 try:

22645 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='string', is_config=True)

22646 except (TypeError, ValueError):

22647 raise ValueError({

22648 'error-string': """id must be of a type compatible with string""",

22649 'defined-type': "string",

22650 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='string', is_config=True)""",

22651 })

22652

22653 self.__id = t

22654 if hasattr(self, '_set'):

22655 self._set()

22656

22657 def _unset_id(self):

22658 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='string', is_config=True)

22659

22660

22661 def _get_ip_proto(self):

22662 """

22663 Getter method for ip_proto, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/match_attributes/ip_proto (uint8)

22664

22665 YANG Description: IP Protocol.

22666 """

22667 return self.__ip_proto

22668

22669 def _set_ip_proto(self, v, load=False):

22670 """

22671 Setter method for ip_proto, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/match_attributes/ip_proto (uint8)

22672 If this variable is read-only (config: false) in the

22673 source YANG file, then _set_ip_proto is considered as a private

22674 method. Backends looking to populate this variable should

22675 do so via calling thisObj._set_ip_proto() directly.

22676

22677 YANG Description: IP Protocol.

22678 """

22679 if hasattr(v, "_utype"):

22680 v = v._utype(v)

22681 try:

22682 t = YANGDynClass(v,base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), is_leaf=True, yang_name="ip-proto", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='uint8', is_config=True)

22683 except (TypeError, ValueError):

22684 raise ValueError({

22685 'error-string': """ip_proto must be of a type compatible with uint8""",

22686 'defined-type': "uint8",

22687 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), is_leaf=True, yang_name="ip-proto", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='uint8', is_config=True)""",

22688 })

22689

22690 self.__ip_proto = t

22691 if hasattr(self, '_set'):

22692 self._set()

22693

22694 def _unset_ip_proto(self):

22695 self.__ip_proto = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..255']}, int_size=8), is_leaf=True, yang_name="ip-proto", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='uint8', is_config=True)

22696

22697

22698 def _get_source_ip_address(self):

22699 """

22700 Getter method for source_ip_address, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/match_attributes/source_ip_address (inet:ip-address)

22701

22702 YANG Description: Source IP address.

22703 """

22704 return self.__source_ip_address

22705

22706 def _set_source_ip_address(self, v, load=False):

22707 """

22708 Setter method for source_ip_address, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/match_attributes/source_ip_address (inet:ip-address)

22709 If this variable is read-only (config: false) in the

22710 source YANG file, then _set_source_ip_address is considered as a private

22711 method. Backends looking to populate this variable should

22712 do so via calling thisObj._set_source_ip_address() directly.

22713

22714 YANG Description: Source IP address.

22715 """

22716 if hasattr(v, "_utype"):

22717 v = v._utype(v)

22718 try:

22719 t = YANGDynClass(v,base=[RestrictedClassType(base_type=str, restriction_dict={'pattern': '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\\p{N}\\p{L}]+)?'}),RestrictedClassType(base_type=str, restriction_dict={'pattern': '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))(%[\\p{N}\\p{L}]+)?'}),], is_leaf=True, yang_name="source-ip-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='inet:ip-address', is_config=True)

22720 except (TypeError, ValueError):

22721 raise ValueError({

22722 'error-string': """source_ip_address must be of a type compatible with inet:ip-address""",

22723 'defined-type': "inet:ip-address",

22724 'generated-type': """YANGDynClass(base=[RestrictedClassType(base_type=str, restriction_dict={'pattern': '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\\p{N}\\p{L}]+)?'}),RestrictedClassType(base_type=str, restriction_dict={'pattern': '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))(%[\\p{N}\\p{L}]+)?'}),], is_leaf=True, yang_name="source-ip-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='inet:ip-address', is_config=True)""",

22725 })

22726

22727 self.__source_ip_address = t

22728 if hasattr(self, '_set'):

22729 self._set()

22730

22731 def _unset_source_ip_address(self):

22732 self.__source_ip_address = YANGDynClass(base=[RestrictedClassType(base_type=str, restriction_dict={'pattern': '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\\p{N}\\p{L}]+)?'}),RestrictedClassType(base_type=str, restriction_dict={'pattern': '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))(%[\\p{N}\\p{L}]+)?'}),], is_leaf=True, yang_name="source-ip-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='inet:ip-address', is_config=True)

22733

22734

22735 def _get_destination_ip_address(self):

22736 """

22737 Getter method for destination_ip_address, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/match_attributes/destination_ip_address (inet:ip-address)

22738

22739 YANG Description: Destination IP address.

22740 """

22741 return self.__destination_ip_address

22742

22743 def _set_destination_ip_address(self, v, load=False):

22744 """

22745 Setter method for destination_ip_address, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/match_attributes/destination_ip_address (inet:ip-address)

22746 If this variable is read-only (config: false) in the

22747 source YANG file, then _set_destination_ip_address is considered as a private

22748 method. Backends looking to populate this variable should

22749 do so via calling thisObj._set_destination_ip_address() directly.

22750

22751 YANG Description: Destination IP address.

22752 """

22753 if hasattr(v, "_utype"):

22754 v = v._utype(v)

22755 try:

22756 t = YANGDynClass(v,base=[RestrictedClassType(base_type=str, restriction_dict={'pattern': '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\\p{N}\\p{L}]+)?'}),RestrictedClassType(base_type=str, restriction_dict={'pattern': '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))(%[\\p{N}\\p{L}]+)?'}),], is_leaf=True, yang_name="destination-ip-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='inet:ip-address', is_config=True)

22757 except (TypeError, ValueError):

22758 raise ValueError({

22759 'error-string': """destination_ip_address must be of a type compatible with inet:ip-address""",

22760 'defined-type': "inet:ip-address",

22761 'generated-type': """YANGDynClass(base=[RestrictedClassType(base_type=str, restriction_dict={'pattern': '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\\p{N}\\p{L}]+)?'}),RestrictedClassType(base_type=str, restriction_dict={'pattern': '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))(%[\\p{N}\\p{L}]+)?'}),], is_leaf=True, yang_name="destination-ip-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='inet:ip-address', is_config=True)""",

22762 })

22763

22764 self.__destination_ip_address = t

22765 if hasattr(self, '_set'):

22766 self._set()

22767

22768 def _unset_destination_ip_address(self):

22769 self.__destination_ip_address = YANGDynClass(base=[RestrictedClassType(base_type=str, restriction_dict={'pattern': '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\\p{N}\\p{L}]+)?'}),RestrictedClassType(base_type=str, restriction_dict={'pattern': '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))(%[\\p{N}\\p{L}]+)?'}),], is_leaf=True, yang_name="destination-ip-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='inet:ip-address', is_config=True)

22770

22771

22772 def _get_source_port(self):

22773 """

22774 Getter method for source_port, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/match_attributes/source_port (inet:port-number)

22775

22776 YANG Description: Source port number.

22777 """

22778 return self.__source_port

22779

22780 def _set_source_port(self, v, load=False):

22781 """

22782 Setter method for source_port, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/match_attributes/source_port (inet:port-number)

22783 If this variable is read-only (config: false) in the

22784 source YANG file, then _set_source_port is considered as a private

22785 method. Backends looking to populate this variable should

22786 do so via calling thisObj._set_source_port() directly.

22787

22788 YANG Description: Source port number.

22789 """

22790 if hasattr(v, "_utype"):

22791 v = v._utype(v)

22792 try:

22793 t = YANGDynClass(v,base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), restriction_dict={'range': ['0..65535']}), is_leaf=True, yang_name="source-port", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='inet:port-number', is_config=True)

22794 except (TypeError, ValueError):

22795 raise ValueError({

22796 'error-string': """source_port must be of a type compatible with inet:port-number""",

22797 'defined-type': "inet:port-number",

22798 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), restriction_dict={'range': ['0..65535']}), is_leaf=True, yang_name="source-port", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='inet:port-number', is_config=True)""",

22799 })

22800

22801 self.__source_port = t

22802 if hasattr(self, '_set'):

22803 self._set()

22804

22805 def _unset_source_port(self):

22806 self.__source_port = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), restriction_dict={'range': ['0..65535']}), is_leaf=True, yang_name="source-port", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='inet:port-number', is_config=True)

22807

22808

22809 def _get_destination_port(self):

22810 """

22811 Getter method for destination_port, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/match_attributes/destination_port (inet:port-number)

22812

22813 YANG Description: Destination port number.

22814 """

22815 return self.__destination_port

22816

22817 def _set_destination_port(self, v, load=False):

22818 """

22819 Setter method for destination_port, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/match_attributes/destination_port (inet:port-number)

22820 If this variable is read-only (config: false) in the

22821 source YANG file, then _set_destination_port is considered as a private

22822 method. Backends looking to populate this variable should

22823 do so via calling thisObj._set_destination_port() directly.

22824

22825 YANG Description: Destination port number.

22826 """

22827 if hasattr(v, "_utype"):

22828 v = v._utype(v)

22829 try:

22830 t = YANGDynClass(v,base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), restriction_dict={'range': ['0..65535']}), is_leaf=True, yang_name="destination-port", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='inet:port-number', is_config=True)

22831 except (TypeError, ValueError):

22832 raise ValueError({

22833 'error-string': """destination_port must be of a type compatible with inet:port-number""",

22834 'defined-type': "inet:port-number",

22835 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), restriction_dict={'range': ['0..65535']}), is_leaf=True, yang_name="destination-port", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='inet:port-number', is_config=True)""",

22836 })

22837

22838 self.__destination_port = t

22839 if hasattr(self, '_set'):

22840 self._set()

22841

22842 def _unset_destination_port(self):

22843 self.__destination_port = YANGDynClass(base=RestrictedClassType(base_type=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), restriction_dict={'range': ['0..65535']}), is_leaf=True, yang_name="destination-port", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='inet:port-number', is_config=True)

22844

22845

22846 def _get_constituent_base_element_id(self):

22847 """

22848 Getter method for constituent_base_element_id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/match_attributes/constituent_base_element_id (leafref)

22849

22850 YANG Description: Refer to the profile of source NS constituent.

22851 """

22852 return self.__constituent_base_element_id

22853

22854 def _set_constituent_base_element_id(self, v, load=False):

22855 """

22856 Setter method for constituent_base_element_id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/match_attributes/constituent_base_element_id (leafref)

22857 If this variable is read-only (config: false) in the

22858 source YANG file, then _set_constituent_base_element_id is considered as a private

22859 method. Backends looking to populate this variable should

22860 do so via calling thisObj._set_constituent_base_element_id() directly.

22861

22862 YANG Description: Refer to the profile of source NS constituent.

22863 """

22864 if hasattr(v, "_utype"):

22865 v = v._utype(v)

22866 try:

22867 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="constituent-base-element-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='leafref', is_config=True)

22868 except (TypeError, ValueError):

22869 raise ValueError({

22870 'error-string': """constituent_base_element_id must be of a type compatible with leafref""",

22871 'defined-type': "leafref",

22872 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="constituent-base-element-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='leafref', is_config=True)""",

22873 })

22874

22875 self.__constituent_base_element_id = t

22876 if hasattr(self, '_set'):

22877 self._set()

22878

22879 def _unset_constituent_base_element_id(self):

22880 self.__constituent_base_element_id = YANGDynClass(base=str, is_leaf=True, yang_name="constituent-base-element-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='leafref', is_config=True)

22881

22882

22883 def _get_constituent_cpd_id(self):

22884 """

22885 Getter method for constituent_cpd_id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/match_attributes/constituent_cpd_id (string)

22886

22887 YANG Description: Logical source port.

22888 """

22889 return self.__constituent_cpd_id

22890

22891 def _set_constituent_cpd_id(self, v, load=False):

22892 """

22893 Setter method for constituent_cpd_id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/match_attributes/constituent_cpd_id (string)

22894 If this variable is read-only (config: false) in the

22895 source YANG file, then _set_constituent_cpd_id is considered as a private

22896 method. Backends looking to populate this variable should

22897 do so via calling thisObj._set_constituent_cpd_id() directly.

22898

22899 YANG Description: Logical source port.

22900 """

22901 if hasattr(v, "_utype"):

22902 v = v._utype(v)

22903 try:

22904 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='string', is_config=True)

22905 except (TypeError, ValueError):

22906 raise ValueError({

22907 'error-string': """constituent_cpd_id must be of a type compatible with string""",

22908 'defined-type': "string",

22909 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='string', is_config=True)""",

22910 })

22911

22912 self.__constituent_cpd_id = t

22913 if hasattr(self, '_set'):

22914 self._set()

22915

22916 def _unset_constituent_cpd_id(self):

22917 self.__constituent_cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='string', is_config=True)

22918

22919 id = __builtin__.property(_get_id, _set_id)

22920 ip_proto = __builtin__.property(_get_ip_proto, _set_ip_proto)

22921 source_ip_address = __builtin__.property(_get_source_ip_address, _set_source_ip_address)

22922 destination_ip_address = __builtin__.property(_get_destination_ip_address, _set_destination_ip_address)

22923 source_port = __builtin__.property(_get_source_port, _set_source_port)

22924 destination_port = __builtin__.property(_get_destination_port, _set_destination_port)

22925 constituent_base_element_id = __builtin__.property(_get_constituent_base_element_id, _set_constituent_base_element_id)

22926 constituent_cpd_id = __builtin__.property(_get_constituent_cpd_id, _set_constituent_cpd_id)

22927

22928

22929 _pyangbind_elements = OrderedDict([('id', id), ('ip_proto', ip_proto), ('source_ip_address', source_ip_address), ('destination_ip_address', destination_ip_address), ('source_port', source_port), ('destination_port', destination_port), ('constituent_base_element_id', constituent_base_element_id), ('constituent_cpd_id', constituent_cpd_id), ])

22930

22931

22932 class yc_position_desc_id_etsi_nfv_nsd__nsd_nsd_vnffgd_nfpd_position_desc_id(PybindBase):

22933 """

22934 This class was auto-generated by the PythonClass plugin for PYANG

22935 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/vnffgd/nfpd/position-desc-id. Each member element of

22936 the container is represented as a class variable - with a specific

22937 YANG type.

22938

22939 YANG Description: Describes a position in the NFP in terms of one or

22940 more CP profiles and rules for distributing the

22941 traffic among CP and SAP instances created from the

22942 CPD or SAPD associated to these profiles. This shall

22943 be connection point profile, which is either a CPD

22944 associated with the VnfProfile of a constituent VNF,

22945 or a CPD associated with the PnfProfile of a

22946 constituent PNF, or a SAPD associated with the

22947 NsProfile of a nested NS. The related VnfProfile,

22948 PnfProfile and NsProfile shall be included in the

22949 parent VNFFGD.

22950 """

22951 __slots__ = ('_path_helper', '_extmethods', '__id','__cp_profile_id','__match_attributes','__nfp_position_element_id',)

22952

22953 _yang_name = 'position-desc-id'

22954 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

22955

22956 _pybind_generated_by = 'container'

22957

22958 def __init__(self, *args, **kwargs):

22959

22960 self._path_helper = False

22961

22962 self._extmethods = False

22963 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

22964 self.__cp_profile_id = YANGDynClass(base=YANGListType("id",yc_cp_profile_id_etsi_nfv_nsd__nsd_nsd_vnffgd_nfpd_position_desc_id_cp_profile_id, yang_name="cp-profile-id", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="cp-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

22965 self.__match_attributes = YANGDynClass(base=YANGListType("id",yc_match_attributes_etsi_nfv_nsd__nsd_nsd_vnffgd_nfpd_position_desc_id_match_attributes, yang_name="match-attributes", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="match-attributes", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='list', is_config=True)

22966 self.__nfp_position_element_id = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="nfp-position-element-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='leafref', is_config=True)

22967

22968 load = kwargs.pop("load", None)

22969 if args:

22970 if len(args) > 1:

22971 raise TypeError("cannot create a YANG container with >1 argument")

22972 all_attr = True

22973 for e in self._pyangbind_elements:

22974 if not hasattr(args[0], e):

22975 all_attr = False

22976 break

22977 if not all_attr:

22978 raise ValueError("Supplied object did not have the correct attributes")

22979 for e in self._pyangbind_elements:

22980 nobj = getattr(args[0], e)

22981 if nobj._changed() is False:

22982 continue

22983 setmethod = getattr(self, "_set_%s" % e)

22984 if load is None:

22985 setmethod(getattr(args[0], e))

22986 else:

22987 setmethod(getattr(args[0], e), load=load)

22988

22989 def _path(self):

22990 if hasattr(self, "_parent"):

22991 return self._parent._path()+[self._yang_name]

22992 else:

22993 return ['nsd', 'nsd', 'vnffgd', 'nfpd', 'position-desc-id']

22994

22995 def _get_id(self):

22996 """

22997 Getter method for id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/id (string)

22998

22999 YANG Description: Identifier of this NfpPositionDesc element.

23000 """

23001 return self.__id

23002

23003 def _set_id(self, v, load=False):

23004 """

23005 Setter method for id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/id (string)

23006 If this variable is read-only (config: false) in the

23007 source YANG file, then _set_id is considered as a private

23008 method. Backends looking to populate this variable should

23009 do so via calling thisObj._set_id() directly.

23010

23011 YANG Description: Identifier of this NfpPositionDesc element.

23012 """

23013 parent = getattr(self, "_parent", None)

23014 if parent is not None and load is False:

23015 raise AttributeError("Cannot set keys directly when" +

23016 " within an instantiated list")

23017

23018 if hasattr(v, "_utype"):

23019 v = v._utype(v)

23020 try:

23021 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

23022 except (TypeError, ValueError):

23023 raise ValueError({

23024 'error-string': """id must be of a type compatible with string""",

23025 'defined-type': "string",

23026 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

23027 })

23028

23029 self.__id = t

23030 if hasattr(self, '_set'):

23031 self._set()

23032

23033 def _unset_id(self):

23034 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

23035

23036

23037 def _get_cp_profile_id(self):

23038 """

23039 Getter method for cp_profile_id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/cp_profile_id (list)

23040

23041 YANG Description: References the profile of a connection point to be

23042 traversed by the traffic flows matching the criteria.

23043 This shall be a connection point attached to one of

23044 the constituent VNFs and PNFs of the parent VNFFG,

23045 or a SAP of one of the constituent nested NSs of the

23046 parent VNFFG.

23047 """

23048 return self.__cp_profile_id

23049

23050 def _set_cp_profile_id(self, v, load=False):

23051 """

23052 Setter method for cp_profile_id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/cp_profile_id (list)

23053 If this variable is read-only (config: false) in the

23054 source YANG file, then _set_cp_profile_id is considered as a private

23055 method. Backends looking to populate this variable should

23056 do so via calling thisObj._set_cp_profile_id() directly.

23057

23058 YANG Description: References the profile of a connection point to be

23059 traversed by the traffic flows matching the criteria.

23060 This shall be a connection point attached to one of

23061 the constituent VNFs and PNFs of the parent VNFFG,

23062 or a SAP of one of the constituent nested NSs of the

23063 parent VNFFG.

23064 """

23065 if hasattr(v, "_utype"):

23066 v = v._utype(v)

23067 try:

23068 t = YANGDynClass(v,base=YANGListType("id",yc_cp_profile_id_etsi_nfv_nsd__nsd_nsd_vnffgd_nfpd_position_desc_id_cp_profile_id, yang_name="cp-profile-id", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="cp-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

23069 except (TypeError, ValueError):

23070 raise ValueError({

23071 'error-string': """cp_profile_id must be of a type compatible with list""",

23072 'defined-type': "list",

23073 'generated-type': """YANGDynClass(base=YANGListType("id",yc_cp_profile_id_etsi_nfv_nsd__nsd_nsd_vnffgd_nfpd_position_desc_id_cp_profile_id, yang_name="cp-profile-id", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="cp-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

23074 })

23075

23076 self.__cp_profile_id = t

23077 if hasattr(self, '_set'):

23078 self._set()

23079

23080 def _unset_cp_profile_id(self):

23081 self.__cp_profile_id = YANGDynClass(base=YANGListType("id",yc_cp_profile_id_etsi_nfv_nsd__nsd_nsd_vnffgd_nfpd_position_desc_id_cp_profile_id, yang_name="cp-profile-id", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="cp-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

23082

23083

23084 def _get_match_attributes(self):

23085 """

23086 Getter method for match_attributes, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/match_attributes (list)

23087

23088 YANG Description: List of match attributes.

23089 """

23090 return self.__match_attributes

23091

23092 def _set_match_attributes(self, v, load=False):

23093 """

23094 Setter method for match_attributes, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/match_attributes (list)

23095 If this variable is read-only (config: false) in the

23096 source YANG file, then _set_match_attributes is considered as a private

23097 method. Backends looking to populate this variable should

23098 do so via calling thisObj._set_match_attributes() directly.

23099

23100 YANG Description: List of match attributes.

23101 """

23102 if hasattr(v, "_utype"):

23103 v = v._utype(v)

23104 try:

23105 t = YANGDynClass(v,base=YANGListType("id",yc_match_attributes_etsi_nfv_nsd__nsd_nsd_vnffgd_nfpd_position_desc_id_match_attributes, yang_name="match-attributes", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="match-attributes", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='list', is_config=True)

23106 except (TypeError, ValueError):

23107 raise ValueError({

23108 'error-string': """match_attributes must be of a type compatible with list""",

23109 'defined-type': "list",

23110 'generated-type': """YANGDynClass(base=YANGListType("id",yc_match_attributes_etsi_nfv_nsd__nsd_nsd_vnffgd_nfpd_position_desc_id_match_attributes, yang_name="match-attributes", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="match-attributes", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='list', is_config=True)""",

23111 })

23112

23113 self.__match_attributes = t

23114 if hasattr(self, '_set'):

23115 self._set()

23116

23117 def _unset_match_attributes(self):

23118 self.__match_attributes = YANGDynClass(base=YANGListType("id",yc_match_attributes_etsi_nfv_nsd__nsd_nsd_vnffgd_nfpd_position_desc_id_match_attributes, yang_name="match-attributes", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="match-attributes", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='list', is_config=True)

23119

23120

23121 def _get_nfp_position_element_id(self):

23122 """

23123 Getter method for nfp_position_element_id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/nfp_position_element_id (leafref)

23124

23125 YANG Description: References one or a pair of CPDs or SAPDs.

23126 """

23127 return self.__nfp_position_element_id

23128

23129 def _set_nfp_position_element_id(self, v, load=False):

23130 """

23131 Setter method for nfp_position_element_id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id/nfp_position_element_id (leafref)

23132 If this variable is read-only (config: false) in the

23133 source YANG file, then _set_nfp_position_element_id is considered as a private

23134 method. Backends looking to populate this variable should

23135 do so via calling thisObj._set_nfp_position_element_id() directly.

23136

23137 YANG Description: References one or a pair of CPDs or SAPDs.

23138 """

23139 if hasattr(v, "_utype"):

23140 v = v._utype(v)

23141 try:

23142 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="nfp-position-element-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='leafref', is_config=True)

23143 except (TypeError, ValueError):

23144 raise ValueError({

23145 'error-string': """nfp_position_element_id must be of a type compatible with leafref""",

23146 'defined-type': "leafref",

23147 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="nfp-position-element-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='leafref', is_config=True)""",

23148 })

23149

23150 self.__nfp_position_element_id = t

23151 if hasattr(self, '_set'):

23152 self._set()

23153

23154 def _unset_nfp_position_element_id(self):

23155 self.__nfp_position_element_id = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="nfp-position-element-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='leafref', is_config=True)

23156

23157 id = __builtin__.property(_get_id, _set_id)

23158 cp_profile_id = __builtin__.property(_get_cp_profile_id, _set_cp_profile_id)

23159 match_attributes = __builtin__.property(_get_match_attributes, _set_match_attributes)

23160 nfp_position_element_id = __builtin__.property(_get_nfp_position_element_id, _set_nfp_position_element_id)

23161

23162

23163 _pyangbind_elements = OrderedDict([('id', id), ('cp_profile_id', cp_profile_id), ('match_attributes', match_attributes), ('nfp_position_element_id', nfp_position_element_id), ])

23164

23165

23166 class yc_nfpd_etsi_nfv_nsd__nsd_nsd_vnffgd_nfpd(PybindBase):

23167 """

23168 This class was auto-generated by the PythonClass plugin for PYANG

23169 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/vnffgd/nfpd. Each member element of

23170 the container is represented as a class variable - with a specific

23171 YANG type.

23172

23173 YANG Description: The network forwarding path associated to the VNFFG.

23174 """

23175 __slots__ = ('_path_helper', '_extmethods', '__id','__rule','__position_desc_id',)

23176

23177 _yang_name = 'nfpd'

23178 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

23179

23180 _pybind_generated_by = 'container'

23181

23182 def __init__(self, *args, **kwargs):

23183

23184 self._path_helper = False

23185

23186 self._extmethods = False

23187 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

23188 self.__rule = YANGDynClass(base=str, is_leaf=True, yang_name="rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

23189 self.__position_desc_id = YANGDynClass(base=YANGListType("id",yc_position_desc_id_etsi_nfv_nsd__nsd_nsd_vnffgd_nfpd_position_desc_id, yang_name="position-desc-id", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="position-desc-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

23190

23191 load = kwargs.pop("load", None)

23192 if args:

23193 if len(args) > 1:

23194 raise TypeError("cannot create a YANG container with >1 argument")

23195 all_attr = True

23196 for e in self._pyangbind_elements:

23197 if not hasattr(args[0], e):

23198 all_attr = False

23199 break

23200 if not all_attr:

23201 raise ValueError("Supplied object did not have the correct attributes")

23202 for e in self._pyangbind_elements:

23203 nobj = getattr(args[0], e)

23204 if nobj._changed() is False:

23205 continue

23206 setmethod = getattr(self, "_set_%s" % e)

23207 if load is None:

23208 setmethod(getattr(args[0], e))

23209 else:

23210 setmethod(getattr(args[0], e), load=load)

23211

23212 def _path(self):

23213 if hasattr(self, "_parent"):

23214 return self._parent._path()+[self._yang_name]

23215 else:

23216 return ['nsd', 'nsd', 'vnffgd', 'nfpd']

23217

23218 def _get_id(self):

23219 """

23220 Getter method for id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/id (string)

23221

23222 YANG Description: Identifies this nfpd information element within a

23223 VNFFGD.

23224 """

23225 return self.__id

23226

23227 def _set_id(self, v, load=False):

23228 """

23229 Setter method for id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/id (string)

23230 If this variable is read-only (config: false) in the

23231 source YANG file, then _set_id is considered as a private

23232 method. Backends looking to populate this variable should

23233 do so via calling thisObj._set_id() directly.

23234

23235 YANG Description: Identifies this nfpd information element within a

23236 VNFFGD.

23237 """

23238 parent = getattr(self, "_parent", None)

23239 if parent is not None and load is False:

23240 raise AttributeError("Cannot set keys directly when" +

23241 " within an instantiated list")

23242

23243 if hasattr(v, "_utype"):

23244 v = v._utype(v)

23245 try:

23246 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

23247 except (TypeError, ValueError):

23248 raise ValueError({

23249 'error-string': """id must be of a type compatible with string""",

23250 'defined-type': "string",

23251 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

23252 })

23253

23254 self.__id = t

23255 if hasattr(self, '_set'):

23256 self._set()

23257

23258 def _unset_id(self):

23259 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

23260

23261

23262 def _get_rule(self):

23263 """

23264 Getter method for rule, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/rule (string)

23265

23266 YANG Description: Provides an NFP classification and selection rule.

23267 The rule may be expressed as a criteria constructed

23268 out of atomic assertions linked by Boolean operators

23269 AND, OR and NOT.

23270 """

23271 return self.__rule

23272

23273 def _set_rule(self, v, load=False):

23274 """

23275 Setter method for rule, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/rule (string)

23276 If this variable is read-only (config: false) in the

23277 source YANG file, then _set_rule is considered as a private

23278 method. Backends looking to populate this variable should

23279 do so via calling thisObj._set_rule() directly.

23280

23281 YANG Description: Provides an NFP classification and selection rule.

23282 The rule may be expressed as a criteria constructed

23283 out of atomic assertions linked by Boolean operators

23284 AND, OR and NOT.

23285 """

23286 if hasattr(v, "_utype"):

23287 v = v._utype(v)

23288 try:

23289 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

23290 except (TypeError, ValueError):

23291 raise ValueError({

23292 'error-string': """rule must be of a type compatible with string""",

23293 'defined-type': "string",

23294 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

23295 })

23296

23297 self.__rule = t

23298 if hasattr(self, '_set'):

23299 self._set()

23300

23301 def _unset_rule(self):

23302 self.__rule = YANGDynClass(base=str, is_leaf=True, yang_name="rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

23303

23304

23305 def _get_position_desc_id(self):

23306 """

23307 Getter method for position_desc_id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id (list)

23308

23309 YANG Description: Describes a position in the NFP in terms of one or

23310 more CP profiles and rules for distributing the

23311 traffic among CP and SAP instances created from the

23312 CPD or SAPD associated to these profiles. This shall

23313 be connection point profile, which is either a CPD

23314 associated with the VnfProfile of a constituent VNF,

23315 or a CPD associated with the PnfProfile of a

23316 constituent PNF, or a SAPD associated with the

23317 NsProfile of a nested NS. The related VnfProfile,

23318 PnfProfile and NsProfile shall be included in the

23319 parent VNFFGD.

23320 """

23321 return self.__position_desc_id

23322

23323 def _set_position_desc_id(self, v, load=False):

23324 """

23325 Setter method for position_desc_id, mapped from YANG variable /nsd/nsd/vnffgd/nfpd/position_desc_id (list)

23326 If this variable is read-only (config: false) in the

23327 source YANG file, then _set_position_desc_id is considered as a private

23328 method. Backends looking to populate this variable should

23329 do so via calling thisObj._set_position_desc_id() directly.

23330

23331 YANG Description: Describes a position in the NFP in terms of one or

23332 more CP profiles and rules for distributing the

23333 traffic among CP and SAP instances created from the

23334 CPD or SAPD associated to these profiles. This shall

23335 be connection point profile, which is either a CPD

23336 associated with the VnfProfile of a constituent VNF,

23337 or a CPD associated with the PnfProfile of a

23338 constituent PNF, or a SAPD associated with the

23339 NsProfile of a nested NS. The related VnfProfile,

23340 PnfProfile and NsProfile shall be included in the

23341 parent VNFFGD.

23342 """

23343 if hasattr(v, "_utype"):

23344 v = v._utype(v)

23345 try:

23346 t = YANGDynClass(v,base=YANGListType("id",yc_position_desc_id_etsi_nfv_nsd__nsd_nsd_vnffgd_nfpd_position_desc_id, yang_name="position-desc-id", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="position-desc-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

23347 except (TypeError, ValueError):

23348 raise ValueError({

23349 'error-string': """position_desc_id must be of a type compatible with list""",

23350 'defined-type': "list",

23351 'generated-type': """YANGDynClass(base=YANGListType("id",yc_position_desc_id_etsi_nfv_nsd__nsd_nsd_vnffgd_nfpd_position_desc_id, yang_name="position-desc-id", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="position-desc-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

23352 })

23353

23354 self.__position_desc_id = t

23355 if hasattr(self, '_set'):

23356 self._set()

23357

23358 def _unset_position_desc_id(self):

23359 self.__position_desc_id = YANGDynClass(base=YANGListType("id",yc_position_desc_id_etsi_nfv_nsd__nsd_nsd_vnffgd_nfpd_position_desc_id, yang_name="position-desc-id", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="position-desc-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

23360

23361 id = __builtin__.property(_get_id, _set_id)

23362 rule = __builtin__.property(_get_rule, _set_rule)

23363 position_desc_id = __builtin__.property(_get_position_desc_id, _set_position_desc_id)

23364

23365

23366 _pyangbind_elements = OrderedDict([('id', id), ('rule', rule), ('position_desc_id', position_desc_id), ])

23367

23368

23369 class yc_nfp_position_element_etsi_nfv_nsd__nsd_nsd_vnffgd_nfp_position_element(PybindBase):

23370 """

23371 This class was auto-generated by the PythonClass plugin for PYANG

23372 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/vnffgd/nfp-position-element. Each member element of

23373 the container is represented as a class variable - with a specific

23374 YANG type.

23375 """

23376 __slots__ = ('_path_helper', '_extmethods', '__id',)

23377

23378 _yang_name = 'nfp-position-element'

23379 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

23380

23381 _pybind_generated_by = 'container'

23382

23383 def __init__(self, *args, **kwargs):

23384

23385 self._path_helper = False

23386

23387 self._extmethods = False

23388 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='string', is_config=True)

23389

23390 load = kwargs.pop("load", None)

23391 if args:

23392 if len(args) > 1:

23393 raise TypeError("cannot create a YANG container with >1 argument")

23394 all_attr = True

23395 for e in self._pyangbind_elements:

23396 if not hasattr(args[0], e):

23397 all_attr = False

23398 break

23399 if not all_attr:

23400 raise ValueError("Supplied object did not have the correct attributes")

23401 for e in self._pyangbind_elements:

23402 nobj = getattr(args[0], e)

23403 if nobj._changed() is False:

23404 continue

23405 setmethod = getattr(self, "_set_%s" % e)

23406 if load is None:

23407 setmethod(getattr(args[0], e))

23408 else:

23409 setmethod(getattr(args[0], e), load=load)

23410

23411 def _path(self):

23412 if hasattr(self, "_parent"):

23413 return self._parent._path()+[self._yang_name]

23414 else:

23415 return ['nsd', 'nsd', 'vnffgd', 'nfp-position-element']

23416

23417 def _get_id(self):

23418 """

23419 Getter method for id, mapped from YANG variable /nsd/nsd/vnffgd/nfp_position_element/id (string)

23420

23421 YANG Description: Identifier of this NfpPositionElemen information

23422 element. It uniquely identifies an

23423 NfpPositionElement.

23424 """

23425 return self.__id

23426

23427 def _set_id(self, v, load=False):

23428 """

23429 Setter method for id, mapped from YANG variable /nsd/nsd/vnffgd/nfp_position_element/id (string)

23430 If this variable is read-only (config: false) in the

23431 source YANG file, then _set_id is considered as a private

23432 method. Backends looking to populate this variable should

23433 do so via calling thisObj._set_id() directly.

23434

23435 YANG Description: Identifier of this NfpPositionElemen information

23436 element. It uniquely identifies an

23437 NfpPositionElement.

23438 """

23439 parent = getattr(self, "_parent", None)

23440 if parent is not None and load is False:

23441 raise AttributeError("Cannot set keys directly when" +

23442 " within an instantiated list")

23443

23444 if hasattr(v, "_utype"):

23445 v = v._utype(v)

23446 try:

23447 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='string', is_config=True)

23448 except (TypeError, ValueError):

23449 raise ValueError({

23450 'error-string': """id must be of a type compatible with string""",

23451 'defined-type': "string",

23452 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='string', is_config=True)""",

23453 })

23454

23455 self.__id = t

23456 if hasattr(self, '_set'):

23457 self._set()

23458

23459 def _unset_id(self):

23460 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='string', is_config=True)

23461

23462 id = __builtin__.property(_get_id, _set_id)

23463

23464

23465 _pyangbind_elements = OrderedDict([('id', id), ])

23466

23467

23468 class yc_vnffgd_etsi_nfv_nsd__nsd_nsd_vnffgd(PybindBase):

23469 """

23470 This class was auto-generated by the PythonClass plugin for PYANG

23471 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/vnffgd. Each member element of

23472 the container is represented as a class variable - with a specific

23473 YANG type.

23474

23475 YANG Description: Provides the descriptors of the applicable forwarding

23476 graphs.

23477 """

23478 __slots__ = ('_path_helper', '_extmethods', '__id','__vnf_profile_id','__pnf_profile_id','__nested_ns_profile_id','__virtual_link_profile_id','__cpd_pool','__nfpd','__nfp_position_element',)

23479

23480 _yang_name = 'vnffgd'

23481 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

23482

23483 _pybind_generated_by = 'container'

23484

23485 def __init__(self, *args, **kwargs):

23486

23487 self._path_helper = False

23488

23489 self._extmethods = False

23490 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

23491 self.__vnf_profile_id = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="vnf-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

23492 self.__pnf_profile_id = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="pnf-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

23493 self.__nested_ns_profile_id = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="nested-ns-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

23494 self.__virtual_link_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="virtual-link-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

23495 self.__cpd_pool = YANGDynClass(base=YANGListType("id",yc_cpd_pool_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool, yang_name="cpd-pool", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="cpd-pool", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

23496 self.__nfpd = YANGDynClass(base=YANGListType("id",yc_nfpd_etsi_nfv_nsd__nsd_nsd_vnffgd_nfpd, yang_name="nfpd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="nfpd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

23497 self.__nfp_position_element = YANGDynClass(base=YANGListType("id",yc_nfp_position_element_etsi_nfv_nsd__nsd_nsd_vnffgd_nfp_position_element, yang_name="nfp-position-element", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="nfp-position-element", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='list', is_config=True)

23498

23499 load = kwargs.pop("load", None)

23500 if args:

23501 if len(args) > 1:

23502 raise TypeError("cannot create a YANG container with >1 argument")

23503 all_attr = True

23504 for e in self._pyangbind_elements:

23505 if not hasattr(args[0], e):

23506 all_attr = False

23507 break

23508 if not all_attr:

23509 raise ValueError("Supplied object did not have the correct attributes")

23510 for e in self._pyangbind_elements:

23511 nobj = getattr(args[0], e)

23512 if nobj._changed() is False:

23513 continue

23514 setmethod = getattr(self, "_set_%s" % e)

23515 if load is None:

23516 setmethod(getattr(args[0], e))

23517 else:

23518 setmethod(getattr(args[0], e), load=load)

23519

23520 def _path(self):

23521 if hasattr(self, "_parent"):

23522 return self._parent._path()+[self._yang_name]

23523 else:

23524 return ['nsd', 'nsd', 'vnffgd']

23525

23526 def _get_id(self):

23527 """

23528 Getter method for id, mapped from YANG variable /nsd/nsd/vnffgd/id (string)

23529

23530 YANG Description: Identifier of this Vnffgd information element. It

23531 uniquely identifies a VNFFGD.

23532 """

23533 return self.__id

23534

23535 def _set_id(self, v, load=False):

23536 """

23537 Setter method for id, mapped from YANG variable /nsd/nsd/vnffgd/id (string)

23538 If this variable is read-only (config: false) in the

23539 source YANG file, then _set_id is considered as a private

23540 method. Backends looking to populate this variable should

23541 do so via calling thisObj._set_id() directly.

23542

23543 YANG Description: Identifier of this Vnffgd information element. It

23544 uniquely identifies a VNFFGD.

23545 """

23546 parent = getattr(self, "_parent", None)

23547 if parent is not None and load is False:

23548 raise AttributeError("Cannot set keys directly when" +

23549 " within an instantiated list")

23550

23551 if hasattr(v, "_utype"):

23552 v = v._utype(v)

23553 try:

23554 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

23555 except (TypeError, ValueError):

23556 raise ValueError({

23557 'error-string': """id must be of a type compatible with string""",

23558 'defined-type': "string",

23559 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

23560 })

23561

23562 self.__id = t

23563 if hasattr(self, '_set'):

23564 self._set()

23565

23566 def _unset_id(self):

23567 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

23568

23569

23570 def _get_vnf_profile_id(self):

23571 """

23572 Getter method for vnf_profile_id, mapped from YANG variable /nsd/nsd/vnffgd/vnf_profile_id (leafref)

23573

23574 YANG Description: References the VnfProfile of a constituent VNF.

23575 """

23576 return self.__vnf_profile_id

23577

23578 def _set_vnf_profile_id(self, v, load=False):

23579 """

23580 Setter method for vnf_profile_id, mapped from YANG variable /nsd/nsd/vnffgd/vnf_profile_id (leafref)

23581 If this variable is read-only (config: false) in the

23582 source YANG file, then _set_vnf_profile_id is considered as a private

23583 method. Backends looking to populate this variable should

23584 do so via calling thisObj._set_vnf_profile_id() directly.

23585

23586 YANG Description: References the VnfProfile of a constituent VNF.

23587 """

23588 if hasattr(v, "_utype"):

23589 v = v._utype(v)

23590 try:

23591 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="vnf-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

23592 except (TypeError, ValueError):

23593 raise ValueError({

23594 'error-string': """vnf_profile_id must be of a type compatible with leafref""",

23595 'defined-type': "leafref",

23596 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="vnf-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

23597 })

23598

23599 self.__vnf_profile_id = t

23600 if hasattr(self, '_set'):

23601 self._set()

23602

23603 def _unset_vnf_profile_id(self):

23604 self.__vnf_profile_id = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="vnf-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

23605

23606

23607 def _get_pnf_profile_id(self):

23608 """

23609 Getter method for pnf_profile_id, mapped from YANG variable /nsd/nsd/vnffgd/pnf_profile_id (leafref)

23610

23611 YANG Description: References the PnfProfile of a constituent PNF.

23612 """

23613 return self.__pnf_profile_id

23614

23615 def _set_pnf_profile_id(self, v, load=False):

23616 """

23617 Setter method for pnf_profile_id, mapped from YANG variable /nsd/nsd/vnffgd/pnf_profile_id (leafref)

23618 If this variable is read-only (config: false) in the

23619 source YANG file, then _set_pnf_profile_id is considered as a private

23620 method. Backends looking to populate this variable should

23621 do so via calling thisObj._set_pnf_profile_id() directly.

23622

23623 YANG Description: References the PnfProfile of a constituent PNF.

23624 """

23625 if hasattr(v, "_utype"):

23626 v = v._utype(v)

23627 try:

23628 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="pnf-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

23629 except (TypeError, ValueError):

23630 raise ValueError({

23631 'error-string': """pnf_profile_id must be of a type compatible with leafref""",

23632 'defined-type': "leafref",

23633 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="pnf-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

23634 })

23635

23636 self.__pnf_profile_id = t

23637 if hasattr(self, '_set'):

23638 self._set()

23639

23640 def _unset_pnf_profile_id(self):

23641 self.__pnf_profile_id = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="pnf-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

23642

23643

23644 def _get_nested_ns_profile_id(self):

23645 """

23646 Getter method for nested_ns_profile_id, mapped from YANG variable /nsd/nsd/vnffgd/nested_ns_profile_id (leafref)

23647

23648 YANG Description: References the NsProfile of a nestedNS.

23649 """

23650 return self.__nested_ns_profile_id

23651

23652 def _set_nested_ns_profile_id(self, v, load=False):

23653 """

23654 Setter method for nested_ns_profile_id, mapped from YANG variable /nsd/nsd/vnffgd/nested_ns_profile_id (leafref)

23655 If this variable is read-only (config: false) in the

23656 source YANG file, then _set_nested_ns_profile_id is considered as a private

23657 method. Backends looking to populate this variable should

23658 do so via calling thisObj._set_nested_ns_profile_id() directly.

23659

23660 YANG Description: References the NsProfile of a nestedNS.

23661 """

23662 if hasattr(v, "_utype"):

23663 v = v._utype(v)

23664 try:

23665 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="nested-ns-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

23666 except (TypeError, ValueError):

23667 raise ValueError({

23668 'error-string': """nested_ns_profile_id must be of a type compatible with leafref""",

23669 'defined-type': "leafref",

23670 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="nested-ns-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

23671 })

23672

23673 self.__nested_ns_profile_id = t

23674 if hasattr(self, '_set'):

23675 self._set()

23676

23677 def _unset_nested_ns_profile_id(self):

23678 self.__nested_ns_profile_id = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="nested-ns-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

23679

23680

23681 def _get_virtual_link_profile_id(self):

23682 """

23683 Getter method for virtual_link_profile_id, mapped from YANG variable /nsd/nsd/vnffgd/virtual_link_profile_id (leafref)

23684

23685 YANG Description: References the Virtual Link Profile of a constituent

23686 VL.

23687 """

23688 return self.__virtual_link_profile_id

23689

23690 def _set_virtual_link_profile_id(self, v, load=False):

23691 """

23692 Setter method for virtual_link_profile_id, mapped from YANG variable /nsd/nsd/vnffgd/virtual_link_profile_id (leafref)

23693 If this variable is read-only (config: false) in the

23694 source YANG file, then _set_virtual_link_profile_id is considered as a private

23695 method. Backends looking to populate this variable should

23696 do so via calling thisObj._set_virtual_link_profile_id() directly.

23697

23698 YANG Description: References the Virtual Link Profile of a constituent

23699 VL.

23700 """

23701 if hasattr(v, "_utype"):

23702 v = v._utype(v)

23703 try:

23704 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="virtual-link-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

23705 except (TypeError, ValueError):

23706 raise ValueError({

23707 'error-string': """virtual_link_profile_id must be of a type compatible with leafref""",

23708 'defined-type': "leafref",

23709 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="virtual-link-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

23710 })

23711

23712 self.__virtual_link_profile_id = t

23713 if hasattr(self, '_set'):

23714 self._set()

23715

23716 def _unset_virtual_link_profile_id(self):

23717 self.__virtual_link_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="virtual-link-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

23718

23719

23720 def _get_cpd_pool(self):

23721 """

23722 Getter method for cpd_pool, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool (list)

23723

23724 YANG Description: Describes a pool of descriptors of connection points

23725 attached to one of the constituent VNFs and PNFs and/or

23726 one of the SAPs of the parent NS or of a nested NS.

23727 """

23728 return self.__cpd_pool

23729

23730 def _set_cpd_pool(self, v, load=False):

23731 """

23732 Setter method for cpd_pool, mapped from YANG variable /nsd/nsd/vnffgd/cpd_pool (list)

23733 If this variable is read-only (config: false) in the

23734 source YANG file, then _set_cpd_pool is considered as a private

23735 method. Backends looking to populate this variable should

23736 do so via calling thisObj._set_cpd_pool() directly.

23737

23738 YANG Description: Describes a pool of descriptors of connection points

23739 attached to one of the constituent VNFs and PNFs and/or

23740 one of the SAPs of the parent NS or of a nested NS.

23741 """

23742 if hasattr(v, "_utype"):

23743 v = v._utype(v)

23744 try:

23745 t = YANGDynClass(v,base=YANGListType("id",yc_cpd_pool_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool, yang_name="cpd-pool", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="cpd-pool", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

23746 except (TypeError, ValueError):

23747 raise ValueError({

23748 'error-string': """cpd_pool must be of a type compatible with list""",

23749 'defined-type': "list",

23750 'generated-type': """YANGDynClass(base=YANGListType("id",yc_cpd_pool_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool, yang_name="cpd-pool", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="cpd-pool", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

23751 })

23752

23753 self.__cpd_pool = t

23754 if hasattr(self, '_set'):

23755 self._set()

23756

23757 def _unset_cpd_pool(self):

23758 self.__cpd_pool = YANGDynClass(base=YANGListType("id",yc_cpd_pool_etsi_nfv_nsd__nsd_nsd_vnffgd_cpd_pool, yang_name="cpd-pool", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="cpd-pool", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

23759

23760

23761 def _get_nfpd(self):

23762 """

23763 Getter method for nfpd, mapped from YANG variable /nsd/nsd/vnffgd/nfpd (list)

23764

23765 YANG Description: The network forwarding path associated to the VNFFG.

23766 """

23767 return self.__nfpd

23768

23769 def _set_nfpd(self, v, load=False):

23770 """

23771 Setter method for nfpd, mapped from YANG variable /nsd/nsd/vnffgd/nfpd (list)

23772 If this variable is read-only (config: false) in the

23773 source YANG file, then _set_nfpd is considered as a private

23774 method. Backends looking to populate this variable should

23775 do so via calling thisObj._set_nfpd() directly.

23776

23777 YANG Description: The network forwarding path associated to the VNFFG.

23778 """

23779 if hasattr(v, "_utype"):

23780 v = v._utype(v)

23781 try:

23782 t = YANGDynClass(v,base=YANGListType("id",yc_nfpd_etsi_nfv_nsd__nsd_nsd_vnffgd_nfpd, yang_name="nfpd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="nfpd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

23783 except (TypeError, ValueError):

23784 raise ValueError({

23785 'error-string': """nfpd must be of a type compatible with list""",

23786 'defined-type': "list",

23787 'generated-type': """YANGDynClass(base=YANGListType("id",yc_nfpd_etsi_nfv_nsd__nsd_nsd_vnffgd_nfpd, yang_name="nfpd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="nfpd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

23788 })

23789

23790 self.__nfpd = t

23791 if hasattr(self, '_set'):

23792 self._set()

23793

23794 def _unset_nfpd(self):

23795 self.__nfpd = YANGDynClass(base=YANGListType("id",yc_nfpd_etsi_nfv_nsd__nsd_nsd_vnffgd_nfpd, yang_name="nfpd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="nfpd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

23796

23797

23798 def _get_nfp_position_element(self):

23799 """

23800 Getter method for nfp_position_element, mapped from YANG variable /nsd/nsd/vnffgd/nfp_position_element (list)

23801 """

23802 return self.__nfp_position_element

23803

23804 def _set_nfp_position_element(self, v, load=False):

23805 """

23806 Setter method for nfp_position_element, mapped from YANG variable /nsd/nsd/vnffgd/nfp_position_element (list)

23807 If this variable is read-only (config: false) in the

23808 source YANG file, then _set_nfp_position_element is considered as a private

23809 method. Backends looking to populate this variable should

23810 do so via calling thisObj._set_nfp_position_element() directly.

23811 """

23812 if hasattr(v, "_utype"):

23813 v = v._utype(v)

23814 try:

23815 t = YANGDynClass(v,base=YANGListType("id",yc_nfp_position_element_etsi_nfv_nsd__nsd_nsd_vnffgd_nfp_position_element, yang_name="nfp-position-element", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="nfp-position-element", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='list', is_config=True)

23816 except (TypeError, ValueError):

23817 raise ValueError({

23818 'error-string': """nfp_position_element must be of a type compatible with list""",

23819 'defined-type': "list",

23820 'generated-type': """YANGDynClass(base=YANGListType("id",yc_nfp_position_element_etsi_nfv_nsd__nsd_nsd_vnffgd_nfp_position_element, yang_name="nfp-position-element", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="nfp-position-element", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='list', is_config=True)""",

23821 })

23822

23823 self.__nfp_position_element = t

23824 if hasattr(self, '_set'):

23825 self._set()

23826

23827 def _unset_nfp_position_element(self):

23828 self.__nfp_position_element = YANGDynClass(base=YANGListType("id",yc_nfp_position_element_etsi_nfv_nsd__nsd_nsd_vnffgd_nfp_position_element, yang_name="nfp-position-element", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="nfp-position-element", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:vnffgd', defining_module='vnffgd', yang_type='list', is_config=True)

23829

23830 id = __builtin__.property(_get_id, _set_id)

23831 vnf_profile_id = __builtin__.property(_get_vnf_profile_id, _set_vnf_profile_id)

23832 pnf_profile_id = __builtin__.property(_get_pnf_profile_id, _set_pnf_profile_id)

23833 nested_ns_profile_id = __builtin__.property(_get_nested_ns_profile_id, _set_nested_ns_profile_id)

23834 virtual_link_profile_id = __builtin__.property(_get_virtual_link_profile_id, _set_virtual_link_profile_id)

23835 cpd_pool = __builtin__.property(_get_cpd_pool, _set_cpd_pool)

23836 nfpd = __builtin__.property(_get_nfpd, _set_nfpd)

23837 nfp_position_element = __builtin__.property(_get_nfp_position_element, _set_nfp_position_element)

23838

23839

23840 _pyangbind_elements = OrderedDict([('id', id), ('vnf_profile_id', vnf_profile_id), ('pnf_profile_id', pnf_profile_id), ('nested_ns_profile_id', nested_ns_profile_id), ('virtual_link_profile_id', virtual_link_profile_id), ('cpd_pool', cpd_pool), ('nfpd', nfpd), ('nfp_position_element', nfp_position_element), ])

23841

23842

23843 class yc_lifecycle_management_script_etsi_nfv_nsd__nsd_nsd_lifecycle_management_script(PybindBase):

23844 """

23845 This class was auto-generated by the PythonClass plugin for PYANG

23846 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/lifecycle-management-script. Each member element of

23847 the container is represented as a class variable - with a specific

23848 YANG type.

23849 """

23850 __slots__ = ('_path_helper', '_extmethods', '__event','__script',)

23851

23852 _yang_name = 'lifecycle-management-script'

23853 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

23854

23855 _pybind_generated_by = 'container'

23856

23857 def __init__(self, *args, **kwargs):

23858

23859 self._path_helper = False

23860

23861 self._extmethods = False

23862 self.__event = YANGDynClass(base=str, is_leaf=True, yang_name="event", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

23863 self.__script = YANGDynClass(base=str, is_leaf=True, yang_name="script", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

23864

23865 load = kwargs.pop("load", None)

23866 if args:

23867 if len(args) > 1:

23868 raise TypeError("cannot create a YANG container with >1 argument")

23869 all_attr = True

23870 for e in self._pyangbind_elements:

23871 if not hasattr(args[0], e):

23872 all_attr = False

23873 break

23874 if not all_attr:

23875 raise ValueError("Supplied object did not have the correct attributes")

23876 for e in self._pyangbind_elements:

23877 nobj = getattr(args[0], e)

23878 if nobj._changed() is False:

23879 continue

23880 setmethod = getattr(self, "_set_%s" % e)

23881 if load is None:

23882 setmethod(getattr(args[0], e))

23883 else:

23884 setmethod(getattr(args[0], e), load=load)

23885

23886 def _path(self):

23887 if hasattr(self, "_parent"):

23888 return self._parent._path()+[self._yang_name]

23889 else:

23890 return ['nsd', 'nsd', 'lifecycle-management-script']

23891

23892 def _get_event(self):

23893 """

23894 Getter method for event, mapped from YANG variable /nsd/nsd/lifecycle_management_script/event (string)

23895 """

23896 return self.__event

23897

23898 def _set_event(self, v, load=False):

23899 """

23900 Setter method for event, mapped from YANG variable /nsd/nsd/lifecycle_management_script/event (string)

23901 If this variable is read-only (config: false) in the

23902 source YANG file, then _set_event is considered as a private

23903 method. Backends looking to populate this variable should

23904 do so via calling thisObj._set_event() directly.

23905 """

23906 parent = getattr(self, "_parent", None)

23907 if parent is not None and load is False:

23908 raise AttributeError("Cannot set keys directly when" +

23909 " within an instantiated list")

23910

23911 if hasattr(v, "_utype"):

23912 v = v._utype(v)

23913 try:

23914 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="event", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

23915 except (TypeError, ValueError):

23916 raise ValueError({

23917 'error-string': """event must be of a type compatible with string""",

23918 'defined-type': "string",

23919 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="event", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

23920 })

23921

23922 self.__event = t

23923 if hasattr(self, '_set'):

23924 self._set()

23925

23926 def _unset_event(self):

23927 self.__event = YANGDynClass(base=str, is_leaf=True, yang_name="event", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

23928

23929

23930 def _get_script(self):

23931 """

23932 Getter method for script, mapped from YANG variable /nsd/nsd/lifecycle_management_script/script (string)

23933 """

23934 return self.__script

23935

23936 def _set_script(self, v, load=False):

23937 """

23938 Setter method for script, mapped from YANG variable /nsd/nsd/lifecycle_management_script/script (string)

23939 If this variable is read-only (config: false) in the

23940 source YANG file, then _set_script is considered as a private

23941 method. Backends looking to populate this variable should

23942 do so via calling thisObj._set_script() directly.

23943 """

23944 if hasattr(v, "_utype"):

23945 v = v._utype(v)

23946 try:

23947 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="script", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

23948 except (TypeError, ValueError):

23949 raise ValueError({

23950 'error-string': """script must be of a type compatible with string""",

23951 'defined-type': "string",

23952 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="script", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

23953 })

23954

23955 self.__script = t

23956 if hasattr(self, '_set'):

23957 self._set()

23958

23959 def _unset_script(self):

23960 self.__script = YANGDynClass(base=str, is_leaf=True, yang_name="script", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

23961

23962 event = __builtin__.property(_get_event, _set_event)

23963 script = __builtin__.property(_get_script, _set_script)

23964

23965

23966 _pyangbind_elements = OrderedDict([('event', event), ('script', script), ])

23967

23968

23969 class yc_local_affinity_or_anti_affinity_rule_etsi_nfv_nsd__nsd_nsd_df_vnf_profile_local_affinity_or_anti_affinity_rule(PybindBase):

23970 """

23971 This class was auto-generated by the PythonClass plugin for PYANG

23972 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/vnf-profile/local-affinity-or-anti-affinity-rule. Each member element of

23973 the container is represented as a class variable - with a specific

23974 YANG type.

23975 """

23976 __slots__ = ('_path_helper', '_extmethods', '__affinity_type','__affinity_scope',)

23977

23978 _yang_name = 'local-affinity-or-anti-affinity-rule'

23979 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

23980

23981 _pybind_generated_by = 'container'

23982

23983 def __init__(self, *args, **kwargs):

23984

23985 self._path_helper = False

23986

23987 self._extmethods = False

23988 self.__affinity_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'affinity': {}, 'anti-affinity': {}},), is_leaf=True, yang_name="affinity-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-type', is_config=True)

23989 self.__affinity_scope = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'nfvi-node': {}, 'zone-group': {}, 'zone': {}, 'nfvi-pop': {}},), is_leaf=True, yang_name="affinity-scope", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-scope', is_config=True)

23990

23991 load = kwargs.pop("load", None)

23992 if args:

23993 if len(args) > 1:

23994 raise TypeError("cannot create a YANG container with >1 argument")

23995 all_attr = True

23996 for e in self._pyangbind_elements:

23997 if not hasattr(args[0], e):

23998 all_attr = False

23999 break

24000 if not all_attr:

24001 raise ValueError("Supplied object did not have the correct attributes")

24002 for e in self._pyangbind_elements:

24003 nobj = getattr(args[0], e)

24004 if nobj._changed() is False:

24005 continue

24006 setmethod = getattr(self, "_set_%s" % e)

24007 if load is None:

24008 setmethod(getattr(args[0], e))

24009 else:

24010 setmethod(getattr(args[0], e), load=load)

24011

24012 def _path(self):

24013 if hasattr(self, "_parent"):

24014 return self._parent._path()+[self._yang_name]

24015 else:

24016 return ['nsd', 'nsd', 'df', 'vnf-profile', 'local-affinity-or-anti-affinity-rule']

24017

24018 def _get_affinity_type(self):

24019 """

24020 Getter method for affinity_type, mapped from YANG variable /nsd/nsd/df/vnf_profile/local_affinity_or_anti_affinity_rule/affinity_type (affinity-type)

24021

24022 YANG Description: Specifies whether the rule is an affinity rule or an

24023 anti-affinity rule.

24024 """

24025 return self.__affinity_type

24026

24027 def _set_affinity_type(self, v, load=False):

24028 """

24029 Setter method for affinity_type, mapped from YANG variable /nsd/nsd/df/vnf_profile/local_affinity_or_anti_affinity_rule/affinity_type (affinity-type)

24030 If this variable is read-only (config: false) in the

24031 source YANG file, then _set_affinity_type is considered as a private

24032 method. Backends looking to populate this variable should

24033 do so via calling thisObj._set_affinity_type() directly.

24034

24035 YANG Description: Specifies whether the rule is an affinity rule or an

24036 anti-affinity rule.

24037 """

24038 parent = getattr(self, "_parent", None)

24039 if parent is not None and load is False:

24040 raise AttributeError("Cannot set keys directly when" +

24041 " within an instantiated list")

24042

24043 if hasattr(v, "_utype"):

24044 v = v._utype(v)

24045 try:

24046 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'affinity': {}, 'anti-affinity': {}},), is_leaf=True, yang_name="affinity-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-type', is_config=True)

24047 except (TypeError, ValueError):

24048 raise ValueError({

24049 'error-string': """affinity_type must be of a type compatible with affinity-type""",

24050 'defined-type': "etsi-nfv-nsd:affinity-type",

24051 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'affinity': {}, 'anti-affinity': {}},), is_leaf=True, yang_name="affinity-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-type', is_config=True)""",

24052 })

24053

24054 self.__affinity_type = t

24055 if hasattr(self, '_set'):

24056 self._set()

24057

24058 def _unset_affinity_type(self):

24059 self.__affinity_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'affinity': {}, 'anti-affinity': {}},), is_leaf=True, yang_name="affinity-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-type', is_config=True)

24060

24061

24062 def _get_affinity_scope(self):

24063 """

24064 Getter method for affinity_scope, mapped from YANG variable /nsd/nsd/df/vnf_profile/local_affinity_or_anti_affinity_rule/affinity_scope (affinity-scope)

24065

24066 YANG Description: Specifies the scope of the rule, possible values are

24067'NFVI-PoP', 'Zone', 'ZoneGroup', 'NFVI-node'.

24068 """

24069 return self.__affinity_scope

24070

24071 def _set_affinity_scope(self, v, load=False):

24072 """

24073 Setter method for affinity_scope, mapped from YANG variable /nsd/nsd/df/vnf_profile/local_affinity_or_anti_affinity_rule/affinity_scope (affinity-scope)

24074 If this variable is read-only (config: false) in the

24075 source YANG file, then _set_affinity_scope is considered as a private

24076 method. Backends looking to populate this variable should

24077 do so via calling thisObj._set_affinity_scope() directly.

24078

24079 YANG Description: Specifies the scope of the rule, possible values are

24080'NFVI-PoP', 'Zone', 'ZoneGroup', 'NFVI-node'.

24081 """

24082 parent = getattr(self, "_parent", None)

24083 if parent is not None and load is False:

24084 raise AttributeError("Cannot set keys directly when" +

24085 " within an instantiated list")

24086

24087 if hasattr(v, "_utype"):

24088 v = v._utype(v)

24089 try:

24090 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'nfvi-node': {}, 'zone-group': {}, 'zone': {}, 'nfvi-pop': {}},), is_leaf=True, yang_name="affinity-scope", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-scope', is_config=True)

24091 except (TypeError, ValueError):

24092 raise ValueError({

24093 'error-string': """affinity_scope must be of a type compatible with affinity-scope""",

24094 'defined-type': "etsi-nfv-nsd:affinity-scope",

24095 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'nfvi-node': {}, 'zone-group': {}, 'zone': {}, 'nfvi-pop': {}},), is_leaf=True, yang_name="affinity-scope", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-scope', is_config=True)""",

24096 })

24097

24098 self.__affinity_scope = t

24099 if hasattr(self, '_set'):

24100 self._set()

24101

24102 def _unset_affinity_scope(self):

24103 self.__affinity_scope = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'nfvi-node': {}, 'zone-group': {}, 'zone': {}, 'nfvi-pop': {}},), is_leaf=True, yang_name="affinity-scope", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-scope', is_config=True)

24104

24105 affinity_type = __builtin__.property(_get_affinity_type, _set_affinity_type)

24106 affinity_scope = __builtin__.property(_get_affinity_scope, _set_affinity_scope)

24107

24108

24109 _pyangbind_elements = OrderedDict([('affinity_type', affinity_type), ('affinity_scope', affinity_scope), ])

24110

24111

24112 class yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_nsd_df_vnf_profile_affinity_or_anti_affinity_group(PybindBase):

24113 """

24114 This class was auto-generated by the PythonClass plugin for PYANG

24115 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/vnf-profile/affinity-or-anti-affinity-group. Each member element of

24116 the container is represented as a class variable - with a specific

24117 YANG type.

24118

24119 YANG Description: Identifier(s) of the affinity or anti-affinity

24120 group(s) the VnfProfile belongs to.

24121 """

24122 __slots__ = ('_path_helper', '_extmethods', '__id',)

24123

24124 _yang_name = 'affinity-or-anti-affinity-group'

24125 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

24126

24127 _pybind_generated_by = 'container'

24128

24129 def __init__(self, *args, **kwargs):

24130

24131 self._path_helper = False

24132

24133 self._extmethods = False

24134 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

24135

24136 load = kwargs.pop("load", None)

24137 if args:

24138 if len(args) > 1:

24139 raise TypeError("cannot create a YANG container with >1 argument")

24140 all_attr = True

24141 for e in self._pyangbind_elements:

24142 if not hasattr(args[0], e):

24143 all_attr = False

24144 break

24145 if not all_attr:

24146 raise ValueError("Supplied object did not have the correct attributes")

24147 for e in self._pyangbind_elements:

24148 nobj = getattr(args[0], e)

24149 if nobj._changed() is False:

24150 continue

24151 setmethod = getattr(self, "_set_%s" % e)

24152 if load is None:

24153 setmethod(getattr(args[0], e))

24154 else:

24155 setmethod(getattr(args[0], e), load=load)

24156

24157 def _path(self):

24158 if hasattr(self, "_parent"):

24159 return self._parent._path()+[self._yang_name]

24160 else:

24161 return ['nsd', 'nsd', 'df', 'vnf-profile', 'affinity-or-anti-affinity-group']

24162

24163 def _get_id(self):

24164 """

24165 Getter method for id, mapped from YANG variable /nsd/nsd/df/vnf_profile/affinity_or_anti_affinity_group/id (leafref)

24166 """

24167 return self.__id

24168

24169 def _set_id(self, v, load=False):

24170 """

24171 Setter method for id, mapped from YANG variable /nsd/nsd/df/vnf_profile/affinity_or_anti_affinity_group/id (leafref)

24172 If this variable is read-only (config: false) in the

24173 source YANG file, then _set_id is considered as a private

24174 method. Backends looking to populate this variable should

24175 do so via calling thisObj._set_id() directly.

24176 """

24177 parent = getattr(self, "_parent", None)

24178 if parent is not None and load is False:

24179 raise AttributeError("Cannot set keys directly when" +

24180 " within an instantiated list")

24181

24182 if hasattr(v, "_utype"):

24183 v = v._utype(v)

24184 try:

24185 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

24186 except (TypeError, ValueError):

24187 raise ValueError({

24188 'error-string': """id must be of a type compatible with leafref""",

24189 'defined-type': "leafref",

24190 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

24191 })

24192

24193 self.__id = t

24194 if hasattr(self, '_set'):

24195 self._set()

24196

24197 def _unset_id(self):

24198 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

24199

24200 id = __builtin__.property(_get_id, _set_id)

24201

24202

24203 _pyangbind_elements = OrderedDict([('id', id), ])

24204

24205

24206 class yc_constituent_cpd_id_etsi_nfv_nsd__nsd_nsd_df_vnf_profile_virtual_link_connectivity_constituent_cpd_id(PybindBase):

24207 """

24208 This class was auto-generated by the PythonClass plugin for PYANG

24209 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/vnf-profile/virtual-link-connectivity/constituent-cpd-id. Each member element of

24210 the container is represented as a class variable - with a specific

24211 YANG type.

24212

24213 YANG Description: Describes a connection point on a VNF/PNF or a SAP

24214 which connects to virtual links instantiated from

24215 the profile identified in the virtualLinkProfileId

24216 attribute.

24217 """

24218 __slots__ = ('_path_helper', '_extmethods', '__constituent_base_element_id','__constituent_cpd_id','__ip_address',)

24219

24220 _yang_name = 'constituent-cpd-id'

24221 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

24222

24223 _pybind_generated_by = 'container'

24224

24225 def __init__(self, *args, **kwargs):

24226

24227 self._path_helper = False

24228

24229 self._extmethods = False

24230 self.__constituent_base_element_id = YANGDynClass(base=str, is_leaf=True, yang_name="constituent-base-element-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='leafref', is_config=True)

24231 self.__constituent_cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='leafref', is_config=True)

24232 self.__ip_address = YANGDynClass(unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=str, restriction_dict={'pattern': '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\\p{N}\\p{L}]+)?'}),RestrictedClassType(base_type=str, restriction_dict={'pattern': '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))(%[\\p{N}\\p{L}]+)?'}),]), is_leaf=False, yang_name="ip-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='inet:ip-address', is_config=True)

24233

24234 load = kwargs.pop("load", None)

24235 if args:

24236 if len(args) > 1:

24237 raise TypeError("cannot create a YANG container with >1 argument")

24238 all_attr = True

24239 for e in self._pyangbind_elements:

24240 if not hasattr(args[0], e):

24241 all_attr = False

24242 break

24243 if not all_attr:

24244 raise ValueError("Supplied object did not have the correct attributes")

24245 for e in self._pyangbind_elements:

24246 nobj = getattr(args[0], e)

24247 if nobj._changed() is False:

24248 continue

24249 setmethod = getattr(self, "_set_%s" % e)

24250 if load is None:

24251 setmethod(getattr(args[0], e))

24252 else:

24253 setmethod(getattr(args[0], e), load=load)

24254

24255 def _path(self):

24256 if hasattr(self, "_parent"):

24257 return self._parent._path()+[self._yang_name]

24258 else:

24259 return ['nsd', 'nsd', 'df', 'vnf-profile', 'virtual-link-connectivity', 'constituent-cpd-id']

24260

24261 def _get_constituent_base_element_id(self):

24262 """

24263 Getter method for constituent_base_element_id, mapped from YANG variable /nsd/nsd/df/vnf_profile/virtual_link_connectivity/constituent_cpd_id/constituent_base_element_id (leafref)

24264

24265 YANG Description: Reference to the profile of an NS constituent.

24266 """

24267 return self.__constituent_base_element_id

24268

24269 def _set_constituent_base_element_id(self, v, load=False):

24270 """

24271 Setter method for constituent_base_element_id, mapped from YANG variable /nsd/nsd/df/vnf_profile/virtual_link_connectivity/constituent_cpd_id/constituent_base_element_id (leafref)

24272 If this variable is read-only (config: false) in the

24273 source YANG file, then _set_constituent_base_element_id is considered as a private

24274 method. Backends looking to populate this variable should

24275 do so via calling thisObj._set_constituent_base_element_id() directly.

24276

24277 YANG Description: Reference to the profile of an NS constituent.

24278 """

24279 parent = getattr(self, "_parent", None)

24280 if parent is not None and load is False:

24281 raise AttributeError("Cannot set keys directly when" +

24282 " within an instantiated list")

24283

24284 if hasattr(v, "_utype"):

24285 v = v._utype(v)

24286 try:

24287 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="constituent-base-element-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='leafref', is_config=True)

24288 except (TypeError, ValueError):

24289 raise ValueError({

24290 'error-string': """constituent_base_element_id must be of a type compatible with leafref""",

24291 'defined-type': "leafref",

24292 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="constituent-base-element-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='leafref', is_config=True)""",

24293 })

24294

24295 self.__constituent_base_element_id = t

24296 if hasattr(self, '_set'):

24297 self._set()

24298

24299 def _unset_constituent_base_element_id(self):

24300 self.__constituent_base_element_id = YANGDynClass(base=str, is_leaf=True, yang_name="constituent-base-element-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='leafref', is_config=True)

24301

24302

24303 def _get_constituent_cpd_id(self):

24304 """

24305 Getter method for constituent_cpd_id, mapped from YANG variable /nsd/nsd/df/vnf_profile/virtual_link_connectivity/constituent_cpd_id/constituent_cpd_id (leafref)

24306

24307 YANG Description: A reference to the descriptor of a connection point

24308 attached to one of the constituent VNFs and PNFs or to

24309 the descriptor of a NS SAP.

24310 """

24311 return self.__constituent_cpd_id

24312

24313 def _set_constituent_cpd_id(self, v, load=False):

24314 """

24315 Setter method for constituent_cpd_id, mapped from YANG variable /nsd/nsd/df/vnf_profile/virtual_link_connectivity/constituent_cpd_id/constituent_cpd_id (leafref)

24316 If this variable is read-only (config: false) in the

24317 source YANG file, then _set_constituent_cpd_id is considered as a private

24318 method. Backends looking to populate this variable should

24319 do so via calling thisObj._set_constituent_cpd_id() directly.

24320

24321 YANG Description: A reference to the descriptor of a connection point

24322 attached to one of the constituent VNFs and PNFs or to

24323 the descriptor of a NS SAP.

24324 """

24325 parent = getattr(self, "_parent", None)

24326 if parent is not None and load is False:

24327 raise AttributeError("Cannot set keys directly when" +

24328 " within an instantiated list")

24329

24330 if hasattr(v, "_utype"):

24331 v = v._utype(v)

24332 try:

24333 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='leafref', is_config=True)

24334 except (TypeError, ValueError):

24335 raise ValueError({

24336 'error-string': """constituent_cpd_id must be of a type compatible with leafref""",

24337 'defined-type': "leafref",

24338 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='leafref', is_config=True)""",

24339 })

24340

24341 self.__constituent_cpd_id = t

24342 if hasattr(self, '_set'):

24343 self._set()

24344

24345 def _unset_constituent_cpd_id(self):

24346 self.__constituent_cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='leafref', is_config=True)

24347

24348

24349 def _get_ip_address(self):

24350 """

24351 Getter method for ip_address, mapped from YANG variable /nsd/nsd/df/vnf_profile/virtual_link_connectivity/constituent_cpd_id/ip_address (inet:ip-address)

24352

24353 YANG Description: IP address list assigned to the internal connection point

24354 """

24355 return self.__ip_address

24356

24357 def _set_ip_address(self, v, load=False):

24358 """

24359 Setter method for ip_address, mapped from YANG variable /nsd/nsd/df/vnf_profile/virtual_link_connectivity/constituent_cpd_id/ip_address (inet:ip-address)

24360 If this variable is read-only (config: false) in the

24361 source YANG file, then _set_ip_address is considered as a private

24362 method. Backends looking to populate this variable should

24363 do so via calling thisObj._set_ip_address() directly.

24364

24365 YANG Description: IP address list assigned to the internal connection point

24366 """

24367 if hasattr(v, "_utype"):

24368 v = v._utype(v)

24369 try:

24370 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=str, restriction_dict={'pattern': '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\\p{N}\\p{L}]+)?'}),RestrictedClassType(base_type=str, restriction_dict={'pattern': '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))(%[\\p{N}\\p{L}]+)?'}),]), is_leaf=False, yang_name="ip-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='inet:ip-address', is_config=True)

24371 except (TypeError, ValueError):

24372 raise ValueError({

24373 'error-string': """ip_address must be of a type compatible with inet:ip-address""",

24374 'defined-type': "inet:ip-address",

24375 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=str, restriction_dict={'pattern': '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\\p{N}\\p{L}]+)?'}),RestrictedClassType(base_type=str, restriction_dict={'pattern': '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))(%[\\p{N}\\p{L}]+)?'}),]), is_leaf=False, yang_name="ip-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='inet:ip-address', is_config=True)""",

24376 })

24377

24378 self.__ip_address = t

24379 if hasattr(self, '_set'):

24380 self._set()

24381

24382 def _unset_ip_address(self):

24383 self.__ip_address = YANGDynClass(unique=True, base=TypedListType(allowed_type=[RestrictedClassType(base_type=str, restriction_dict={'pattern': '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\\p{N}\\p{L}]+)?'}),RestrictedClassType(base_type=str, restriction_dict={'pattern': '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))(%[\\p{N}\\p{L}]+)?'}),]), is_leaf=False, yang_name="ip-address", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='inet:ip-address', is_config=True)

24384

24385 constituent_base_element_id = __builtin__.property(_get_constituent_base_element_id, _set_constituent_base_element_id)

24386 constituent_cpd_id = __builtin__.property(_get_constituent_cpd_id, _set_constituent_cpd_id)

24387 ip_address = __builtin__.property(_get_ip_address, _set_ip_address)

24388

24389

24390 _pyangbind_elements = OrderedDict([('constituent_base_element_id', constituent_base_element_id), ('constituent_cpd_id', constituent_cpd_id), ('ip_address', ip_address), ])

24391

24392

24393 class yc_virtual_link_connectivity_etsi_nfv_nsd__nsd_nsd_df_vnf_profile_virtual_link_connectivity(PybindBase):

24394 """

24395 This class was auto-generated by the PythonClass plugin for PYANG

24396 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/vnf-profile/virtual-link-connectivity. Each member element of

24397 the container is represented as a class variable - with a specific

24398 YANG type.

24399

24400 YANG Description: Defines the connection information of the VNF, it

24401 contains connection relationship between a VNF

24402 connection point and a NS Virtual Link.

24403 """

24404 __slots__ = ('_path_helper', '_extmethods', '__virtual_link_profile_id','__constituent_cpd_id',)

24405

24406 _yang_name = 'virtual-link-connectivity'

24407 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

24408

24409 _pybind_generated_by = 'container'

24410

24411 def __init__(self, *args, **kwargs):

24412

24413 self._path_helper = False

24414

24415 self._extmethods = False

24416 self.__virtual_link_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="virtual-link-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

24417 self.__constituent_cpd_id = YANGDynClass(base=YANGListType("constituent_base_element_id constituent_cpd_id",yc_constituent_cpd_id_etsi_nfv_nsd__nsd_nsd_df_vnf_profile_virtual_link_connectivity_constituent_cpd_id, yang_name="constituent-cpd-id", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='constituent-base-element-id constituent-cpd-id', extensions=None), is_container='list', yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='list', is_config=True)

24418

24419 load = kwargs.pop("load", None)

24420 if args:

24421 if len(args) > 1:

24422 raise TypeError("cannot create a YANG container with >1 argument")

24423 all_attr = True

24424 for e in self._pyangbind_elements:

24425 if not hasattr(args[0], e):

24426 all_attr = False

24427 break

24428 if not all_attr:

24429 raise ValueError("Supplied object did not have the correct attributes")

24430 for e in self._pyangbind_elements:

24431 nobj = getattr(args[0], e)

24432 if nobj._changed() is False:

24433 continue

24434 setmethod = getattr(self, "_set_%s" % e)

24435 if load is None:

24436 setmethod(getattr(args[0], e))

24437 else:

24438 setmethod(getattr(args[0], e), load=load)

24439

24440 def _path(self):

24441 if hasattr(self, "_parent"):

24442 return self._parent._path()+[self._yang_name]

24443 else:

24444 return ['nsd', 'nsd', 'df', 'vnf-profile', 'virtual-link-connectivity']

24445

24446 def _get_virtual_link_profile_id(self):

24447 """

24448 Getter method for virtual_link_profile_id, mapped from YANG variable /nsd/nsd/df/vnf_profile/virtual_link_connectivity/virtual_link_profile_id (leafref)

24449

24450 YANG Description: Reference an NS VL profile.

24451 """

24452 return self.__virtual_link_profile_id

24453

24454 def _set_virtual_link_profile_id(self, v, load=False):

24455 """

24456 Setter method for virtual_link_profile_id, mapped from YANG variable /nsd/nsd/df/vnf_profile/virtual_link_connectivity/virtual_link_profile_id (leafref)

24457 If this variable is read-only (config: false) in the

24458 source YANG file, then _set_virtual_link_profile_id is considered as a private

24459 method. Backends looking to populate this variable should

24460 do so via calling thisObj._set_virtual_link_profile_id() directly.

24461

24462 YANG Description: Reference an NS VL profile.

24463 """

24464 parent = getattr(self, "_parent", None)

24465 if parent is not None and load is False:

24466 raise AttributeError("Cannot set keys directly when" +

24467 " within an instantiated list")

24468

24469 if hasattr(v, "_utype"):

24470 v = v._utype(v)

24471 try:

24472 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="virtual-link-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

24473 except (TypeError, ValueError):

24474 raise ValueError({

24475 'error-string': """virtual_link_profile_id must be of a type compatible with leafref""",

24476 'defined-type': "leafref",

24477 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="virtual-link-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

24478 })

24479

24480 self.__virtual_link_profile_id = t

24481 if hasattr(self, '_set'):

24482 self._set()

24483

24484 def _unset_virtual_link_profile_id(self):

24485 self.__virtual_link_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="virtual-link-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

24486

24487

24488 def _get_constituent_cpd_id(self):

24489 """

24490 Getter method for constituent_cpd_id, mapped from YANG variable /nsd/nsd/df/vnf_profile/virtual_link_connectivity/constituent_cpd_id (list)

24491

24492 YANG Description: Describes a connection point on a VNF/PNF or a SAP

24493 which connects to virtual links instantiated from

24494 the profile identified in the virtualLinkProfileId

24495 attribute.

24496 """

24497 return self.__constituent_cpd_id

24498

24499 def _set_constituent_cpd_id(self, v, load=False):

24500 """

24501 Setter method for constituent_cpd_id, mapped from YANG variable /nsd/nsd/df/vnf_profile/virtual_link_connectivity/constituent_cpd_id (list)

24502 If this variable is read-only (config: false) in the

24503 source YANG file, then _set_constituent_cpd_id is considered as a private

24504 method. Backends looking to populate this variable should

24505 do so via calling thisObj._set_constituent_cpd_id() directly.

24506

24507 YANG Description: Describes a connection point on a VNF/PNF or a SAP

24508 which connects to virtual links instantiated from

24509 the profile identified in the virtualLinkProfileId

24510 attribute.

24511 """

24512 if hasattr(v, "_utype"):

24513 v = v._utype(v)

24514 try:

24515 t = YANGDynClass(v,base=YANGListType("constituent_base_element_id constituent_cpd_id",yc_constituent_cpd_id_etsi_nfv_nsd__nsd_nsd_df_vnf_profile_virtual_link_connectivity_constituent_cpd_id, yang_name="constituent-cpd-id", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='constituent-base-element-id constituent-cpd-id', extensions=None), is_container='list', yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='list', is_config=True)

24516 except (TypeError, ValueError):

24517 raise ValueError({

24518 'error-string': """constituent_cpd_id must be of a type compatible with list""",

24519 'defined-type': "list",

24520 'generated-type': """YANGDynClass(base=YANGListType("constituent_base_element_id constituent_cpd_id",yc_constituent_cpd_id_etsi_nfv_nsd__nsd_nsd_df_vnf_profile_virtual_link_connectivity_constituent_cpd_id, yang_name="constituent-cpd-id", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='constituent-base-element-id constituent-cpd-id', extensions=None), is_container='list', yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='list', is_config=True)""",

24521 })

24522

24523 self.__constituent_cpd_id = t

24524 if hasattr(self, '_set'):

24525 self._set()

24526

24527 def _unset_constituent_cpd_id(self):

24528 self.__constituent_cpd_id = YANGDynClass(base=YANGListType("constituent_base_element_id constituent_cpd_id",yc_constituent_cpd_id_etsi_nfv_nsd__nsd_nsd_df_vnf_profile_virtual_link_connectivity_constituent_cpd_id, yang_name="constituent-cpd-id", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='constituent-base-element-id constituent-cpd-id', extensions=None), is_container='list', yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-vld', defining_module='ns-vld', yang_type='list', is_config=True)

24529

24530 virtual_link_profile_id = __builtin__.property(_get_virtual_link_profile_id, _set_virtual_link_profile_id)

24531 constituent_cpd_id = __builtin__.property(_get_constituent_cpd_id, _set_constituent_cpd_id)

24532

24533

24534 _pyangbind_elements = OrderedDict([('virtual_link_profile_id', virtual_link_profile_id), ('constituent_cpd_id', constituent_cpd_id), ])

24535

24536

24537 class yc_vnf_profile_etsi_nfv_nsd__nsd_nsd_df_vnf_profile(PybindBase):

24538 """

24539 This class was auto-generated by the PythonClass plugin for PYANG

24540 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/vnf-profile. Each member element of

24541 the container is represented as a class variable - with a specific

24542 YANG type.

24543

24544 YANG Description: VNF profile to be used for the NS flavour.

24545 """

24546 __slots__ = ('_path_helper', '_extmethods', '__id','__vnfd_id','__flavour_id','__instantiation_level','__min_number_of_instances','__max_number_of_instances','__local_affinity_or_anti_affinity_rule','__affinity_or_anti_affinity_group','__virtual_link_connectivity',)

24547

24548 _yang_name = 'vnf-profile'

24549 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

24550

24551 _pybind_generated_by = 'container'

24552

24553 def __init__(self, *args, **kwargs):

24554

24555 self._path_helper = False

24556

24557 self._extmethods = False

24558 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

24559 self.__vnfd_id = YANGDynClass(base=str, is_leaf=True, yang_name="vnfd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

24560 self.__flavour_id = YANGDynClass(base=str, is_leaf=True, yang_name="flavour-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

24561 self.__instantiation_level = YANGDynClass(base=str, is_leaf=True, yang_name="instantiation-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

24562 self.__min_number_of_instances = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="min-number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

24563 self.__max_number_of_instances = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="max-number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

24564 self.__local_affinity_or_anti_affinity_rule = YANGDynClass(base=YANGListType("affinity_type affinity_scope",yc_local_affinity_or_anti_affinity_rule_etsi_nfv_nsd__nsd_nsd_df_vnf_profile_local_affinity_or_anti_affinity_rule, yang_name="local-affinity-or-anti-affinity-rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='affinity-type affinity-scope', extensions=None), is_container='list', yang_name="local-affinity-or-anti-affinity-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

24565 self.__affinity_or_anti_affinity_group = YANGDynClass(base=YANGListType("id",yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_nsd_df_vnf_profile_affinity_or_anti_affinity_group, yang_name="affinity-or-anti-affinity-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

24566 self.__virtual_link_connectivity = YANGDynClass(base=YANGListType("virtual_link_profile_id",yc_virtual_link_connectivity_etsi_nfv_nsd__nsd_nsd_df_vnf_profile_virtual_link_connectivity, yang_name="virtual-link-connectivity", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='virtual-link-profile-id', extensions=None), is_container='list', yang_name="virtual-link-connectivity", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

24567

24568 load = kwargs.pop("load", None)

24569 if args:

24570 if len(args) > 1:

24571 raise TypeError("cannot create a YANG container with >1 argument")

24572 all_attr = True

24573 for e in self._pyangbind_elements:

24574 if not hasattr(args[0], e):

24575 all_attr = False

24576 break

24577 if not all_attr:

24578 raise ValueError("Supplied object did not have the correct attributes")

24579 for e in self._pyangbind_elements:

24580 nobj = getattr(args[0], e)

24581 if nobj._changed() is False:

24582 continue

24583 setmethod = getattr(self, "_set_%s" % e)

24584 if load is None:

24585 setmethod(getattr(args[0], e))

24586 else:

24587 setmethod(getattr(args[0], e), load=load)

24588

24589 def _path(self):

24590 if hasattr(self, "_parent"):

24591 return self._parent._path()+[self._yang_name]

24592 else:

24593 return ['nsd', 'nsd', 'df', 'vnf-profile']

24594

24595 def _get_id(self):

24596 """

24597 Getter method for id, mapped from YANG variable /nsd/nsd/df/vnf_profile/id (string)

24598

24599 YANG Description: Identifier of this vnfProfile information element. It

24600 uniquely identifies a VnfProfile.

24601 """

24602 return self.__id

24603

24604 def _set_id(self, v, load=False):

24605 """

24606 Setter method for id, mapped from YANG variable /nsd/nsd/df/vnf_profile/id (string)

24607 If this variable is read-only (config: false) in the

24608 source YANG file, then _set_id is considered as a private

24609 method. Backends looking to populate this variable should

24610 do so via calling thisObj._set_id() directly.

24611

24612 YANG Description: Identifier of this vnfProfile information element. It

24613 uniquely identifies a VnfProfile.

24614 """

24615 parent = getattr(self, "_parent", None)

24616 if parent is not None and load is False:

24617 raise AttributeError("Cannot set keys directly when" +

24618 " within an instantiated list")

24619

24620 if hasattr(v, "_utype"):

24621 v = v._utype(v)

24622 try:

24623 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

24624 except (TypeError, ValueError):

24625 raise ValueError({

24626 'error-string': """id must be of a type compatible with string""",

24627 'defined-type': "string",

24628 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

24629 })

24630

24631 self.__id = t

24632 if hasattr(self, '_set'):

24633 self._set()

24634

24635 def _unset_id(self):

24636 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

24637

24638

24639 def _get_vnfd_id(self):

24640 """

24641 Getter method for vnfd_id, mapped from YANG variable /nsd/nsd/df/vnf_profile/vnfd_id (leafref)

24642

24643 YANG Description: References a VNFD.

24644 """

24645 return self.__vnfd_id

24646

24647 def _set_vnfd_id(self, v, load=False):

24648 """

24649 Setter method for vnfd_id, mapped from YANG variable /nsd/nsd/df/vnf_profile/vnfd_id (leafref)

24650 If this variable is read-only (config: false) in the

24651 source YANG file, then _set_vnfd_id is considered as a private

24652 method. Backends looking to populate this variable should

24653 do so via calling thisObj._set_vnfd_id() directly.

24654

24655 YANG Description: References a VNFD.

24656 """

24657 if hasattr(v, "_utype"):

24658 v = v._utype(v)

24659 try:

24660 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="vnfd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

24661 except (TypeError, ValueError):

24662 raise ValueError({

24663 'error-string': """vnfd_id must be of a type compatible with leafref""",

24664 'defined-type': "leafref",

24665 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="vnfd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

24666 })

24667

24668 self.__vnfd_id = t

24669 if hasattr(self, '_set'):

24670 self._set()

24671

24672 def _unset_vnfd_id(self):

24673 self.__vnfd_id = YANGDynClass(base=str, is_leaf=True, yang_name="vnfd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

24674

24675

24676 def _get_flavour_id(self):

24677 """

24678 Getter method for flavour_id, mapped from YANG variable /nsd/nsd/df/vnf_profile/flavour_id (leafref)

24679

24680 YANG Description: Identifies a flavour within the VNFD.

24681 """

24682 return self.__flavour_id

24683

24684 def _set_flavour_id(self, v, load=False):

24685 """

24686 Setter method for flavour_id, mapped from YANG variable /nsd/nsd/df/vnf_profile/flavour_id (leafref)

24687 If this variable is read-only (config: false) in the

24688 source YANG file, then _set_flavour_id is considered as a private

24689 method. Backends looking to populate this variable should

24690 do so via calling thisObj._set_flavour_id() directly.

24691

24692 YANG Description: Identifies a flavour within the VNFD.

24693 """

24694 if hasattr(v, "_utype"):

24695 v = v._utype(v)

24696 try:

24697 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="flavour-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

24698 except (TypeError, ValueError):

24699 raise ValueError({

24700 'error-string': """flavour_id must be of a type compatible with leafref""",

24701 'defined-type': "leafref",

24702 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="flavour-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

24703 })

24704

24705 self.__flavour_id = t

24706 if hasattr(self, '_set'):

24707 self._set()

24708

24709 def _unset_flavour_id(self):

24710 self.__flavour_id = YANGDynClass(base=str, is_leaf=True, yang_name="flavour-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

24711

24712

24713 def _get_instantiation_level(self):

24714 """

24715 Getter method for instantiation_level, mapped from YANG variable /nsd/nsd/df/vnf_profile/instantiation_level (leafref)

24716

24717 YANG Description: Identifier of the instantiation level of the VNF DF

24718 to be used for instantiation. If not present, the

24719 default instantiation level as declared in the VNFD

24720 shall be used.

24721 """

24722 return self.__instantiation_level

24723

24724 def _set_instantiation_level(self, v, load=False):

24725 """

24726 Setter method for instantiation_level, mapped from YANG variable /nsd/nsd/df/vnf_profile/instantiation_level (leafref)

24727 If this variable is read-only (config: false) in the

24728 source YANG file, then _set_instantiation_level is considered as a private

24729 method. Backends looking to populate this variable should

24730 do so via calling thisObj._set_instantiation_level() directly.

24731

24732 YANG Description: Identifier of the instantiation level of the VNF DF

24733 to be used for instantiation. If not present, the

24734 default instantiation level as declared in the VNFD

24735 shall be used.

24736 """

24737 if hasattr(v, "_utype"):

24738 v = v._utype(v)

24739 try:

24740 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="instantiation-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

24741 except (TypeError, ValueError):

24742 raise ValueError({

24743 'error-string': """instantiation_level must be of a type compatible with leafref""",

24744 'defined-type': "leafref",

24745 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="instantiation-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

24746 })

24747

24748 self.__instantiation_level = t

24749 if hasattr(self, '_set'):

24750 self._set()

24751

24752 def _unset_instantiation_level(self):

24753 self.__instantiation_level = YANGDynClass(base=str, is_leaf=True, yang_name="instantiation-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

24754

24755

24756 def _get_min_number_of_instances(self):

24757 """

24758 Getter method for min_number_of_instances, mapped from YANG variable /nsd/nsd/df/vnf_profile/min_number_of_instances (uint16)

24759

24760 YANG Description: Minimum number of instances of the VNF based on this

24761 VNFD that is permitted to exist for this VnfProfile.

24762 """

24763 return self.__min_number_of_instances

24764

24765 def _set_min_number_of_instances(self, v, load=False):

24766 """

24767 Setter method for min_number_of_instances, mapped from YANG variable /nsd/nsd/df/vnf_profile/min_number_of_instances (uint16)

24768 If this variable is read-only (config: false) in the

24769 source YANG file, then _set_min_number_of_instances is considered as a private

24770 method. Backends looking to populate this variable should

24771 do so via calling thisObj._set_min_number_of_instances() directly.

24772

24773 YANG Description: Minimum number of instances of the VNF based on this

24774 VNFD that is permitted to exist for this VnfProfile.

24775 """

24776 if hasattr(v, "_utype"):

24777 v = v._utype(v)

24778 try:

24779 t = YANGDynClass(v,base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="min-number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

24780 except (TypeError, ValueError):

24781 raise ValueError({

24782 'error-string': """min_number_of_instances must be of a type compatible with uint16""",

24783 'defined-type': "uint16",

24784 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="min-number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)""",

24785 })

24786

24787 self.__min_number_of_instances = t

24788 if hasattr(self, '_set'):

24789 self._set()

24790

24791 def _unset_min_number_of_instances(self):

24792 self.__min_number_of_instances = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="min-number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

24793

24794

24795 def _get_max_number_of_instances(self):

24796 """

24797 Getter method for max_number_of_instances, mapped from YANG variable /nsd/nsd/df/vnf_profile/max_number_of_instances (uint16)

24798

24799 YANG Description: Maximum number of instances of the VNF based on this

24800 VNFD that is permitted to exist for this VnfProfile.

24801 """

24802 return self.__max_number_of_instances

24803

24804 def _set_max_number_of_instances(self, v, load=False):

24805 """

24806 Setter method for max_number_of_instances, mapped from YANG variable /nsd/nsd/df/vnf_profile/max_number_of_instances (uint16)

24807 If this variable is read-only (config: false) in the

24808 source YANG file, then _set_max_number_of_instances is considered as a private

24809 method. Backends looking to populate this variable should

24810 do so via calling thisObj._set_max_number_of_instances() directly.

24811

24812 YANG Description: Maximum number of instances of the VNF based on this

24813 VNFD that is permitted to exist for this VnfProfile.

24814 """

24815 if hasattr(v, "_utype"):

24816 v = v._utype(v)

24817 try:

24818 t = YANGDynClass(v,base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="max-number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

24819 except (TypeError, ValueError):

24820 raise ValueError({

24821 'error-string': """max_number_of_instances must be of a type compatible with uint16""",

24822 'defined-type': "uint16",

24823 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="max-number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)""",

24824 })

24825

24826 self.__max_number_of_instances = t

24827 if hasattr(self, '_set'):

24828 self._set()

24829

24830 def _unset_max_number_of_instances(self):

24831 self.__max_number_of_instances = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="max-number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

24832

24833

24834 def _get_local_affinity_or_anti_affinity_rule(self):

24835 """

24836 Getter method for local_affinity_or_anti_affinity_rule, mapped from YANG variable /nsd/nsd/df/vnf_profile/local_affinity_or_anti_affinity_rule (list)

24837 """

24838 return self.__local_affinity_or_anti_affinity_rule

24839

24840 def _set_local_affinity_or_anti_affinity_rule(self, v, load=False):

24841 """

24842 Setter method for local_affinity_or_anti_affinity_rule, mapped from YANG variable /nsd/nsd/df/vnf_profile/local_affinity_or_anti_affinity_rule (list)

24843 If this variable is read-only (config: false) in the

24844 source YANG file, then _set_local_affinity_or_anti_affinity_rule is considered as a private

24845 method. Backends looking to populate this variable should

24846 do so via calling thisObj._set_local_affinity_or_anti_affinity_rule() directly.

24847 """

24848 if hasattr(v, "_utype"):

24849 v = v._utype(v)

24850 try:

24851 t = YANGDynClass(v,base=YANGListType("affinity_type affinity_scope",yc_local_affinity_or_anti_affinity_rule_etsi_nfv_nsd__nsd_nsd_df_vnf_profile_local_affinity_or_anti_affinity_rule, yang_name="local-affinity-or-anti-affinity-rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='affinity-type affinity-scope', extensions=None), is_container='list', yang_name="local-affinity-or-anti-affinity-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

24852 except (TypeError, ValueError):

24853 raise ValueError({

24854 'error-string': """local_affinity_or_anti_affinity_rule must be of a type compatible with list""",

24855 'defined-type': "list",

24856 'generated-type': """YANGDynClass(base=YANGListType("affinity_type affinity_scope",yc_local_affinity_or_anti_affinity_rule_etsi_nfv_nsd__nsd_nsd_df_vnf_profile_local_affinity_or_anti_affinity_rule, yang_name="local-affinity-or-anti-affinity-rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='affinity-type affinity-scope', extensions=None), is_container='list', yang_name="local-affinity-or-anti-affinity-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

24857 })

24858

24859 self.__local_affinity_or_anti_affinity_rule = t

24860 if hasattr(self, '_set'):

24861 self._set()

24862

24863 def _unset_local_affinity_or_anti_affinity_rule(self):

24864 self.__local_affinity_or_anti_affinity_rule = YANGDynClass(base=YANGListType("affinity_type affinity_scope",yc_local_affinity_or_anti_affinity_rule_etsi_nfv_nsd__nsd_nsd_df_vnf_profile_local_affinity_or_anti_affinity_rule, yang_name="local-affinity-or-anti-affinity-rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='affinity-type affinity-scope', extensions=None), is_container='list', yang_name="local-affinity-or-anti-affinity-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

24865

24866

24867 def _get_affinity_or_anti_affinity_group(self):

24868 """

24869 Getter method for affinity_or_anti_affinity_group, mapped from YANG variable /nsd/nsd/df/vnf_profile/affinity_or_anti_affinity_group (list)

24870

24871 YANG Description: Identifier(s) of the affinity or anti-affinity

24872 group(s) the VnfProfile belongs to.

24873 """

24874 return self.__affinity_or_anti_affinity_group

24875

24876 def _set_affinity_or_anti_affinity_group(self, v, load=False):

24877 """

24878 Setter method for affinity_or_anti_affinity_group, mapped from YANG variable /nsd/nsd/df/vnf_profile/affinity_or_anti_affinity_group (list)

24879 If this variable is read-only (config: false) in the

24880 source YANG file, then _set_affinity_or_anti_affinity_group is considered as a private

24881 method. Backends looking to populate this variable should

24882 do so via calling thisObj._set_affinity_or_anti_affinity_group() directly.

24883

24884 YANG Description: Identifier(s) of the affinity or anti-affinity

24885 group(s) the VnfProfile belongs to.

24886 """

24887 if hasattr(v, "_utype"):

24888 v = v._utype(v)

24889 try:

24890 t = YANGDynClass(v,base=YANGListType("id",yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_nsd_df_vnf_profile_affinity_or_anti_affinity_group, yang_name="affinity-or-anti-affinity-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

24891 except (TypeError, ValueError):

24892 raise ValueError({

24893 'error-string': """affinity_or_anti_affinity_group must be of a type compatible with list""",

24894 'defined-type': "list",

24895 'generated-type': """YANGDynClass(base=YANGListType("id",yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_nsd_df_vnf_profile_affinity_or_anti_affinity_group, yang_name="affinity-or-anti-affinity-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

24896 })

24897

24898 self.__affinity_or_anti_affinity_group = t

24899 if hasattr(self, '_set'):

24900 self._set()

24901

24902 def _unset_affinity_or_anti_affinity_group(self):

24903 self.__affinity_or_anti_affinity_group = YANGDynClass(base=YANGListType("id",yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_nsd_df_vnf_profile_affinity_or_anti_affinity_group, yang_name="affinity-or-anti-affinity-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

24904

24905

24906 def _get_virtual_link_connectivity(self):

24907 """

24908 Getter method for virtual_link_connectivity, mapped from YANG variable /nsd/nsd/df/vnf_profile/virtual_link_connectivity (list)

24909

24910 YANG Description: Defines the connection information of the VNF, it

24911 contains connection relationship between a VNF

24912 connection point and a NS Virtual Link.

24913 """

24914 return self.__virtual_link_connectivity

24915

24916 def _set_virtual_link_connectivity(self, v, load=False):

24917 """

24918 Setter method for virtual_link_connectivity, mapped from YANG variable /nsd/nsd/df/vnf_profile/virtual_link_connectivity (list)

24919 If this variable is read-only (config: false) in the

24920 source YANG file, then _set_virtual_link_connectivity is considered as a private

24921 method. Backends looking to populate this variable should

24922 do so via calling thisObj._set_virtual_link_connectivity() directly.

24923

24924 YANG Description: Defines the connection information of the VNF, it

24925 contains connection relationship between a VNF

24926 connection point and a NS Virtual Link.

24927 """

24928 if hasattr(v, "_utype"):

24929 v = v._utype(v)

24930 try:

24931 t = YANGDynClass(v,base=YANGListType("virtual_link_profile_id",yc_virtual_link_connectivity_etsi_nfv_nsd__nsd_nsd_df_vnf_profile_virtual_link_connectivity, yang_name="virtual-link-connectivity", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='virtual-link-profile-id', extensions=None), is_container='list', yang_name="virtual-link-connectivity", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

24932 except (TypeError, ValueError):

24933 raise ValueError({

24934 'error-string': """virtual_link_connectivity must be of a type compatible with list""",

24935 'defined-type': "list",

24936 'generated-type': """YANGDynClass(base=YANGListType("virtual_link_profile_id",yc_virtual_link_connectivity_etsi_nfv_nsd__nsd_nsd_df_vnf_profile_virtual_link_connectivity, yang_name="virtual-link-connectivity", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='virtual-link-profile-id', extensions=None), is_container='list', yang_name="virtual-link-connectivity", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

24937 })

24938

24939 self.__virtual_link_connectivity = t

24940 if hasattr(self, '_set'):

24941 self._set()

24942

24943 def _unset_virtual_link_connectivity(self):

24944 self.__virtual_link_connectivity = YANGDynClass(base=YANGListType("virtual_link_profile_id",yc_virtual_link_connectivity_etsi_nfv_nsd__nsd_nsd_df_vnf_profile_virtual_link_connectivity, yang_name="virtual-link-connectivity", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='virtual-link-profile-id', extensions=None), is_container='list', yang_name="virtual-link-connectivity", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

24945

24946 id = __builtin__.property(_get_id, _set_id)

24947 vnfd_id = __builtin__.property(_get_vnfd_id, _set_vnfd_id)

24948 flavour_id = __builtin__.property(_get_flavour_id, _set_flavour_id)

24949 instantiation_level = __builtin__.property(_get_instantiation_level, _set_instantiation_level)

24950 min_number_of_instances = __builtin__.property(_get_min_number_of_instances, _set_min_number_of_instances)

24951 max_number_of_instances = __builtin__.property(_get_max_number_of_instances, _set_max_number_of_instances)

24952 local_affinity_or_anti_affinity_rule = __builtin__.property(_get_local_affinity_or_anti_affinity_rule, _set_local_affinity_or_anti_affinity_rule)

24953 affinity_or_anti_affinity_group = __builtin__.property(_get_affinity_or_anti_affinity_group, _set_affinity_or_anti_affinity_group)

24954 virtual_link_connectivity = __builtin__.property(_get_virtual_link_connectivity, _set_virtual_link_connectivity)

24955

24956

24957 _pyangbind_elements = OrderedDict([('id', id), ('vnfd_id', vnfd_id), ('flavour_id', flavour_id), ('instantiation_level', instantiation_level), ('min_number_of_instances', min_number_of_instances), ('max_number_of_instances', max_number_of_instances), ('local_affinity_or_anti_affinity_rule', local_affinity_or_anti_affinity_rule), ('affinity_or_anti_affinity_group', affinity_or_anti_affinity_group), ('virtual_link_connectivity', virtual_link_connectivity), ])

24958

24959

24960 class yc_constituent_cpd_id_etsi_nfv_nsd__nsd_nsd_df_pnf_profile_virtual_link_connectivity_constituent_cpd_id(PybindBase):

24961 """

24962 This class was auto-generated by the PythonClass plugin for PYANG

24963 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/pnf-profile/virtual-link-connectivity/constituent-cpd-id. Each member element of

24964 the container is represented as a class variable - with a specific

24965 YANG type.

24966

24967 YANG Description: Describes a connection point on a VNF/PNF or a SAP

24968 which connects to virtual links instantiated from

24969 the profile identified in the virtualLinkProfileId

24970 attribute.

24971 """

24972 __slots__ = ('_path_helper', '_extmethods', '__constituent_base_element_id','__constituent_cpd_id',)

24973

24974 _yang_name = 'constituent-cpd-id'

24975 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

24976

24977 _pybind_generated_by = 'container'

24978

24979 def __init__(self, *args, **kwargs):

24980

24981 self._path_helper = False

24982

24983 self._extmethods = False

24984 self.__constituent_base_element_id = YANGDynClass(base=str, is_leaf=True, yang_name="constituent-base-element-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

24985 self.__constituent_cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

24986

24987 load = kwargs.pop("load", None)

24988 if args:

24989 if len(args) > 1:

24990 raise TypeError("cannot create a YANG container with >1 argument")

24991 all_attr = True

24992 for e in self._pyangbind_elements:

24993 if not hasattr(args[0], e):

24994 all_attr = False

24995 break

24996 if not all_attr:

24997 raise ValueError("Supplied object did not have the correct attributes")

24998 for e in self._pyangbind_elements:

24999 nobj = getattr(args[0], e)

25000 if nobj._changed() is False:

25001 continue

25002 setmethod = getattr(self, "_set_%s" % e)

25003 if load is None:

25004 setmethod(getattr(args[0], e))

25005 else:

25006 setmethod(getattr(args[0], e), load=load)

25007

25008 def _path(self):

25009 if hasattr(self, "_parent"):

25010 return self._parent._path()+[self._yang_name]

25011 else:

25012 return ['nsd', 'nsd', 'df', 'pnf-profile', 'virtual-link-connectivity', 'constituent-cpd-id']

25013

25014 def _get_constituent_base_element_id(self):

25015 """

25016 Getter method for constituent_base_element_id, mapped from YANG variable /nsd/nsd/df/pnf_profile/virtual_link_connectivity/constituent_cpd_id/constituent_base_element_id (leafref)

25017

25018 YANG Description: Reference to the profile of an NS constituent.

25019 """

25020 return self.__constituent_base_element_id

25021

25022 def _set_constituent_base_element_id(self, v, load=False):

25023 """

25024 Setter method for constituent_base_element_id, mapped from YANG variable /nsd/nsd/df/pnf_profile/virtual_link_connectivity/constituent_cpd_id/constituent_base_element_id (leafref)

25025 If this variable is read-only (config: false) in the

25026 source YANG file, then _set_constituent_base_element_id is considered as a private

25027 method. Backends looking to populate this variable should

25028 do so via calling thisObj._set_constituent_base_element_id() directly.

25029

25030 YANG Description: Reference to the profile of an NS constituent.

25031 """

25032 parent = getattr(self, "_parent", None)

25033 if parent is not None and load is False:

25034 raise AttributeError("Cannot set keys directly when" +

25035 " within an instantiated list")

25036

25037 if hasattr(v, "_utype"):

25038 v = v._utype(v)

25039 try:

25040 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="constituent-base-element-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

25041 except (TypeError, ValueError):

25042 raise ValueError({

25043 'error-string': """constituent_base_element_id must be of a type compatible with leafref""",

25044 'defined-type': "leafref",

25045 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="constituent-base-element-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

25046 })

25047

25048 self.__constituent_base_element_id = t

25049 if hasattr(self, '_set'):

25050 self._set()

25051

25052 def _unset_constituent_base_element_id(self):

25053 self.__constituent_base_element_id = YANGDynClass(base=str, is_leaf=True, yang_name="constituent-base-element-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

25054

25055

25056 def _get_constituent_cpd_id(self):

25057 """

25058 Getter method for constituent_cpd_id, mapped from YANG variable /nsd/nsd/df/pnf_profile/virtual_link_connectivity/constituent_cpd_id/constituent_cpd_id (leafref)

25059

25060 YANG Description: A reference to the descriptor of a connection point

25061 attached to one of the constituent VNFs and PNFs or to

25062 the descriptor of a NS SAP.

25063 """

25064 return self.__constituent_cpd_id

25065

25066 def _set_constituent_cpd_id(self, v, load=False):

25067 """

25068 Setter method for constituent_cpd_id, mapped from YANG variable /nsd/nsd/df/pnf_profile/virtual_link_connectivity/constituent_cpd_id/constituent_cpd_id (leafref)

25069 If this variable is read-only (config: false) in the

25070 source YANG file, then _set_constituent_cpd_id is considered as a private

25071 method. Backends looking to populate this variable should

25072 do so via calling thisObj._set_constituent_cpd_id() directly.

25073

25074 YANG Description: A reference to the descriptor of a connection point

25075 attached to one of the constituent VNFs and PNFs or to

25076 the descriptor of a NS SAP.

25077 """

25078 if hasattr(v, "_utype"):

25079 v = v._utype(v)

25080 try:

25081 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

25082 except (TypeError, ValueError):

25083 raise ValueError({

25084 'error-string': """constituent_cpd_id must be of a type compatible with leafref""",

25085 'defined-type': "leafref",

25086 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

25087 })

25088

25089 self.__constituent_cpd_id = t

25090 if hasattr(self, '_set'):

25091 self._set()

25092

25093 def _unset_constituent_cpd_id(self):

25094 self.__constituent_cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

25095

25096 constituent_base_element_id = __builtin__.property(_get_constituent_base_element_id, _set_constituent_base_element_id)

25097 constituent_cpd_id = __builtin__.property(_get_constituent_cpd_id, _set_constituent_cpd_id)

25098

25099

25100 _pyangbind_elements = OrderedDict([('constituent_base_element_id', constituent_base_element_id), ('constituent_cpd_id', constituent_cpd_id), ])

25101

25102

25103 class yc_virtual_link_connectivity_etsi_nfv_nsd__nsd_nsd_df_pnf_profile_virtual_link_connectivity(PybindBase):

25104 """

25105 This class was auto-generated by the PythonClass plugin for PYANG

25106 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/pnf-profile/virtual-link-connectivity. Each member element of

25107 the container is represented as a class variable - with a specific

25108 YANG type.

25109

25110 YANG Description: Defines the connection information of the PNF, it

25111 contains connection relationship between a PNF

25112 connection point and a NS Virtual Link.

25113 """

25114 __slots__ = ('_path_helper', '_extmethods', '__virtual_link_profile_id','__constituent_cpd_id',)

25115

25116 _yang_name = 'virtual-link-connectivity'

25117 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

25118

25119 _pybind_generated_by = 'container'

25120

25121 def __init__(self, *args, **kwargs):

25122

25123 self._path_helper = False

25124

25125 self._extmethods = False

25126 self.__virtual_link_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="virtual-link-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

25127 self.__constituent_cpd_id = YANGDynClass(base=YANGListType("constituent_base_element_id",yc_constituent_cpd_id_etsi_nfv_nsd__nsd_nsd_df_pnf_profile_virtual_link_connectivity_constituent_cpd_id, yang_name="constituent-cpd-id", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='constituent-base-element-id', extensions=None), is_container='list', yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

25128

25129 load = kwargs.pop("load", None)

25130 if args:

25131 if len(args) > 1:

25132 raise TypeError("cannot create a YANG container with >1 argument")

25133 all_attr = True

25134 for e in self._pyangbind_elements:

25135 if not hasattr(args[0], e):

25136 all_attr = False

25137 break

25138 if not all_attr:

25139 raise ValueError("Supplied object did not have the correct attributes")

25140 for e in self._pyangbind_elements:

25141 nobj = getattr(args[0], e)

25142 if nobj._changed() is False:

25143 continue

25144 setmethod = getattr(self, "_set_%s" % e)

25145 if load is None:

25146 setmethod(getattr(args[0], e))

25147 else:

25148 setmethod(getattr(args[0], e), load=load)

25149

25150 def _path(self):

25151 if hasattr(self, "_parent"):

25152 return self._parent._path()+[self._yang_name]

25153 else:

25154 return ['nsd', 'nsd', 'df', 'pnf-profile', 'virtual-link-connectivity']

25155

25156 def _get_virtual_link_profile_id(self):

25157 """

25158 Getter method for virtual_link_profile_id, mapped from YANG variable /nsd/nsd/df/pnf_profile/virtual_link_connectivity/virtual_link_profile_id (leafref)

25159

25160 YANG Description: Reference an NS VL profile.

25161 """

25162 return self.__virtual_link_profile_id

25163

25164 def _set_virtual_link_profile_id(self, v, load=False):

25165 """

25166 Setter method for virtual_link_profile_id, mapped from YANG variable /nsd/nsd/df/pnf_profile/virtual_link_connectivity/virtual_link_profile_id (leafref)

25167 If this variable is read-only (config: false) in the

25168 source YANG file, then _set_virtual_link_profile_id is considered as a private

25169 method. Backends looking to populate this variable should

25170 do so via calling thisObj._set_virtual_link_profile_id() directly.

25171

25172 YANG Description: Reference an NS VL profile.

25173 """

25174 parent = getattr(self, "_parent", None)

25175 if parent is not None and load is False:

25176 raise AttributeError("Cannot set keys directly when" +

25177 " within an instantiated list")

25178

25179 if hasattr(v, "_utype"):

25180 v = v._utype(v)

25181 try:

25182 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="virtual-link-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

25183 except (TypeError, ValueError):

25184 raise ValueError({

25185 'error-string': """virtual_link_profile_id must be of a type compatible with leafref""",

25186 'defined-type': "leafref",

25187 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="virtual-link-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

25188 })

25189

25190 self.__virtual_link_profile_id = t

25191 if hasattr(self, '_set'):

25192 self._set()

25193

25194 def _unset_virtual_link_profile_id(self):

25195 self.__virtual_link_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="virtual-link-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

25196

25197

25198 def _get_constituent_cpd_id(self):

25199 """

25200 Getter method for constituent_cpd_id, mapped from YANG variable /nsd/nsd/df/pnf_profile/virtual_link_connectivity/constituent_cpd_id (list)

25201

25202 YANG Description: Describes a connection point on a VNF/PNF or a SAP

25203 which connects to virtual links instantiated from

25204 the profile identified in the virtualLinkProfileId

25205 attribute.

25206 """

25207 return self.__constituent_cpd_id

25208

25209 def _set_constituent_cpd_id(self, v, load=False):

25210 """

25211 Setter method for constituent_cpd_id, mapped from YANG variable /nsd/nsd/df/pnf_profile/virtual_link_connectivity/constituent_cpd_id (list)

25212 If this variable is read-only (config: false) in the

25213 source YANG file, then _set_constituent_cpd_id is considered as a private

25214 method. Backends looking to populate this variable should

25215 do so via calling thisObj._set_constituent_cpd_id() directly.

25216

25217 YANG Description: Describes a connection point on a VNF/PNF or a SAP

25218 which connects to virtual links instantiated from

25219 the profile identified in the virtualLinkProfileId

25220 attribute.

25221 """

25222 if hasattr(v, "_utype"):

25223 v = v._utype(v)

25224 try:

25225 t = YANGDynClass(v,base=YANGListType("constituent_base_element_id",yc_constituent_cpd_id_etsi_nfv_nsd__nsd_nsd_df_pnf_profile_virtual_link_connectivity_constituent_cpd_id, yang_name="constituent-cpd-id", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='constituent-base-element-id', extensions=None), is_container='list', yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

25226 except (TypeError, ValueError):

25227 raise ValueError({

25228 'error-string': """constituent_cpd_id must be of a type compatible with list""",

25229 'defined-type': "list",

25230 'generated-type': """YANGDynClass(base=YANGListType("constituent_base_element_id",yc_constituent_cpd_id_etsi_nfv_nsd__nsd_nsd_df_pnf_profile_virtual_link_connectivity_constituent_cpd_id, yang_name="constituent-cpd-id", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='constituent-base-element-id', extensions=None), is_container='list', yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

25231 })

25232

25233 self.__constituent_cpd_id = t

25234 if hasattr(self, '_set'):

25235 self._set()

25236

25237 def _unset_constituent_cpd_id(self):

25238 self.__constituent_cpd_id = YANGDynClass(base=YANGListType("constituent_base_element_id",yc_constituent_cpd_id_etsi_nfv_nsd__nsd_nsd_df_pnf_profile_virtual_link_connectivity_constituent_cpd_id, yang_name="constituent-cpd-id", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='constituent-base-element-id', extensions=None), is_container='list', yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

25239

25240 virtual_link_profile_id = __builtin__.property(_get_virtual_link_profile_id, _set_virtual_link_profile_id)

25241 constituent_cpd_id = __builtin__.property(_get_constituent_cpd_id, _set_constituent_cpd_id)

25242

25243

25244 _pyangbind_elements = OrderedDict([('virtual_link_profile_id', virtual_link_profile_id), ('constituent_cpd_id', constituent_cpd_id), ])

25245

25246

25247 class yc_pnf_profile_etsi_nfv_nsd__nsd_nsd_df_pnf_profile(PybindBase):

25248 """

25249 This class was auto-generated by the PythonClass plugin for PYANG

25250 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/pnf-profile. Each member element of

25251 the container is represented as a class variable - with a specific

25252 YANG type.

25253 """

25254 __slots__ = ('_path_helper', '_extmethods', '__id','__pnfd_id','__virtual_link_connectivity',)

25255

25256 _yang_name = 'pnf-profile'

25257 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

25258

25259 _pybind_generated_by = 'container'

25260

25261 def __init__(self, *args, **kwargs):

25262

25263 self._path_helper = False

25264

25265 self._extmethods = False

25266 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

25267 self.__pnfd_id = YANGDynClass(base=str, is_leaf=True, yang_name="pnfd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

25268 self.__virtual_link_connectivity = YANGDynClass(base=YANGListType("virtual_link_profile_id",yc_virtual_link_connectivity_etsi_nfv_nsd__nsd_nsd_df_pnf_profile_virtual_link_connectivity, yang_name="virtual-link-connectivity", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='virtual-link-profile-id', extensions=None), is_container='list', yang_name="virtual-link-connectivity", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

25269

25270 load = kwargs.pop("load", None)

25271 if args:

25272 if len(args) > 1:

25273 raise TypeError("cannot create a YANG container with >1 argument")

25274 all_attr = True

25275 for e in self._pyangbind_elements:

25276 if not hasattr(args[0], e):

25277 all_attr = False

25278 break

25279 if not all_attr:

25280 raise ValueError("Supplied object did not have the correct attributes")

25281 for e in self._pyangbind_elements:

25282 nobj = getattr(args[0], e)

25283 if nobj._changed() is False:

25284 continue

25285 setmethod = getattr(self, "_set_%s" % e)

25286 if load is None:

25287 setmethod(getattr(args[0], e))

25288 else:

25289 setmethod(getattr(args[0], e), load=load)

25290

25291 def _path(self):

25292 if hasattr(self, "_parent"):

25293 return self._parent._path()+[self._yang_name]

25294 else:

25295 return ['nsd', 'nsd', 'df', 'pnf-profile']

25296

25297 def _get_id(self):

25298 """

25299 Getter method for id, mapped from YANG variable /nsd/nsd/df/pnf_profile/id (string)

25300

25301 YANG Description: Identifier of this PnfProfile information element.

25302 It uniquely identifies a PnfProfile.

25303 """

25304 return self.__id

25305

25306 def _set_id(self, v, load=False):

25307 """

25308 Setter method for id, mapped from YANG variable /nsd/nsd/df/pnf_profile/id (string)

25309 If this variable is read-only (config: false) in the

25310 source YANG file, then _set_id is considered as a private

25311 method. Backends looking to populate this variable should

25312 do so via calling thisObj._set_id() directly.

25313

25314 YANG Description: Identifier of this PnfProfile information element.

25315 It uniquely identifies a PnfProfile.

25316 """

25317 parent = getattr(self, "_parent", None)

25318 if parent is not None and load is False:

25319 raise AttributeError("Cannot set keys directly when" +

25320 " within an instantiated list")

25321

25322 if hasattr(v, "_utype"):

25323 v = v._utype(v)

25324 try:

25325 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

25326 except (TypeError, ValueError):

25327 raise ValueError({

25328 'error-string': """id must be of a type compatible with string""",

25329 'defined-type': "string",

25330 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

25331 })

25332

25333 self.__id = t

25334 if hasattr(self, '_set'):

25335 self._set()

25336

25337 def _unset_id(self):

25338 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

25339

25340

25341 def _get_pnfd_id(self):

25342 """

25343 Getter method for pnfd_id, mapped from YANG variable /nsd/nsd/df/pnf_profile/pnfd_id (leafref)

25344

25345 YANG Description: References a PNFD.

25346 """

25347 return self.__pnfd_id

25348

25349 def _set_pnfd_id(self, v, load=False):

25350 """

25351 Setter method for pnfd_id, mapped from YANG variable /nsd/nsd/df/pnf_profile/pnfd_id (leafref)

25352 If this variable is read-only (config: false) in the

25353 source YANG file, then _set_pnfd_id is considered as a private

25354 method. Backends looking to populate this variable should

25355 do so via calling thisObj._set_pnfd_id() directly.

25356

25357 YANG Description: References a PNFD.

25358 """

25359 if hasattr(v, "_utype"):

25360 v = v._utype(v)

25361 try:

25362 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="pnfd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

25363 except (TypeError, ValueError):

25364 raise ValueError({

25365 'error-string': """pnfd_id must be of a type compatible with leafref""",

25366 'defined-type': "leafref",

25367 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="pnfd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

25368 })

25369

25370 self.__pnfd_id = t

25371 if hasattr(self, '_set'):

25372 self._set()

25373

25374 def _unset_pnfd_id(self):

25375 self.__pnfd_id = YANGDynClass(base=str, is_leaf=True, yang_name="pnfd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

25376

25377

25378 def _get_virtual_link_connectivity(self):

25379 """

25380 Getter method for virtual_link_connectivity, mapped from YANG variable /nsd/nsd/df/pnf_profile/virtual_link_connectivity (list)

25381

25382 YANG Description: Defines the connection information of the PNF, it

25383 contains connection relationship between a PNF

25384 connection point and a NS Virtual Link.

25385 """

25386 return self.__virtual_link_connectivity

25387

25388 def _set_virtual_link_connectivity(self, v, load=False):

25389 """

25390 Setter method for virtual_link_connectivity, mapped from YANG variable /nsd/nsd/df/pnf_profile/virtual_link_connectivity (list)

25391 If this variable is read-only (config: false) in the

25392 source YANG file, then _set_virtual_link_connectivity is considered as a private

25393 method. Backends looking to populate this variable should

25394 do so via calling thisObj._set_virtual_link_connectivity() directly.

25395

25396 YANG Description: Defines the connection information of the PNF, it

25397 contains connection relationship between a PNF

25398 connection point and a NS Virtual Link.

25399 """

25400 if hasattr(v, "_utype"):

25401 v = v._utype(v)

25402 try:

25403 t = YANGDynClass(v,base=YANGListType("virtual_link_profile_id",yc_virtual_link_connectivity_etsi_nfv_nsd__nsd_nsd_df_pnf_profile_virtual_link_connectivity, yang_name="virtual-link-connectivity", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='virtual-link-profile-id', extensions=None), is_container='list', yang_name="virtual-link-connectivity", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

25404 except (TypeError, ValueError):

25405 raise ValueError({

25406 'error-string': """virtual_link_connectivity must be of a type compatible with list""",

25407 'defined-type': "list",

25408 'generated-type': """YANGDynClass(base=YANGListType("virtual_link_profile_id",yc_virtual_link_connectivity_etsi_nfv_nsd__nsd_nsd_df_pnf_profile_virtual_link_connectivity, yang_name="virtual-link-connectivity", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='virtual-link-profile-id', extensions=None), is_container='list', yang_name="virtual-link-connectivity", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

25409 })

25410

25411 self.__virtual_link_connectivity = t

25412 if hasattr(self, '_set'):

25413 self._set()

25414

25415 def _unset_virtual_link_connectivity(self):

25416 self.__virtual_link_connectivity = YANGDynClass(base=YANGListType("virtual_link_profile_id",yc_virtual_link_connectivity_etsi_nfv_nsd__nsd_nsd_df_pnf_profile_virtual_link_connectivity, yang_name="virtual-link-connectivity", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='virtual-link-profile-id', extensions=None), is_container='list', yang_name="virtual-link-connectivity", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

25417

25418 id = __builtin__.property(_get_id, _set_id)

25419 pnfd_id = __builtin__.property(_get_pnfd_id, _set_pnfd_id)

25420 virtual_link_connectivity = __builtin__.property(_get_virtual_link_connectivity, _set_virtual_link_connectivity)

25421

25422

25423 _pyangbind_elements = OrderedDict([('id', id), ('pnfd_id', pnfd_id), ('virtual_link_connectivity', virtual_link_connectivity), ])

25424

25425

25426 class yc_local_affinity_or_anti_affinity_rule_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_local_affinity_or_anti_affinity_rule(PybindBase):

25427 """

25428 This class was auto-generated by the PythonClass plugin for PYANG

25429 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/virtual-link-profile/local-affinity-or-anti-affinity-rule. Each member element of

25430 the container is represented as a class variable - with a specific

25431 YANG type.

25432 """

25433 __slots__ = ('_path_helper', '_extmethods', '__affinity_type','__affinity_scope',)

25434

25435 _yang_name = 'local-affinity-or-anti-affinity-rule'

25436 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

25437

25438 _pybind_generated_by = 'container'

25439

25440 def __init__(self, *args, **kwargs):

25441

25442 self._path_helper = False

25443

25444 self._extmethods = False

25445 self.__affinity_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'affinity': {}, 'anti-affinity': {}},), is_leaf=True, yang_name="affinity-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-type', is_config=True)

25446 self.__affinity_scope = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'nfvi-node': {}, 'zone-group': {}, 'zone': {}, 'nfvi-pop': {}},), is_leaf=True, yang_name="affinity-scope", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-scope', is_config=True)

25447

25448 load = kwargs.pop("load", None)

25449 if args:

25450 if len(args) > 1:

25451 raise TypeError("cannot create a YANG container with >1 argument")

25452 all_attr = True

25453 for e in self._pyangbind_elements:

25454 if not hasattr(args[0], e):

25455 all_attr = False

25456 break

25457 if not all_attr:

25458 raise ValueError("Supplied object did not have the correct attributes")

25459 for e in self._pyangbind_elements:

25460 nobj = getattr(args[0], e)

25461 if nobj._changed() is False:

25462 continue

25463 setmethod = getattr(self, "_set_%s" % e)

25464 if load is None:

25465 setmethod(getattr(args[0], e))

25466 else:

25467 setmethod(getattr(args[0], e), load=load)

25468

25469 def _path(self):

25470 if hasattr(self, "_parent"):

25471 return self._parent._path()+[self._yang_name]

25472 else:

25473 return ['nsd', 'nsd', 'df', 'virtual-link-profile', 'local-affinity-or-anti-affinity-rule']

25474

25475 def _get_affinity_type(self):

25476 """

25477 Getter method for affinity_type, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/local_affinity_or_anti_affinity_rule/affinity_type (affinity-type)

25478

25479 YANG Description: Specifies whether the rule is an affinity rule or an

25480 anti-affinity rule.

25481 """

25482 return self.__affinity_type

25483

25484 def _set_affinity_type(self, v, load=False):

25485 """

25486 Setter method for affinity_type, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/local_affinity_or_anti_affinity_rule/affinity_type (affinity-type)

25487 If this variable is read-only (config: false) in the

25488 source YANG file, then _set_affinity_type is considered as a private

25489 method. Backends looking to populate this variable should

25490 do so via calling thisObj._set_affinity_type() directly.

25491

25492 YANG Description: Specifies whether the rule is an affinity rule or an

25493 anti-affinity rule.

25494 """

25495 parent = getattr(self, "_parent", None)

25496 if parent is not None and load is False:

25497 raise AttributeError("Cannot set keys directly when" +

25498 " within an instantiated list")

25499

25500 if hasattr(v, "_utype"):

25501 v = v._utype(v)

25502 try:

25503 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'affinity': {}, 'anti-affinity': {}},), is_leaf=True, yang_name="affinity-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-type', is_config=True)

25504 except (TypeError, ValueError):

25505 raise ValueError({

25506 'error-string': """affinity_type must be of a type compatible with affinity-type""",

25507 'defined-type': "etsi-nfv-nsd:affinity-type",

25508 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'affinity': {}, 'anti-affinity': {}},), is_leaf=True, yang_name="affinity-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-type', is_config=True)""",

25509 })

25510

25511 self.__affinity_type = t

25512 if hasattr(self, '_set'):

25513 self._set()

25514

25515 def _unset_affinity_type(self):

25516 self.__affinity_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'affinity': {}, 'anti-affinity': {}},), is_leaf=True, yang_name="affinity-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-type', is_config=True)

25517

25518

25519 def _get_affinity_scope(self):

25520 """

25521 Getter method for affinity_scope, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/local_affinity_or_anti_affinity_rule/affinity_scope (affinity-scope)

25522

25523 YANG Description: Specifies the scope of the rule, possible values are

25524'NFVI-PoP', 'Zone', 'ZoneGroup', 'NFVI-node'.

25525 """

25526 return self.__affinity_scope

25527

25528 def _set_affinity_scope(self, v, load=False):

25529 """

25530 Setter method for affinity_scope, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/local_affinity_or_anti_affinity_rule/affinity_scope (affinity-scope)

25531 If this variable is read-only (config: false) in the

25532 source YANG file, then _set_affinity_scope is considered as a private

25533 method. Backends looking to populate this variable should

25534 do so via calling thisObj._set_affinity_scope() directly.

25535

25536 YANG Description: Specifies the scope of the rule, possible values are

25537'NFVI-PoP', 'Zone', 'ZoneGroup', 'NFVI-node'.

25538 """

25539 parent = getattr(self, "_parent", None)

25540 if parent is not None and load is False:

25541 raise AttributeError("Cannot set keys directly when" +

25542 " within an instantiated list")

25543

25544 if hasattr(v, "_utype"):

25545 v = v._utype(v)

25546 try:

25547 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'nfvi-node': {}, 'zone-group': {}, 'zone': {}, 'nfvi-pop': {}},), is_leaf=True, yang_name="affinity-scope", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-scope', is_config=True)

25548 except (TypeError, ValueError):

25549 raise ValueError({

25550 'error-string': """affinity_scope must be of a type compatible with affinity-scope""",

25551 'defined-type': "etsi-nfv-nsd:affinity-scope",

25552 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'nfvi-node': {}, 'zone-group': {}, 'zone': {}, 'nfvi-pop': {}},), is_leaf=True, yang_name="affinity-scope", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-scope', is_config=True)""",

25553 })

25554

25555 self.__affinity_scope = t

25556 if hasattr(self, '_set'):

25557 self._set()

25558

25559 def _unset_affinity_scope(self):

25560 self.__affinity_scope = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'nfvi-node': {}, 'zone-group': {}, 'zone': {}, 'nfvi-pop': {}},), is_leaf=True, yang_name="affinity-scope", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-scope', is_config=True)

25561

25562 affinity_type = __builtin__.property(_get_affinity_type, _set_affinity_type)

25563 affinity_scope = __builtin__.property(_get_affinity_scope, _set_affinity_scope)

25564

25565

25566 _pyangbind_elements = OrderedDict([('affinity_type', affinity_type), ('affinity_scope', affinity_scope), ])

25567

25568

25569 class yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_affinity_or_anti_affinity_group(PybindBase):

25570 """

25571 This class was auto-generated by the PythonClass plugin for PYANG

25572 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/virtual-link-profile/affinity-or-anti-affinity-group. Each member element of

25573 the container is represented as a class variable - with a specific

25574 YANG type.

25575

25576 YANG Description: Identifies an affinity or anti-affinity group the

25577 VLs instantiated according to the VlProfile belong

25578 to.

25579 """

25580 __slots__ = ('_path_helper', '_extmethods', '__id',)

25581

25582 _yang_name = 'affinity-or-anti-affinity-group'

25583 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

25584

25585 _pybind_generated_by = 'container'

25586

25587 def __init__(self, *args, **kwargs):

25588

25589 self._path_helper = False

25590

25591 self._extmethods = False

25592 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

25593

25594 load = kwargs.pop("load", None)

25595 if args:

25596 if len(args) > 1:

25597 raise TypeError("cannot create a YANG container with >1 argument")

25598 all_attr = True

25599 for e in self._pyangbind_elements:

25600 if not hasattr(args[0], e):

25601 all_attr = False

25602 break

25603 if not all_attr:

25604 raise ValueError("Supplied object did not have the correct attributes")

25605 for e in self._pyangbind_elements:

25606 nobj = getattr(args[0], e)

25607 if nobj._changed() is False:

25608 continue

25609 setmethod = getattr(self, "_set_%s" % e)

25610 if load is None:

25611 setmethod(getattr(args[0], e))

25612 else:

25613 setmethod(getattr(args[0], e), load=load)

25614

25615 def _path(self):

25616 if hasattr(self, "_parent"):

25617 return self._parent._path()+[self._yang_name]

25618 else:

25619 return ['nsd', 'nsd', 'df', 'virtual-link-profile', 'affinity-or-anti-affinity-group']

25620

25621 def _get_id(self):

25622 """

25623 Getter method for id, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/affinity_or_anti_affinity_group/id (leafref)

25624 """

25625 return self.__id

25626

25627 def _set_id(self, v, load=False):

25628 """

25629 Setter method for id, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/affinity_or_anti_affinity_group/id (leafref)

25630 If this variable is read-only (config: false) in the

25631 source YANG file, then _set_id is considered as a private

25632 method. Backends looking to populate this variable should

25633 do so via calling thisObj._set_id() directly.

25634 """

25635 parent = getattr(self, "_parent", None)

25636 if parent is not None and load is False:

25637 raise AttributeError("Cannot set keys directly when" +

25638 " within an instantiated list")

25639

25640 if hasattr(v, "_utype"):

25641 v = v._utype(v)

25642 try:

25643 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

25644 except (TypeError, ValueError):

25645 raise ValueError({

25646 'error-string': """id must be of a type compatible with leafref""",

25647 'defined-type': "leafref",

25648 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

25649 })

25650

25651 self.__id = t

25652 if hasattr(self, '_set'):

25653 self._set()

25654

25655 def _unset_id(self):

25656 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

25657

25658 id = __builtin__.property(_get_id, _set_id)

25659

25660

25661 _pyangbind_elements = OrderedDict([('id', id), ])

25662

25663

25664 class yc_max_bitrate_requirements_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_max_bitrate_requirements(PybindBase):

25665 """

25666 This class was auto-generated by the PythonClass plugin for PYANG

25667 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/virtual-link-profile/max-bitrate-requirements. Each member element of

25668 the container is represented as a class variable - with a specific

25669 YANG type.

25670

25671 YANG Description: Specifies the maximum bitrate requirements for a VL

25672 instantiated according to this profile.

25673 """

25674 __slots__ = ('_path_helper', '_extmethods', '__root','__leaf',)

25675

25676 _yang_name = 'max-bitrate-requirements'

25677 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

25678

25679 _pybind_generated_by = 'container'

25680

25681 def __init__(self, *args, **kwargs):

25682

25683 self._path_helper = False

25684

25685 self._extmethods = False

25686 self.__root = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="root", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

25687 self.__leaf = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="leaf", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

25688

25689 load = kwargs.pop("load", None)

25690 if args:

25691 if len(args) > 1:

25692 raise TypeError("cannot create a YANG container with >1 argument")

25693 all_attr = True

25694 for e in self._pyangbind_elements:

25695 if not hasattr(args[0], e):

25696 all_attr = False

25697 break

25698 if not all_attr:

25699 raise ValueError("Supplied object did not have the correct attributes")

25700 for e in self._pyangbind_elements:

25701 nobj = getattr(args[0], e)

25702 if nobj._changed() is False:

25703 continue

25704 setmethod = getattr(self, "_set_%s" % e)

25705 if load is None:

25706 setmethod(getattr(args[0], e))

25707 else:

25708 setmethod(getattr(args[0], e), load=load)

25709

25710 def _path(self):

25711 if hasattr(self, "_parent"):

25712 return self._parent._path()+[self._yang_name]

25713 else:

25714 return ['nsd', 'nsd', 'df', 'virtual-link-profile', 'max-bitrate-requirements']

25715

25716 def _get_root(self):

25717 """

25718 Getter method for root, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/max_bitrate_requirements/root (uint64)

25719

25720 YANG Description: Specifies the throughput requirement of

25721 the link (e.g. bitrate of E-Line, root bitrate

25722 of E-Tree, aggregate capacity of E-LAN).

25723 """

25724 return self.__root

25725

25726 def _set_root(self, v, load=False):

25727 """

25728 Setter method for root, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/max_bitrate_requirements/root (uint64)

25729 If this variable is read-only (config: false) in the

25730 source YANG file, then _set_root is considered as a private

25731 method. Backends looking to populate this variable should

25732 do so via calling thisObj._set_root() directly.

25733

25734 YANG Description: Specifies the throughput requirement of

25735 the link (e.g. bitrate of E-Line, root bitrate

25736 of E-Tree, aggregate capacity of E-LAN).

25737 """

25738 if hasattr(v, "_utype"):

25739 v = v._utype(v)

25740 try:

25741 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="root", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

25742 except (TypeError, ValueError):

25743 raise ValueError({

25744 'error-string': """root must be of a type compatible with uint64""",

25745 'defined-type': "uint64",

25746 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="root", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)""",

25747 })

25748

25749 self.__root = t

25750 if hasattr(self, '_set'):

25751 self._set()

25752

25753 def _unset_root(self):

25754 self.__root = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="root", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

25755

25756

25757 def _get_leaf(self):

25758 """

25759 Getter method for leaf, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/max_bitrate_requirements/leaf (uint64)

25760

25761 YANG Description: Specifies the throughput requirement of

25762 leaf connections to the link when

25763 applicable to the connectivity type (e.g. for

25764 E-Tree and E-LAN branches).

25765 """

25766 return self.__leaf

25767

25768 def _set_leaf(self, v, load=False):

25769 """

25770 Setter method for leaf, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/max_bitrate_requirements/leaf (uint64)

25771 If this variable is read-only (config: false) in the

25772 source YANG file, then _set_leaf is considered as a private

25773 method. Backends looking to populate this variable should

25774 do so via calling thisObj._set_leaf() directly.

25775

25776 YANG Description: Specifies the throughput requirement of

25777 leaf connections to the link when

25778 applicable to the connectivity type (e.g. for

25779 E-Tree and E-LAN branches).

25780 """

25781 if hasattr(v, "_utype"):

25782 v = v._utype(v)

25783 try:

25784 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="leaf", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

25785 except (TypeError, ValueError):

25786 raise ValueError({

25787 'error-string': """leaf must be of a type compatible with uint64""",

25788 'defined-type': "uint64",

25789 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="leaf", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)""",

25790 })

25791

25792 self.__leaf = t

25793 if hasattr(self, '_set'):

25794 self._set()

25795

25796 def _unset_leaf(self):

25797 self.__leaf = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="leaf", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

25798

25799 root = __builtin__.property(_get_root, _set_root)

25800 leaf = __builtin__.property(_get_leaf, _set_leaf)

25801

25802

25803 _pyangbind_elements = OrderedDict([('root', root), ('leaf', leaf), ])

25804

25805

25806 class yc_min_bitrate_requirements_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_min_bitrate_requirements(PybindBase):

25807 """

25808 This class was auto-generated by the PythonClass plugin for PYANG

25809 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/virtual-link-profile/min-bitrate-requirements. Each member element of

25810 the container is represented as a class variable - with a specific

25811 YANG type.

25812

25813 YANG Description: Specifies the minimum bitrate requirements for a VL

25814 instantiated according to this profile.

25815 """

25816 __slots__ = ('_path_helper', '_extmethods', '__root','__leaf',)

25817

25818 _yang_name = 'min-bitrate-requirements'

25819 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

25820

25821 _pybind_generated_by = 'container'

25822

25823 def __init__(self, *args, **kwargs):

25824

25825 self._path_helper = False

25826

25827 self._extmethods = False

25828 self.__root = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="root", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

25829 self.__leaf = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="leaf", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

25830

25831 load = kwargs.pop("load", None)

25832 if args:

25833 if len(args) > 1:

25834 raise TypeError("cannot create a YANG container with >1 argument")

25835 all_attr = True

25836 for e in self._pyangbind_elements:

25837 if not hasattr(args[0], e):

25838 all_attr = False

25839 break

25840 if not all_attr:

25841 raise ValueError("Supplied object did not have the correct attributes")

25842 for e in self._pyangbind_elements:

25843 nobj = getattr(args[0], e)

25844 if nobj._changed() is False:

25845 continue

25846 setmethod = getattr(self, "_set_%s" % e)

25847 if load is None:

25848 setmethod(getattr(args[0], e))

25849 else:

25850 setmethod(getattr(args[0], e), load=load)

25851

25852 def _path(self):

25853 if hasattr(self, "_parent"):

25854 return self._parent._path()+[self._yang_name]

25855 else:

25856 return ['nsd', 'nsd', 'df', 'virtual-link-profile', 'min-bitrate-requirements']

25857

25858 def _get_root(self):

25859 """

25860 Getter method for root, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/min_bitrate_requirements/root (uint64)

25861

25862 YANG Description: Specifies the throughput requirement of

25863 the link (e.g. bitrate of E-Line, root bitrate

25864 of E-Tree, aggregate capacity of E-LAN).

25865 """

25866 return self.__root

25867

25868 def _set_root(self, v, load=False):

25869 """

25870 Setter method for root, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/min_bitrate_requirements/root (uint64)

25871 If this variable is read-only (config: false) in the

25872 source YANG file, then _set_root is considered as a private

25873 method. Backends looking to populate this variable should

25874 do so via calling thisObj._set_root() directly.

25875

25876 YANG Description: Specifies the throughput requirement of

25877 the link (e.g. bitrate of E-Line, root bitrate

25878 of E-Tree, aggregate capacity of E-LAN).

25879 """

25880 if hasattr(v, "_utype"):

25881 v = v._utype(v)

25882 try:

25883 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="root", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

25884 except (TypeError, ValueError):

25885 raise ValueError({

25886 'error-string': """root must be of a type compatible with uint64""",

25887 'defined-type': "uint64",

25888 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="root", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)""",

25889 })

25890

25891 self.__root = t

25892 if hasattr(self, '_set'):

25893 self._set()

25894

25895 def _unset_root(self):

25896 self.__root = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="root", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

25897

25898

25899 def _get_leaf(self):

25900 """

25901 Getter method for leaf, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/min_bitrate_requirements/leaf (uint64)

25902

25903 YANG Description: Specifies the throughput requirement of

25904 leaf connections to the link when

25905 applicable to the connectivity type (e.g. for

25906 E-Tree and E-LAN branches).

25907 """

25908 return self.__leaf

25909

25910 def _set_leaf(self, v, load=False):

25911 """

25912 Setter method for leaf, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/min_bitrate_requirements/leaf (uint64)

25913 If this variable is read-only (config: false) in the

25914 source YANG file, then _set_leaf is considered as a private

25915 method. Backends looking to populate this variable should

25916 do so via calling thisObj._set_leaf() directly.

25917

25918 YANG Description: Specifies the throughput requirement of

25919 leaf connections to the link when

25920 applicable to the connectivity type (e.g. for

25921 E-Tree and E-LAN branches).

25922 """

25923 if hasattr(v, "_utype"):

25924 v = v._utype(v)

25925 try:

25926 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="leaf", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

25927 except (TypeError, ValueError):

25928 raise ValueError({

25929 'error-string': """leaf must be of a type compatible with uint64""",

25930 'defined-type': "uint64",

25931 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="leaf", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)""",

25932 })

25933

25934 self.__leaf = t

25935 if hasattr(self, '_set'):

25936 self._set()

25937

25938 def _unset_leaf(self):

25939 self.__leaf = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="leaf", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

25940

25941 root = __builtin__.property(_get_root, _set_root)

25942 leaf = __builtin__.property(_get_leaf, _set_leaf)

25943

25944

25945 _pyangbind_elements = OrderedDict([('root', root), ('leaf', leaf), ])

25946

25947

25948 class yc_l2_protocol_data_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_virtual_link_protocol_data_l2_protocol_data(PybindBase):

25949 """

25950 This class was auto-generated by the PythonClass plugin for PYANG

25951 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/virtual-link-profile/virtual-link-protocol-data/l2-protocol-data. Each member element of

25952 the container is represented as a class variable - with a specific

25953 YANG type.

25954

25955 YANG Description: Specifies the L2 protocol data for this virtual link.

25956 Shall be present when the associatedLayerProtocol

25957 attribute indicates a L2 protocol and shall be absent

25958 otherwise.

25959 """

25960 __slots__ = ('_path_helper', '_extmethods', '__name','__network_type','__vlan_transparent','__mtu',)

25961

25962 _yang_name = 'l2-protocol-data'

25963 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

25964

25965 _pybind_generated_by = 'container'

25966

25967 def __init__(self, *args, **kwargs):

25968

25969 self._path_helper = False

25970

25971 self._extmethods = False

25972 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='string', is_config=True)

25973 self.__network_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'flat': {}, 'vlan': {}, 'vxlan': {}, 'gre': {}},), is_leaf=True, yang_name="network-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='enumeration', is_config=True)

25974 self.__vlan_transparent = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="vlan-transparent", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='boolean', is_config=True)

25975 self.__mtu = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), is_leaf=True, yang_name="mtu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='uint16', is_config=True)

25976

25977 load = kwargs.pop("load", None)

25978 if args:

25979 if len(args) > 1:

25980 raise TypeError("cannot create a YANG container with >1 argument")

25981 all_attr = True

25982 for e in self._pyangbind_elements:

25983 if not hasattr(args[0], e):

25984 all_attr = False

25985 break

25986 if not all_attr:

25987 raise ValueError("Supplied object did not have the correct attributes")

25988 for e in self._pyangbind_elements:

25989 nobj = getattr(args[0], e)

25990 if nobj._changed() is False:

25991 continue

25992 setmethod = getattr(self, "_set_%s" % e)

25993 if load is None:

25994 setmethod(getattr(args[0], e))

25995 else:

25996 setmethod(getattr(args[0], e), load=load)

25997

25998 def _path(self):

25999 if hasattr(self, "_parent"):

26000 return self._parent._path()+[self._yang_name]

26001 else:

26002 return ['nsd', 'nsd', 'df', 'virtual-link-profile', 'virtual-link-protocol-data', 'l2-protocol-data']

26003

26004 def _get_name(self):

26005 """

26006 Getter method for name, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l2_protocol_data/name (string)

26007

26008 YANG Description: Network name associated with this L2 protocol.

26009 """

26010 return self.__name

26011

26012 def _set_name(self, v, load=False):

26013 """

26014 Setter method for name, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l2_protocol_data/name (string)

26015 If this variable is read-only (config: false) in the

26016 source YANG file, then _set_name is considered as a private

26017 method. Backends looking to populate this variable should

26018 do so via calling thisObj._set_name() directly.

26019

26020 YANG Description: Network name associated with this L2 protocol.

26021 """

26022 if hasattr(v, "_utype"):

26023 v = v._utype(v)

26024 try:

26025 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='string', is_config=True)

26026 except (TypeError, ValueError):

26027 raise ValueError({

26028 'error-string': """name must be of a type compatible with string""",

26029 'defined-type': "string",

26030 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='string', is_config=True)""",

26031 })

26032

26033 self.__name = t

26034 if hasattr(self, '_set'):

26035 self._set()

26036

26037 def _unset_name(self):

26038 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='string', is_config=True)

26039

26040

26041 def _get_network_type(self):

26042 """

26043 Getter method for network_type, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l2_protocol_data/network_type (enumeration)

26044

26045 YANG Description: Specifies the network type for this L2 protocol.

26046 Possible values: FLAT, VLAN, VXLAN, GRE.

26047 """

26048 return self.__network_type

26049

26050 def _set_network_type(self, v, load=False):

26051 """

26052 Setter method for network_type, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l2_protocol_data/network_type (enumeration)

26053 If this variable is read-only (config: false) in the

26054 source YANG file, then _set_network_type is considered as a private

26055 method. Backends looking to populate this variable should

26056 do so via calling thisObj._set_network_type() directly.

26057

26058 YANG Description: Specifies the network type for this L2 protocol.

26059 Possible values: FLAT, VLAN, VXLAN, GRE.

26060 """

26061 if hasattr(v, "_utype"):

26062 v = v._utype(v)

26063 try:

26064 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'flat': {}, 'vlan': {}, 'vxlan': {}, 'gre': {}},), is_leaf=True, yang_name="network-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='enumeration', is_config=True)

26065 except (TypeError, ValueError):

26066 raise ValueError({

26067 'error-string': """network_type must be of a type compatible with enumeration""",

26068 'defined-type': "ip-profiles:enumeration",

26069 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'flat': {}, 'vlan': {}, 'vxlan': {}, 'gre': {}},), is_leaf=True, yang_name="network-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='enumeration', is_config=True)""",

26070 })

26071

26072 self.__network_type = t

26073 if hasattr(self, '_set'):

26074 self._set()

26075

26076 def _unset_network_type(self):

26077 self.__network_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'flat': {}, 'vlan': {}, 'vxlan': {}, 'gre': {}},), is_leaf=True, yang_name="network-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='enumeration', is_config=True)

26078

26079

26080 def _get_vlan_transparent(self):

26081 """

26082 Getter method for vlan_transparent, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l2_protocol_data/vlan_transparent (boolean)

26083

26084 YANG Description: Specifies whether to support VLAN transparency for

26085 this L2 protocol or not.

26086 """

26087 return self.__vlan_transparent

26088

26089 def _set_vlan_transparent(self, v, load=False):

26090 """

26091 Setter method for vlan_transparent, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l2_protocol_data/vlan_transparent (boolean)

26092 If this variable is read-only (config: false) in the

26093 source YANG file, then _set_vlan_transparent is considered as a private

26094 method. Backends looking to populate this variable should

26095 do so via calling thisObj._set_vlan_transparent() directly.

26096

26097 YANG Description: Specifies whether to support VLAN transparency for

26098 this L2 protocol or not.

26099 """

26100 if hasattr(v, "_utype"):

26101 v = v._utype(v)

26102 try:

26103 t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="vlan-transparent", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='boolean', is_config=True)

26104 except (TypeError, ValueError):

26105 raise ValueError({

26106 'error-string': """vlan_transparent must be of a type compatible with boolean""",

26107 'defined-type': "boolean",

26108 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="vlan-transparent", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='boolean', is_config=True)""",

26109 })

26110

26111 self.__vlan_transparent = t

26112 if hasattr(self, '_set'):

26113 self._set()

26114

26115 def _unset_vlan_transparent(self):

26116 self.__vlan_transparent = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="vlan-transparent", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='boolean', is_config=True)

26117

26118

26119 def _get_mtu(self):

26120 """

26121 Getter method for mtu, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l2_protocol_data/mtu (uint16)

26122

26123 YANG Description: Specifies the maximum transmission unit (MTU) value

26124 for this L2 protocol.

26125 """

26126 return self.__mtu

26127

26128 def _set_mtu(self, v, load=False):

26129 """

26130 Setter method for mtu, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l2_protocol_data/mtu (uint16)

26131 If this variable is read-only (config: false) in the

26132 source YANG file, then _set_mtu is considered as a private

26133 method. Backends looking to populate this variable should

26134 do so via calling thisObj._set_mtu() directly.

26135

26136 YANG Description: Specifies the maximum transmission unit (MTU) value

26137 for this L2 protocol.

26138 """

26139 if hasattr(v, "_utype"):

26140 v = v._utype(v)

26141 try:

26142 t = YANGDynClass(v,base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), is_leaf=True, yang_name="mtu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='uint16', is_config=True)

26143 except (TypeError, ValueError):

26144 raise ValueError({

26145 'error-string': """mtu must be of a type compatible with uint16""",

26146 'defined-type': "uint16",

26147 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), is_leaf=True, yang_name="mtu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='uint16', is_config=True)""",

26148 })

26149

26150 self.__mtu = t

26151 if hasattr(self, '_set'):

26152 self._set()

26153

26154 def _unset_mtu(self):

26155 self.__mtu = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), is_leaf=True, yang_name="mtu", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='uint16', is_config=True)

26156

26157 name = __builtin__.property(_get_name, _set_name)

26158 network_type = __builtin__.property(_get_network_type, _set_network_type)

26159 vlan_transparent = __builtin__.property(_get_vlan_transparent, _set_vlan_transparent)

26160 mtu = __builtin__.property(_get_mtu, _set_mtu)

26161

26162

26163 _pyangbind_elements = OrderedDict([('name', name), ('network_type', network_type), ('vlan_transparent', vlan_transparent), ('mtu', mtu), ])

26164

26165

26166 class yc_l3_protocol_data_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_virtual_link_protocol_data_l3_protocol_data(PybindBase):

26167 """

26168 This class was auto-generated by the PythonClass plugin for PYANG

26169 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/virtual-link-profile/virtual-link-protocol-data/l3-protocol-data. Each member element of

26170 the container is represented as a class variable - with a specific

26171 YANG type.

26172

26173 YANG Description: Specifies the L3 protocol data for this virtual link.

26174 Shall be present when the associatedLayerProtocol

26175 attribute indicates a L3 protocol and shall be absent

26176 otherwise.

26177 """

26178 __slots__ = ('_path_helper', '_extmethods', '__name','__ip_version','__cidr','__ip_allocation_pools','__gateway_ip','__dhcp_enabled','__ipv6_address_mode','__security_group',)

26179

26180 _yang_name = 'l3-protocol-data'

26181 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

26182

26183 _pybind_generated_by = 'container'

26184

26185 def __init__(self, *args, **kwargs):

26186

26187 self._path_helper = False

26188

26189 self._extmethods = False

26190 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='string', is_config=True)

26191 self.__ip_version = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), default=str("ipv4"), is_leaf=True, yang_name="ip-version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='enumeration', is_config=True)

26192 self.__cidr = YANGDynClass(base=str, is_leaf=True, yang_name="cidr", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='string', is_config=True)

26193 self.__ip_allocation_pools = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="ip-allocation-pools", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='string', is_config=True)

26194 self.__gateway_ip = YANGDynClass(base=[RestrictedClassType(base_type=str, restriction_dict={'pattern': '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\\p{N}\\p{L}]+)?'}),RestrictedClassType(base_type=str, restriction_dict={'pattern': '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))(%[\\p{N}\\p{L}]+)?'}),], is_leaf=True, yang_name="gateway-ip", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='inet:ip-address', is_config=True)

26195 self.__dhcp_enabled = YANGDynClass(base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="dhcp-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='boolean', is_config=True)

26196 self.__ipv6_address_mode = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'slaac': {}, 'dhcpv6-stateful': {}, 'dhcpv6-stateless': {}},), is_leaf=True, yang_name="ipv6-address-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='enumeration', is_config=True)

26197 self.__security_group = YANGDynClass(base=str, is_leaf=True, yang_name="security-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-various', defining_module='ns-various', yang_type='string', is_config=True)

26198

26199 load = kwargs.pop("load", None)

26200 if args:

26201 if len(args) > 1:

26202 raise TypeError("cannot create a YANG container with >1 argument")

26203 all_attr = True

26204 for e in self._pyangbind_elements:

26205 if not hasattr(args[0], e):

26206 all_attr = False

26207 break

26208 if not all_attr:

26209 raise ValueError("Supplied object did not have the correct attributes")

26210 for e in self._pyangbind_elements:

26211 nobj = getattr(args[0], e)

26212 if nobj._changed() is False:

26213 continue

26214 setmethod = getattr(self, "_set_%s" % e)

26215 if load is None:

26216 setmethod(getattr(args[0], e))

26217 else:

26218 setmethod(getattr(args[0], e), load=load)

26219

26220 def _path(self):

26221 if hasattr(self, "_parent"):

26222 return self._parent._path()+[self._yang_name]

26223 else:

26224 return ['nsd', 'nsd', 'df', 'virtual-link-profile', 'virtual-link-protocol-data', 'l3-protocol-data']

26225

26226 def _get_name(self):

26227 """

26228 Getter method for name, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/name (string)

26229

26230 YANG Description: Network name associated with this L3 protocol.

26231 """

26232 return self.__name

26233

26234 def _set_name(self, v, load=False):

26235 """

26236 Setter method for name, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/name (string)

26237 If this variable is read-only (config: false) in the

26238 source YANG file, then _set_name is considered as a private

26239 method. Backends looking to populate this variable should

26240 do so via calling thisObj._set_name() directly.

26241

26242 YANG Description: Network name associated with this L3 protocol.

26243 """

26244 if hasattr(v, "_utype"):

26245 v = v._utype(v)

26246 try:

26247 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='string', is_config=True)

26248 except (TypeError, ValueError):

26249 raise ValueError({

26250 'error-string': """name must be of a type compatible with string""",

26251 'defined-type': "string",

26252 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='string', is_config=True)""",

26253 })

26254

26255 self.__name = t

26256 if hasattr(self, '_set'):

26257 self._set()

26258

26259 def _unset_name(self):

26260 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='string', is_config=True)

26261

26262

26263 def _get_ip_version(self):

26264 """

26265 Getter method for ip_version, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/ip_version (enumeration)

26266

26267 YANG Description: Specifies IP version of this L3 protocol.

26268 Value:

26269• IPV4.

26270• IPV6.

26271 """

26272 return self.__ip_version

26273

26274 def _set_ip_version(self, v, load=False):

26275 """

26276 Setter method for ip_version, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/ip_version (enumeration)

26277 If this variable is read-only (config: false) in the

26278 source YANG file, then _set_ip_version is considered as a private

26279 method. Backends looking to populate this variable should

26280 do so via calling thisObj._set_ip_version() directly.

26281

26282 YANG Description: Specifies IP version of this L3 protocol.

26283 Value:

26284• IPV4.

26285• IPV6.

26286 """

26287 if hasattr(v, "_utype"):

26288 v = v._utype(v)

26289 try:

26290 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), default=str("ipv4"), is_leaf=True, yang_name="ip-version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='enumeration', is_config=True)

26291 except (TypeError, ValueError):

26292 raise ValueError({

26293 'error-string': """ip_version must be of a type compatible with enumeration""",

26294 'defined-type': "ip-profiles:enumeration",

26295 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), default=str("ipv4"), is_leaf=True, yang_name="ip-version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='enumeration', is_config=True)""",

26296 })

26297

26298 self.__ip_version = t

26299 if hasattr(self, '_set'):

26300 self._set()

26301

26302 def _unset_ip_version(self):

26303 self.__ip_version = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), default=str("ipv4"), is_leaf=True, yang_name="ip-version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='enumeration', is_config=True)

26304

26305

26306 def _get_cidr(self):

26307 """

26308 Getter method for cidr, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/cidr (string)

26309

26310 YANG Description: Specifies the CIDR (Classless InterDomain Routing)

26311 of this L3 protocol.

26312 """

26313 return self.__cidr

26314

26315 def _set_cidr(self, v, load=False):

26316 """

26317 Setter method for cidr, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/cidr (string)

26318 If this variable is read-only (config: false) in the

26319 source YANG file, then _set_cidr is considered as a private

26320 method. Backends looking to populate this variable should

26321 do so via calling thisObj._set_cidr() directly.

26322

26323 YANG Description: Specifies the CIDR (Classless InterDomain Routing)

26324 of this L3 protocol.

26325 """

26326 if hasattr(v, "_utype"):

26327 v = v._utype(v)

26328 try:

26329 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="cidr", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='string', is_config=True)

26330 except (TypeError, ValueError):

26331 raise ValueError({

26332 'error-string': """cidr must be of a type compatible with string""",

26333 'defined-type': "string",

26334 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="cidr", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='string', is_config=True)""",

26335 })

26336

26337 self.__cidr = t

26338 if hasattr(self, '_set'):

26339 self._set()

26340

26341 def _unset_cidr(self):

26342 self.__cidr = YANGDynClass(base=str, is_leaf=True, yang_name="cidr", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='string', is_config=True)

26343

26344

26345 def _get_ip_allocation_pools(self):

26346 """

26347 Getter method for ip_allocation_pools, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/ip_allocation_pools (string)

26348

26349 YANG Description: Specifies the allocation pools with start and end

26350 IP addresses for this L3 protocol.

26351 """

26352 return self.__ip_allocation_pools

26353

26354 def _set_ip_allocation_pools(self, v, load=False):

26355 """

26356 Setter method for ip_allocation_pools, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/ip_allocation_pools (string)

26357 If this variable is read-only (config: false) in the

26358 source YANG file, then _set_ip_allocation_pools is considered as a private

26359 method. Backends looking to populate this variable should

26360 do so via calling thisObj._set_ip_allocation_pools() directly.

26361

26362 YANG Description: Specifies the allocation pools with start and end

26363 IP addresses for this L3 protocol.

26364 """

26365 if hasattr(v, "_utype"):

26366 v = v._utype(v)

26367 try:

26368 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="ip-allocation-pools", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='string', is_config=True)

26369 except (TypeError, ValueError):

26370 raise ValueError({

26371 'error-string': """ip_allocation_pools must be of a type compatible with string""",

26372 'defined-type': "string",

26373 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="ip-allocation-pools", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='string', is_config=True)""",

26374 })

26375

26376 self.__ip_allocation_pools = t

26377 if hasattr(self, '_set'):

26378 self._set()

26379

26380 def _unset_ip_allocation_pools(self):

26381 self.__ip_allocation_pools = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="ip-allocation-pools", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='string', is_config=True)

26382

26383

26384 def _get_gateway_ip(self):

26385 """

26386 Getter method for gateway_ip, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/gateway_ip (inet:ip-address)

26387

26388 YANG Description: Specifies the gateway IP address for this L3

26389 protocol.

26390 """

26391 return self.__gateway_ip

26392

26393 def _set_gateway_ip(self, v, load=False):

26394 """

26395 Setter method for gateway_ip, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/gateway_ip (inet:ip-address)

26396 If this variable is read-only (config: false) in the

26397 source YANG file, then _set_gateway_ip is considered as a private

26398 method. Backends looking to populate this variable should

26399 do so via calling thisObj._set_gateway_ip() directly.

26400

26401 YANG Description: Specifies the gateway IP address for this L3

26402 protocol.

26403 """

26404 if hasattr(v, "_utype"):

26405 v = v._utype(v)

26406 try:

26407 t = YANGDynClass(v,base=[RestrictedClassType(base_type=str, restriction_dict={'pattern': '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\\p{N}\\p{L}]+)?'}),RestrictedClassType(base_type=str, restriction_dict={'pattern': '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))(%[\\p{N}\\p{L}]+)?'}),], is_leaf=True, yang_name="gateway-ip", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='inet:ip-address', is_config=True)

26408 except (TypeError, ValueError):

26409 raise ValueError({

26410 'error-string': """gateway_ip must be of a type compatible with inet:ip-address""",

26411 'defined-type': "inet:ip-address",

26412 'generated-type': """YANGDynClass(base=[RestrictedClassType(base_type=str, restriction_dict={'pattern': '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\\p{N}\\p{L}]+)?'}),RestrictedClassType(base_type=str, restriction_dict={'pattern': '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))(%[\\p{N}\\p{L}]+)?'}),], is_leaf=True, yang_name="gateway-ip", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='inet:ip-address', is_config=True)""",

26413 })

26414

26415 self.__gateway_ip = t

26416 if hasattr(self, '_set'):

26417 self._set()

26418

26419 def _unset_gateway_ip(self):

26420 self.__gateway_ip = YANGDynClass(base=[RestrictedClassType(base_type=str, restriction_dict={'pattern': '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\\p{N}\\p{L}]+)?'}),RestrictedClassType(base_type=str, restriction_dict={'pattern': '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))(%[\\p{N}\\p{L}]+)?'}),], is_leaf=True, yang_name="gateway-ip", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='inet:ip-address', is_config=True)

26421

26422

26423 def _get_dhcp_enabled(self):

26424 """

26425 Getter method for dhcp_enabled, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/dhcp_enabled (boolean)

26426

26427 YANG Description: Indicates whether DHCP (Dynamic Host Configuration

26428 Protocol) is enabled or disabled for this L3

26429 protocol.

26430 """

26431 return self.__dhcp_enabled

26432

26433 def _set_dhcp_enabled(self, v, load=False):

26434 """

26435 Setter method for dhcp_enabled, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/dhcp_enabled (boolean)

26436 If this variable is read-only (config: false) in the

26437 source YANG file, then _set_dhcp_enabled is considered as a private

26438 method. Backends looking to populate this variable should

26439 do so via calling thisObj._set_dhcp_enabled() directly.

26440

26441 YANG Description: Indicates whether DHCP (Dynamic Host Configuration

26442 Protocol) is enabled or disabled for this L3

26443 protocol.

26444 """

26445 if hasattr(v, "_utype"):

26446 v = v._utype(v)

26447 try:

26448 t = YANGDynClass(v,base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="dhcp-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='boolean', is_config=True)

26449 except (TypeError, ValueError):

26450 raise ValueError({

26451 'error-string': """dhcp_enabled must be of a type compatible with boolean""",

26452 'defined-type': "boolean",

26453 'generated-type': """YANGDynClass(base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="dhcp-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='boolean', is_config=True)""",

26454 })

26455

26456 self.__dhcp_enabled = t

26457 if hasattr(self, '_set'):

26458 self._set()

26459

26460 def _unset_dhcp_enabled(self):

26461 self.__dhcp_enabled = YANGDynClass(base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="dhcp-enabled", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='boolean', is_config=True)

26462

26463

26464 def _get_ipv6_address_mode(self):

26465 """

26466 Getter method for ipv6_address_mode, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/ipv6_address_mode (enumeration)

26467

26468 YANG Description: Specifies IPv6 address mode. Possible values:

26469• SLAAC.

26470• DHCPV6-STATEFUL.

26471• DHCPV6-STATELESS.

26472 May be present when the value of the ipVersion

26473 attribute is 'IPV6' and shall be absent otherwise.

26474 """

26475 return self.__ipv6_address_mode

26476

26477 def _set_ipv6_address_mode(self, v, load=False):

26478 """

26479 Setter method for ipv6_address_mode, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/ipv6_address_mode (enumeration)

26480 If this variable is read-only (config: false) in the

26481 source YANG file, then _set_ipv6_address_mode is considered as a private

26482 method. Backends looking to populate this variable should

26483 do so via calling thisObj._set_ipv6_address_mode() directly.

26484

26485 YANG Description: Specifies IPv6 address mode. Possible values:

26486• SLAAC.

26487• DHCPV6-STATEFUL.

26488• DHCPV6-STATELESS.

26489 May be present when the value of the ipVersion

26490 attribute is 'IPV6' and shall be absent otherwise.

26491 """

26492 if hasattr(v, "_utype"):

26493 v = v._utype(v)

26494 try:

26495 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'slaac': {}, 'dhcpv6-stateful': {}, 'dhcpv6-stateless': {}},), is_leaf=True, yang_name="ipv6-address-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='enumeration', is_config=True)

26496 except (TypeError, ValueError):

26497 raise ValueError({

26498 'error-string': """ipv6_address_mode must be of a type compatible with enumeration""",

26499 'defined-type': "ip-profiles:enumeration",

26500 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'slaac': {}, 'dhcpv6-stateful': {}, 'dhcpv6-stateless': {}},), is_leaf=True, yang_name="ipv6-address-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='enumeration', is_config=True)""",

26501 })

26502

26503 self.__ipv6_address_mode = t

26504 if hasattr(self, '_set'):

26505 self._set()

26506

26507 def _unset_ipv6_address_mode(self):

26508 self.__ipv6_address_mode = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'slaac': {}, 'dhcpv6-stateful': {}, 'dhcpv6-stateless': {}},), is_leaf=True, yang_name="ipv6-address-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='enumeration', is_config=True)

26509

26510

26511 def _get_security_group(self):

26512 """

26513 Getter method for security_group, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/security_group (string)

26514

26515 YANG Description: Name of the security group

26516 """

26517 return self.__security_group

26518

26519 def _set_security_group(self, v, load=False):

26520 """

26521 Setter method for security_group, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data/security_group (string)

26522 If this variable is read-only (config: false) in the

26523 source YANG file, then _set_security_group is considered as a private

26524 method. Backends looking to populate this variable should

26525 do so via calling thisObj._set_security_group() directly.

26526

26527 YANG Description: Name of the security group

26528 """

26529 if hasattr(v, "_utype"):

26530 v = v._utype(v)

26531 try:

26532 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="security-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-various', defining_module='ns-various', yang_type='string', is_config=True)

26533 except (TypeError, ValueError):

26534 raise ValueError({

26535 'error-string': """security_group must be of a type compatible with string""",

26536 'defined-type': "string",

26537 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="security-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-various', defining_module='ns-various', yang_type='string', is_config=True)""",

26538 })

26539

26540 self.__security_group = t

26541 if hasattr(self, '_set'):

26542 self._set()

26543

26544 def _unset_security_group(self):

26545 self.__security_group = YANGDynClass(base=str, is_leaf=True, yang_name="security-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-various', defining_module='ns-various', yang_type='string', is_config=True)

26546

26547 name = __builtin__.property(_get_name, _set_name)

26548 ip_version = __builtin__.property(_get_ip_version, _set_ip_version)

26549 cidr = __builtin__.property(_get_cidr, _set_cidr)

26550 ip_allocation_pools = __builtin__.property(_get_ip_allocation_pools, _set_ip_allocation_pools)

26551 gateway_ip = __builtin__.property(_get_gateway_ip, _set_gateway_ip)

26552 dhcp_enabled = __builtin__.property(_get_dhcp_enabled, _set_dhcp_enabled)

26553 ipv6_address_mode = __builtin__.property(_get_ipv6_address_mode, _set_ipv6_address_mode)

26554 security_group = __builtin__.property(_get_security_group, _set_security_group)

26555

26556

26557 _pyangbind_elements = OrderedDict([('name', name), ('ip_version', ip_version), ('cidr', cidr), ('ip_allocation_pools', ip_allocation_pools), ('gateway_ip', gateway_ip), ('dhcp_enabled', dhcp_enabled), ('ipv6_address_mode', ipv6_address_mode), ('security_group', security_group), ])

26558

26559

26560 class yc_virtual_link_protocol_data_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_virtual_link_protocol_data(PybindBase):

26561 """

26562 This class was auto-generated by the PythonClass plugin for PYANG

26563 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/virtual-link-profile/virtual-link-protocol-data. Each member element of

26564 the container is represented as a class variable - with a specific

26565 YANG type.

26566

26567 YANG Description: Specifies the protocol data for a VL instantiated

26568 according to this profile. Cardinality 0 is used when

26569 no protocol data needs to be specified.

26570 """

26571 __slots__ = ('_path_helper', '_extmethods', '__associated_layer_protocol','__l2_protocol_data','__l3_protocol_data',)

26572

26573 _yang_name = 'virtual-link-protocol-data'

26574 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

26575

26576 _pybind_generated_by = 'container'

26577

26578 def __init__(self, *args, **kwargs):

26579

26580 self._path_helper = False

26581

26582 self._extmethods = False

26583 self.__associated_layer_protocol = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="associated-layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='identityref', is_config=True)

26584 self.__l2_protocol_data = YANGDynClass(base=yc_l2_protocol_data_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_virtual_link_protocol_data_l2_protocol_data, is_container='container', yang_name="l2-protocol-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='container', is_config=True)

26585 self.__l3_protocol_data = YANGDynClass(base=yc_l3_protocol_data_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_virtual_link_protocol_data_l3_protocol_data, is_container='container', yang_name="l3-protocol-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='container', is_config=True)

26586

26587 load = kwargs.pop("load", None)

26588 if args:

26589 if len(args) > 1:

26590 raise TypeError("cannot create a YANG container with >1 argument")

26591 all_attr = True

26592 for e in self._pyangbind_elements:

26593 if not hasattr(args[0], e):

26594 all_attr = False

26595 break

26596 if not all_attr:

26597 raise ValueError("Supplied object did not have the correct attributes")

26598 for e in self._pyangbind_elements:

26599 nobj = getattr(args[0], e)

26600 if nobj._changed() is False:

26601 continue

26602 setmethod = getattr(self, "_set_%s" % e)

26603 if load is None:

26604 setmethod(getattr(args[0], e))

26605 else:

26606 setmethod(getattr(args[0], e), load=load)

26607

26608 def _path(self):

26609 if hasattr(self, "_parent"):

26610 return self._parent._path()+[self._yang_name]

26611 else:

26612 return ['nsd', 'nsd', 'df', 'virtual-link-profile', 'virtual-link-protocol-data']

26613

26614 def _get_associated_layer_protocol(self):

26615 """

26616 Getter method for associated_layer_protocol, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/associated_layer_protocol (identityref)

26617

26618 YANG Description: One of the values of the attribute layerProtocol of

26619 the ConnectivityType IE.

26620 """

26621 return self.__associated_layer_protocol

26622

26623 def _set_associated_layer_protocol(self, v, load=False):

26624 """

26625 Setter method for associated_layer_protocol, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/associated_layer_protocol (identityref)

26626 If this variable is read-only (config: false) in the

26627 source YANG file, then _set_associated_layer_protocol is considered as a private

26628 method. Backends looking to populate this variable should

26629 do so via calling thisObj._set_associated_layer_protocol() directly.

26630

26631 YANG Description: One of the values of the attribute layerProtocol of

26632 the ConnectivityType IE.

26633 """

26634 if hasattr(v, "_utype"):

26635 v = v._utype(v)

26636 try:

26637 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="associated-layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='identityref', is_config=True)

26638 except (TypeError, ValueError):

26639 raise ValueError({

26640 'error-string': """associated_layer_protocol must be of a type compatible with identityref""",

26641 'defined-type': "ip-profiles:identityref",

26642 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="associated-layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='identityref', is_config=True)""",

26643 })

26644

26645 self.__associated_layer_protocol = t

26646 if hasattr(self, '_set'):

26647 self._set()

26648

26649 def _unset_associated_layer_protocol(self):

26650 self.__associated_layer_protocol = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="associated-layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='identityref', is_config=True)

26651

26652

26653 def _get_l2_protocol_data(self):

26654 """

26655 Getter method for l2_protocol_data, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l2_protocol_data (container)

26656

26657 YANG Description: Specifies the L2 protocol data for this virtual link.

26658 Shall be present when the associatedLayerProtocol

26659 attribute indicates a L2 protocol and shall be absent

26660 otherwise.

26661 """

26662 return self.__l2_protocol_data

26663

26664 def _set_l2_protocol_data(self, v, load=False):

26665 """

26666 Setter method for l2_protocol_data, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l2_protocol_data (container)

26667 If this variable is read-only (config: false) in the

26668 source YANG file, then _set_l2_protocol_data is considered as a private

26669 method. Backends looking to populate this variable should

26670 do so via calling thisObj._set_l2_protocol_data() directly.

26671

26672 YANG Description: Specifies the L2 protocol data for this virtual link.

26673 Shall be present when the associatedLayerProtocol

26674 attribute indicates a L2 protocol and shall be absent

26675 otherwise.

26676 """

26677 if hasattr(v, "_utype"):

26678 v = v._utype(v)

26679 try:

26680 t = YANGDynClass(v,base=yc_l2_protocol_data_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_virtual_link_protocol_data_l2_protocol_data, is_container='container', yang_name="l2-protocol-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='container', is_config=True)

26681 except (TypeError, ValueError):

26682 raise ValueError({

26683 'error-string': """l2_protocol_data must be of a type compatible with container""",

26684 'defined-type': "container",

26685 'generated-type': """YANGDynClass(base=yc_l2_protocol_data_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_virtual_link_protocol_data_l2_protocol_data, is_container='container', yang_name="l2-protocol-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='container', is_config=True)""",

26686 })

26687

26688 self.__l2_protocol_data = t

26689 if hasattr(self, '_set'):

26690 self._set()

26691

26692 def _unset_l2_protocol_data(self):

26693 self.__l2_protocol_data = YANGDynClass(base=yc_l2_protocol_data_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_virtual_link_protocol_data_l2_protocol_data, is_container='container', yang_name="l2-protocol-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='container', is_config=True)

26694

26695

26696 def _get_l3_protocol_data(self):

26697 """

26698 Getter method for l3_protocol_data, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data (container)

26699

26700 YANG Description: Specifies the L3 protocol data for this virtual link.

26701 Shall be present when the associatedLayerProtocol

26702 attribute indicates a L3 protocol and shall be absent

26703 otherwise.

26704 """

26705 return self.__l3_protocol_data

26706

26707 def _set_l3_protocol_data(self, v, load=False):

26708 """

26709 Setter method for l3_protocol_data, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data/l3_protocol_data (container)

26710 If this variable is read-only (config: false) in the

26711 source YANG file, then _set_l3_protocol_data is considered as a private

26712 method. Backends looking to populate this variable should

26713 do so via calling thisObj._set_l3_protocol_data() directly.

26714

26715 YANG Description: Specifies the L3 protocol data for this virtual link.

26716 Shall be present when the associatedLayerProtocol

26717 attribute indicates a L3 protocol and shall be absent

26718 otherwise.

26719 """

26720 if hasattr(v, "_utype"):

26721 v = v._utype(v)

26722 try:

26723 t = YANGDynClass(v,base=yc_l3_protocol_data_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_virtual_link_protocol_data_l3_protocol_data, is_container='container', yang_name="l3-protocol-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='container', is_config=True)

26724 except (TypeError, ValueError):

26725 raise ValueError({

26726 'error-string': """l3_protocol_data must be of a type compatible with container""",

26727 'defined-type': "container",

26728 'generated-type': """YANGDynClass(base=yc_l3_protocol_data_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_virtual_link_protocol_data_l3_protocol_data, is_container='container', yang_name="l3-protocol-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='container', is_config=True)""",

26729 })

26730

26731 self.__l3_protocol_data = t

26732 if hasattr(self, '_set'):

26733 self._set()

26734

26735 def _unset_l3_protocol_data(self):

26736 self.__l3_protocol_data = YANGDynClass(base=yc_l3_protocol_data_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_virtual_link_protocol_data_l3_protocol_data, is_container='container', yang_name="l3-protocol-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='container', is_config=True)

26737

26738 associated_layer_protocol = __builtin__.property(_get_associated_layer_protocol, _set_associated_layer_protocol)

26739 l2_protocol_data = __builtin__.property(_get_l2_protocol_data, _set_l2_protocol_data)

26740 l3_protocol_data = __builtin__.property(_get_l3_protocol_data, _set_l3_protocol_data)

26741

26742

26743 _pyangbind_elements = OrderedDict([('associated_layer_protocol', associated_layer_protocol), ('l2_protocol_data', l2_protocol_data), ('l3_protocol_data', l3_protocol_data), ])

26744

26745

26746 class yc_virtual_link_profile_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile(PybindBase):

26747 """

26748 This class was auto-generated by the PythonClass plugin for PYANG

26749 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/virtual-link-profile. Each member element of

26750 the container is represented as a class variable - with a specific

26751 YANG type.

26752

26753 YANG Description: VL profile to be used for the NS flavour.

26754 """

26755 __slots__ = ('_path_helper', '_extmethods', '__id','__virtual_link_desc_id','__flavour_id','__local_affinity_or_anti_affinity_rule','__affinity_or_anti_affinity_group','__max_bitrate_requirements','__min_bitrate_requirements','__virtual_link_protocol_data',)

26756

26757 _yang_name = 'virtual-link-profile'

26758 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

26759

26760 _pybind_generated_by = 'container'

26761

26762 def __init__(self, *args, **kwargs):

26763

26764 self._path_helper = False

26765

26766 self._extmethods = False

26767 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

26768 self.__virtual_link_desc_id = YANGDynClass(base=str, is_leaf=True, yang_name="virtual-link-desc-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

26769 self.__flavour_id = YANGDynClass(base=str, is_leaf=True, yang_name="flavour-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

26770 self.__local_affinity_or_anti_affinity_rule = YANGDynClass(base=YANGListType("affinity_type affinity_scope",yc_local_affinity_or_anti_affinity_rule_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_local_affinity_or_anti_affinity_rule, yang_name="local-affinity-or-anti-affinity-rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='affinity-type affinity-scope', extensions=None), is_container='list', yang_name="local-affinity-or-anti-affinity-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

26771 self.__affinity_or_anti_affinity_group = YANGDynClass(base=YANGListType("id",yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_affinity_or_anti_affinity_group, yang_name="affinity-or-anti-affinity-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

26772 self.__max_bitrate_requirements = YANGDynClass(base=yc_max_bitrate_requirements_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_max_bitrate_requirements, is_container='container', yang_name="max-bitrate-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

26773 self.__min_bitrate_requirements = YANGDynClass(base=yc_min_bitrate_requirements_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_min_bitrate_requirements, is_container='container', yang_name="min-bitrate-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

26774 self.__virtual_link_protocol_data = YANGDynClass(base=yc_virtual_link_protocol_data_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_virtual_link_protocol_data, is_container='container', yang_name="virtual-link-protocol-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='container', is_config=True)

26775

26776 load = kwargs.pop("load", None)

26777 if args:

26778 if len(args) > 1:

26779 raise TypeError("cannot create a YANG container with >1 argument")

26780 all_attr = True

26781 for e in self._pyangbind_elements:

26782 if not hasattr(args[0], e):

26783 all_attr = False

26784 break

26785 if not all_attr:

26786 raise ValueError("Supplied object did not have the correct attributes")

26787 for e in self._pyangbind_elements:

26788 nobj = getattr(args[0], e)

26789 if nobj._changed() is False:

26790 continue

26791 setmethod = getattr(self, "_set_%s" % e)

26792 if load is None:

26793 setmethod(getattr(args[0], e))

26794 else:

26795 setmethod(getattr(args[0], e), load=load)

26796

26797 def _path(self):

26798 if hasattr(self, "_parent"):

26799 return self._parent._path()+[self._yang_name]

26800 else:

26801 return ['nsd', 'nsd', 'df', 'virtual-link-profile']

26802

26803 def _get_id(self):

26804 """

26805 Getter method for id, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/id (string)

26806

26807 YANG Description: Uniquely identifies this VirtualLinkProfile

26808 information element.

26809 """

26810 return self.__id

26811

26812 def _set_id(self, v, load=False):

26813 """

26814 Setter method for id, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/id (string)

26815 If this variable is read-only (config: false) in the

26816 source YANG file, then _set_id is considered as a private

26817 method. Backends looking to populate this variable should

26818 do so via calling thisObj._set_id() directly.

26819

26820 YANG Description: Uniquely identifies this VirtualLinkProfile

26821 information element.

26822 """

26823 parent = getattr(self, "_parent", None)

26824 if parent is not None and load is False:

26825 raise AttributeError("Cannot set keys directly when" +

26826 " within an instantiated list")

26827

26828 if hasattr(v, "_utype"):

26829 v = v._utype(v)

26830 try:

26831 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

26832 except (TypeError, ValueError):

26833 raise ValueError({

26834 'error-string': """id must be of a type compatible with string""",

26835 'defined-type': "string",

26836 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

26837 })

26838

26839 self.__id = t

26840 if hasattr(self, '_set'):

26841 self._set()

26842

26843 def _unset_id(self):

26844 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

26845

26846

26847 def _get_virtual_link_desc_id(self):

26848 """

26849 Getter method for virtual_link_desc_id, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_desc_id (leafref)

26850

26851 YANG Description: Uniquely references a VLD.

26852 """

26853 return self.__virtual_link_desc_id

26854

26855 def _set_virtual_link_desc_id(self, v, load=False):

26856 """

26857 Setter method for virtual_link_desc_id, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_desc_id (leafref)

26858 If this variable is read-only (config: false) in the

26859 source YANG file, then _set_virtual_link_desc_id is considered as a private

26860 method. Backends looking to populate this variable should

26861 do so via calling thisObj._set_virtual_link_desc_id() directly.

26862

26863 YANG Description: Uniquely references a VLD.

26864 """

26865 if hasattr(v, "_utype"):

26866 v = v._utype(v)

26867 try:

26868 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="virtual-link-desc-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

26869 except (TypeError, ValueError):

26870 raise ValueError({

26871 'error-string': """virtual_link_desc_id must be of a type compatible with leafref""",

26872 'defined-type': "leafref",

26873 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="virtual-link-desc-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

26874 })

26875

26876 self.__virtual_link_desc_id = t

26877 if hasattr(self, '_set'):

26878 self._set()

26879

26880 def _unset_virtual_link_desc_id(self):

26881 self.__virtual_link_desc_id = YANGDynClass(base=str, is_leaf=True, yang_name="virtual-link-desc-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

26882

26883

26884 def _get_flavour_id(self):

26885 """

26886 Getter method for flavour_id, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/flavour_id (leafref)

26887

26888 YANG Description: Identifies a flavour within the VLD.

26889 """

26890 return self.__flavour_id

26891

26892 def _set_flavour_id(self, v, load=False):

26893 """

26894 Setter method for flavour_id, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/flavour_id (leafref)

26895 If this variable is read-only (config: false) in the

26896 source YANG file, then _set_flavour_id is considered as a private

26897 method. Backends looking to populate this variable should

26898 do so via calling thisObj._set_flavour_id() directly.

26899

26900 YANG Description: Identifies a flavour within the VLD.

26901 """

26902 if hasattr(v, "_utype"):

26903 v = v._utype(v)

26904 try:

26905 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="flavour-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

26906 except (TypeError, ValueError):

26907 raise ValueError({

26908 'error-string': """flavour_id must be of a type compatible with leafref""",

26909 'defined-type': "leafref",

26910 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="flavour-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

26911 })

26912

26913 self.__flavour_id = t

26914 if hasattr(self, '_set'):

26915 self._set()

26916

26917 def _unset_flavour_id(self):

26918 self.__flavour_id = YANGDynClass(base=str, is_leaf=True, yang_name="flavour-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

26919

26920

26921 def _get_local_affinity_or_anti_affinity_rule(self):

26922 """

26923 Getter method for local_affinity_or_anti_affinity_rule, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/local_affinity_or_anti_affinity_rule (list)

26924 """

26925 return self.__local_affinity_or_anti_affinity_rule

26926

26927 def _set_local_affinity_or_anti_affinity_rule(self, v, load=False):

26928 """

26929 Setter method for local_affinity_or_anti_affinity_rule, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/local_affinity_or_anti_affinity_rule (list)

26930 If this variable is read-only (config: false) in the

26931 source YANG file, then _set_local_affinity_or_anti_affinity_rule is considered as a private

26932 method. Backends looking to populate this variable should

26933 do so via calling thisObj._set_local_affinity_or_anti_affinity_rule() directly.

26934 """

26935 if hasattr(v, "_utype"):

26936 v = v._utype(v)

26937 try:

26938 t = YANGDynClass(v,base=YANGListType("affinity_type affinity_scope",yc_local_affinity_or_anti_affinity_rule_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_local_affinity_or_anti_affinity_rule, yang_name="local-affinity-or-anti-affinity-rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='affinity-type affinity-scope', extensions=None), is_container='list', yang_name="local-affinity-or-anti-affinity-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

26939 except (TypeError, ValueError):

26940 raise ValueError({

26941 'error-string': """local_affinity_or_anti_affinity_rule must be of a type compatible with list""",

26942 'defined-type': "list",

26943 'generated-type': """YANGDynClass(base=YANGListType("affinity_type affinity_scope",yc_local_affinity_or_anti_affinity_rule_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_local_affinity_or_anti_affinity_rule, yang_name="local-affinity-or-anti-affinity-rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='affinity-type affinity-scope', extensions=None), is_container='list', yang_name="local-affinity-or-anti-affinity-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

26944 })

26945

26946 self.__local_affinity_or_anti_affinity_rule = t

26947 if hasattr(self, '_set'):

26948 self._set()

26949

26950 def _unset_local_affinity_or_anti_affinity_rule(self):

26951 self.__local_affinity_or_anti_affinity_rule = YANGDynClass(base=YANGListType("affinity_type affinity_scope",yc_local_affinity_or_anti_affinity_rule_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_local_affinity_or_anti_affinity_rule, yang_name="local-affinity-or-anti-affinity-rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='affinity-type affinity-scope', extensions=None), is_container='list', yang_name="local-affinity-or-anti-affinity-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

26952

26953

26954 def _get_affinity_or_anti_affinity_group(self):

26955 """

26956 Getter method for affinity_or_anti_affinity_group, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/affinity_or_anti_affinity_group (list)

26957

26958 YANG Description: Identifies an affinity or anti-affinity group the

26959 VLs instantiated according to the VlProfile belong

26960 to.

26961 """

26962 return self.__affinity_or_anti_affinity_group

26963

26964 def _set_affinity_or_anti_affinity_group(self, v, load=False):

26965 """

26966 Setter method for affinity_or_anti_affinity_group, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/affinity_or_anti_affinity_group (list)

26967 If this variable is read-only (config: false) in the

26968 source YANG file, then _set_affinity_or_anti_affinity_group is considered as a private

26969 method. Backends looking to populate this variable should

26970 do so via calling thisObj._set_affinity_or_anti_affinity_group() directly.

26971

26972 YANG Description: Identifies an affinity or anti-affinity group the

26973 VLs instantiated according to the VlProfile belong

26974 to.

26975 """

26976 if hasattr(v, "_utype"):

26977 v = v._utype(v)

26978 try:

26979 t = YANGDynClass(v,base=YANGListType("id",yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_affinity_or_anti_affinity_group, yang_name="affinity-or-anti-affinity-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

26980 except (TypeError, ValueError):

26981 raise ValueError({

26982 'error-string': """affinity_or_anti_affinity_group must be of a type compatible with list""",

26983 'defined-type': "list",

26984 'generated-type': """YANGDynClass(base=YANGListType("id",yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_affinity_or_anti_affinity_group, yang_name="affinity-or-anti-affinity-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

26985 })

26986

26987 self.__affinity_or_anti_affinity_group = t

26988 if hasattr(self, '_set'):

26989 self._set()

26990

26991 def _unset_affinity_or_anti_affinity_group(self):

26992 self.__affinity_or_anti_affinity_group = YANGDynClass(base=YANGListType("id",yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_affinity_or_anti_affinity_group, yang_name="affinity-or-anti-affinity-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

26993

26994

26995 def _get_max_bitrate_requirements(self):

26996 """

26997 Getter method for max_bitrate_requirements, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/max_bitrate_requirements (container)

26998

26999 YANG Description: Specifies the maximum bitrate requirements for a VL

27000 instantiated according to this profile.

27001 """

27002 return self.__max_bitrate_requirements

27003

27004 def _set_max_bitrate_requirements(self, v, load=False):

27005 """

27006 Setter method for max_bitrate_requirements, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/max_bitrate_requirements (container)

27007 If this variable is read-only (config: false) in the

27008 source YANG file, then _set_max_bitrate_requirements is considered as a private

27009 method. Backends looking to populate this variable should

27010 do so via calling thisObj._set_max_bitrate_requirements() directly.

27011

27012 YANG Description: Specifies the maximum bitrate requirements for a VL

27013 instantiated according to this profile.

27014 """

27015 if hasattr(v, "_utype"):

27016 v = v._utype(v)

27017 try:

27018 t = YANGDynClass(v,base=yc_max_bitrate_requirements_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_max_bitrate_requirements, is_container='container', yang_name="max-bitrate-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

27019 except (TypeError, ValueError):

27020 raise ValueError({

27021 'error-string': """max_bitrate_requirements must be of a type compatible with container""",

27022 'defined-type': "container",

27023 'generated-type': """YANGDynClass(base=yc_max_bitrate_requirements_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_max_bitrate_requirements, is_container='container', yang_name="max-bitrate-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

27024 })

27025

27026 self.__max_bitrate_requirements = t

27027 if hasattr(self, '_set'):

27028 self._set()

27029

27030 def _unset_max_bitrate_requirements(self):

27031 self.__max_bitrate_requirements = YANGDynClass(base=yc_max_bitrate_requirements_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_max_bitrate_requirements, is_container='container', yang_name="max-bitrate-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

27032

27033

27034 def _get_min_bitrate_requirements(self):

27035 """

27036 Getter method for min_bitrate_requirements, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/min_bitrate_requirements (container)

27037

27038 YANG Description: Specifies the minimum bitrate requirements for a VL

27039 instantiated according to this profile.

27040 """

27041 return self.__min_bitrate_requirements

27042

27043 def _set_min_bitrate_requirements(self, v, load=False):

27044 """

27045 Setter method for min_bitrate_requirements, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/min_bitrate_requirements (container)

27046 If this variable is read-only (config: false) in the

27047 source YANG file, then _set_min_bitrate_requirements is considered as a private

27048 method. Backends looking to populate this variable should

27049 do so via calling thisObj._set_min_bitrate_requirements() directly.

27050

27051 YANG Description: Specifies the minimum bitrate requirements for a VL

27052 instantiated according to this profile.

27053 """

27054 if hasattr(v, "_utype"):

27055 v = v._utype(v)

27056 try:

27057 t = YANGDynClass(v,base=yc_min_bitrate_requirements_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_min_bitrate_requirements, is_container='container', yang_name="min-bitrate-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

27058 except (TypeError, ValueError):

27059 raise ValueError({

27060 'error-string': """min_bitrate_requirements must be of a type compatible with container""",

27061 'defined-type': "container",

27062 'generated-type': """YANGDynClass(base=yc_min_bitrate_requirements_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_min_bitrate_requirements, is_container='container', yang_name="min-bitrate-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

27063 })

27064

27065 self.__min_bitrate_requirements = t

27066 if hasattr(self, '_set'):

27067 self._set()

27068

27069 def _unset_min_bitrate_requirements(self):

27070 self.__min_bitrate_requirements = YANGDynClass(base=yc_min_bitrate_requirements_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_min_bitrate_requirements, is_container='container', yang_name="min-bitrate-requirements", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

27071

27072

27073 def _get_virtual_link_protocol_data(self):

27074 """

27075 Getter method for virtual_link_protocol_data, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data (container)

27076

27077 YANG Description: Specifies the protocol data for a VL instantiated

27078 according to this profile. Cardinality 0 is used when

27079 no protocol data needs to be specified.

27080 """

27081 return self.__virtual_link_protocol_data

27082

27083 def _set_virtual_link_protocol_data(self, v, load=False):

27084 """

27085 Setter method for virtual_link_protocol_data, mapped from YANG variable /nsd/nsd/df/virtual_link_profile/virtual_link_protocol_data (container)

27086 If this variable is read-only (config: false) in the

27087 source YANG file, then _set_virtual_link_protocol_data is considered as a private

27088 method. Backends looking to populate this variable should

27089 do so via calling thisObj._set_virtual_link_protocol_data() directly.

27090

27091 YANG Description: Specifies the protocol data for a VL instantiated

27092 according to this profile. Cardinality 0 is used when

27093 no protocol data needs to be specified.

27094 """

27095 if hasattr(v, "_utype"):

27096 v = v._utype(v)

27097 try:

27098 t = YANGDynClass(v,base=yc_virtual_link_protocol_data_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_virtual_link_protocol_data, is_container='container', yang_name="virtual-link-protocol-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='container', is_config=True)

27099 except (TypeError, ValueError):

27100 raise ValueError({

27101 'error-string': """virtual_link_protocol_data must be of a type compatible with container""",

27102 'defined-type': "container",

27103 'generated-type': """YANGDynClass(base=yc_virtual_link_protocol_data_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_virtual_link_protocol_data, is_container='container', yang_name="virtual-link-protocol-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='container', is_config=True)""",

27104 })

27105

27106 self.__virtual_link_protocol_data = t

27107 if hasattr(self, '_set'):

27108 self._set()

27109

27110 def _unset_virtual_link_protocol_data(self):

27111 self.__virtual_link_protocol_data = YANGDynClass(base=yc_virtual_link_protocol_data_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile_virtual_link_protocol_data, is_container='container', yang_name="virtual-link-protocol-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ip-profiles', defining_module='ip-profiles', yang_type='container', is_config=True)

27112

27113 id = __builtin__.property(_get_id, _set_id)

27114 virtual_link_desc_id = __builtin__.property(_get_virtual_link_desc_id, _set_virtual_link_desc_id)

27115 flavour_id = __builtin__.property(_get_flavour_id, _set_flavour_id)

27116 local_affinity_or_anti_affinity_rule = __builtin__.property(_get_local_affinity_or_anti_affinity_rule, _set_local_affinity_or_anti_affinity_rule)

27117 affinity_or_anti_affinity_group = __builtin__.property(_get_affinity_or_anti_affinity_group, _set_affinity_or_anti_affinity_group)

27118 max_bitrate_requirements = __builtin__.property(_get_max_bitrate_requirements, _set_max_bitrate_requirements)

27119 min_bitrate_requirements = __builtin__.property(_get_min_bitrate_requirements, _set_min_bitrate_requirements)

27120 virtual_link_protocol_data = __builtin__.property(_get_virtual_link_protocol_data, _set_virtual_link_protocol_data)

27121

27122

27123 _pyangbind_elements = OrderedDict([('id', id), ('virtual_link_desc_id', virtual_link_desc_id), ('flavour_id', flavour_id), ('local_affinity_or_anti_affinity_rule', local_affinity_or_anti_affinity_rule), ('affinity_or_anti_affinity_group', affinity_or_anti_affinity_group), ('max_bitrate_requirements', max_bitrate_requirements), ('min_bitrate_requirements', min_bitrate_requirements), ('virtual_link_protocol_data', virtual_link_protocol_data), ])

27124

27125

27126 class yc_scaling_aspect_etsi_nfv_nsd__nsd_nsd_df_scaling_aspect(PybindBase):

27127 """

27128 This class was auto-generated by the PythonClass plugin for PYANG

27129 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/scaling-aspect. Each member element of

27130 the container is represented as a class variable - with a specific

27131 YANG type.

27132

27133 YANG Description: The scaling aspects supported by this DF of the NS.

27134 """

27135 __slots__ = ('_path_helper', '_extmethods', '__id','__name','__description','__scaling_level',)

27136

27137 _yang_name = 'scaling-aspect'

27138 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

27139

27140 _pybind_generated_by = 'container'

27141

27142 def __init__(self, *args, **kwargs):

27143

27144 self._path_helper = False

27145

27146 self._extmethods = False

27147 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

27148 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

27149 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

27150 self.__scaling_level = YANGDynClass(base=str, is_leaf=True, yang_name="scaling-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

27151

27152 load = kwargs.pop("load", None)

27153 if args:

27154 if len(args) > 1:

27155 raise TypeError("cannot create a YANG container with >1 argument")

27156 all_attr = True

27157 for e in self._pyangbind_elements:

27158 if not hasattr(args[0], e):

27159 all_attr = False

27160 break

27161 if not all_attr:

27162 raise ValueError("Supplied object did not have the correct attributes")

27163 for e in self._pyangbind_elements:

27164 nobj = getattr(args[0], e)

27165 if nobj._changed() is False:

27166 continue

27167 setmethod = getattr(self, "_set_%s" % e)

27168 if load is None:

27169 setmethod(getattr(args[0], e))

27170 else:

27171 setmethod(getattr(args[0], e), load=load)

27172

27173 def _path(self):

27174 if hasattr(self, "_parent"):

27175 return self._parent._path()+[self._yang_name]

27176 else:

27177 return ['nsd', 'nsd', 'df', 'scaling-aspect']

27178

27179 def _get_id(self):

27180 """

27181 Getter method for id, mapped from YANG variable /nsd/nsd/df/scaling_aspect/id (string)

27182

27183 YANG Description: Identifier of this NsScalingAspect information element.

27184 It uniquely identifies the NS scaling aspect in an

27185 NSD.

27186 """

27187 return self.__id

27188

27189 def _set_id(self, v, load=False):

27190 """

27191 Setter method for id, mapped from YANG variable /nsd/nsd/df/scaling_aspect/id (string)

27192 If this variable is read-only (config: false) in the

27193 source YANG file, then _set_id is considered as a private

27194 method. Backends looking to populate this variable should

27195 do so via calling thisObj._set_id() directly.

27196

27197 YANG Description: Identifier of this NsScalingAspect information element.

27198 It uniquely identifies the NS scaling aspect in an

27199 NSD.

27200 """

27201 parent = getattr(self, "_parent", None)

27202 if parent is not None and load is False:

27203 raise AttributeError("Cannot set keys directly when" +

27204 " within an instantiated list")

27205

27206 if hasattr(v, "_utype"):

27207 v = v._utype(v)

27208 try:

27209 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

27210 except (TypeError, ValueError):

27211 raise ValueError({

27212 'error-string': """id must be of a type compatible with string""",

27213 'defined-type': "string",

27214 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

27215 })

27216

27217 self.__id = t

27218 if hasattr(self, '_set'):

27219 self._set()

27220

27221 def _unset_id(self):

27222 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

27223

27224

27225 def _get_name(self):

27226 """

27227 Getter method for name, mapped from YANG variable /nsd/nsd/df/scaling_aspect/name (string)

27228

27229 YANG Description: Provides a human readable name of the NS scaling

27230 aspect.

27231 """

27232 return self.__name

27233

27234 def _set_name(self, v, load=False):

27235 """

27236 Setter method for name, mapped from YANG variable /nsd/nsd/df/scaling_aspect/name (string)

27237 If this variable is read-only (config: false) in the

27238 source YANG file, then _set_name is considered as a private

27239 method. Backends looking to populate this variable should

27240 do so via calling thisObj._set_name() directly.

27241

27242 YANG Description: Provides a human readable name of the NS scaling

27243 aspect.

27244 """

27245 if hasattr(v, "_utype"):

27246 v = v._utype(v)

27247 try:

27248 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

27249 except (TypeError, ValueError):

27250 raise ValueError({

27251 'error-string': """name must be of a type compatible with string""",

27252 'defined-type': "string",

27253 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

27254 })

27255

27256 self.__name = t

27257 if hasattr(self, '_set'):

27258 self._set()

27259

27260 def _unset_name(self):

27261 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

27262

27263

27264 def _get_description(self):

27265 """

27266 Getter method for description, mapped from YANG variable /nsd/nsd/df/scaling_aspect/description (string)

27267

27268 YANG Description: Provides a human readable description of the NS

27269 scaling aspect.

27270 """

27271 return self.__description

27272

27273 def _set_description(self, v, load=False):

27274 """

27275 Setter method for description, mapped from YANG variable /nsd/nsd/df/scaling_aspect/description (string)

27276 If this variable is read-only (config: false) in the

27277 source YANG file, then _set_description is considered as a private

27278 method. Backends looking to populate this variable should

27279 do so via calling thisObj._set_description() directly.

27280

27281 YANG Description: Provides a human readable description of the NS

27282 scaling aspect.

27283 """

27284 if hasattr(v, "_utype"):

27285 v = v._utype(v)

27286 try:

27287 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

27288 except (TypeError, ValueError):

27289 raise ValueError({

27290 'error-string': """description must be of a type compatible with string""",

27291 'defined-type': "string",

27292 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

27293 })

27294

27295 self.__description = t

27296 if hasattr(self, '_set'):

27297 self._set()

27298

27299 def _unset_description(self):

27300 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

27301

27302

27303 def _get_scaling_level(self):

27304 """

27305 Getter method for scaling_level, mapped from YANG variable /nsd/nsd/df/scaling_aspect/scaling_level (leafref)

27306

27307 YANG Description: Describes the details of an NS level.

27308 """

27309 return self.__scaling_level

27310

27311 def _set_scaling_level(self, v, load=False):

27312 """

27313 Setter method for scaling_level, mapped from YANG variable /nsd/nsd/df/scaling_aspect/scaling_level (leafref)

27314 If this variable is read-only (config: false) in the

27315 source YANG file, then _set_scaling_level is considered as a private

27316 method. Backends looking to populate this variable should

27317 do so via calling thisObj._set_scaling_level() directly.

27318

27319 YANG Description: Describes the details of an NS level.

27320 """

27321 if hasattr(v, "_utype"):

27322 v = v._utype(v)

27323 try:

27324 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="scaling-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

27325 except (TypeError, ValueError):

27326 raise ValueError({

27327 'error-string': """scaling_level must be of a type compatible with leafref""",

27328 'defined-type': "leafref",

27329 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="scaling-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

27330 })

27331

27332 self.__scaling_level = t

27333 if hasattr(self, '_set'):

27334 self._set()

27335

27336 def _unset_scaling_level(self):

27337 self.__scaling_level = YANGDynClass(base=str, is_leaf=True, yang_name="scaling-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

27338

27339 id = __builtin__.property(_get_id, _set_id)

27340 name = __builtin__.property(_get_name, _set_name)

27341 description = __builtin__.property(_get_description, _set_description)

27342 scaling_level = __builtin__.property(_get_scaling_level, _set_scaling_level)

27343

27344

27345 _pyangbind_elements = OrderedDict([('id', id), ('name', name), ('description', description), ('scaling_level', scaling_level), ])

27346

27347

27348 class yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_nsd_df_affinity_or_anti_affinity_group(PybindBase):

27349 """

27350 This class was auto-generated by the PythonClass plugin for PYANG

27351 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/affinity-or-anti-affinity-group. Each member element of

27352 the container is represented as a class variable - with a specific

27353 YANG type.

27354

27355 YANG Description: Specifies affinity or anti-affinity relationship

27356 applicable between the VNF instances created using

27357 different VNFDs, the Virtual Link instances created

27358 using different NsVirtualLinkDescs or the nested NS

27359 instances created using different NSDs in the same

27360 affinity or anti-affinity group.

27361 """

27362 __slots__ = ('_path_helper', '_extmethods', '__id','__type','__scope',)

27363

27364 _yang_name = 'affinity-or-anti-affinity-group'

27365 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

27366

27367 _pybind_generated_by = 'container'

27368

27369 def __init__(self, *args, **kwargs):

27370

27371 self._path_helper = False

27372

27373 self._extmethods = False

27374 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

27375 self.__type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'affinity': {}, 'anti-affinity': {}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-type', is_config=True)

27376 self.__scope = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'nfvi-node': {}, 'zone-group': {}, 'zone': {}, 'nfvi-pop': {}},), is_leaf=True, yang_name="scope", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-scope', is_config=True)

27377

27378 load = kwargs.pop("load", None)

27379 if args:

27380 if len(args) > 1:

27381 raise TypeError("cannot create a YANG container with >1 argument")

27382 all_attr = True

27383 for e in self._pyangbind_elements:

27384 if not hasattr(args[0], e):

27385 all_attr = False

27386 break

27387 if not all_attr:

27388 raise ValueError("Supplied object did not have the correct attributes")

27389 for e in self._pyangbind_elements:

27390 nobj = getattr(args[0], e)

27391 if nobj._changed() is False:

27392 continue

27393 setmethod = getattr(self, "_set_%s" % e)

27394 if load is None:

27395 setmethod(getattr(args[0], e))

27396 else:

27397 setmethod(getattr(args[0], e), load=load)

27398

27399 def _path(self):

27400 if hasattr(self, "_parent"):

27401 return self._parent._path()+[self._yang_name]

27402 else:

27403 return ['nsd', 'nsd', 'df', 'affinity-or-anti-affinity-group']

27404

27405 def _get_id(self):

27406 """

27407 Getter method for id, mapped from YANG variable /nsd/nsd/df/affinity_or_anti_affinity_group/id (string)

27408

27409 YANG Description: Identifier of Identifier of this

27410 AffinityOrAntiAffinityGroup information element.

27411 """

27412 return self.__id

27413

27414 def _set_id(self, v, load=False):

27415 """

27416 Setter method for id, mapped from YANG variable /nsd/nsd/df/affinity_or_anti_affinity_group/id (string)

27417 If this variable is read-only (config: false) in the

27418 source YANG file, then _set_id is considered as a private

27419 method. Backends looking to populate this variable should

27420 do so via calling thisObj._set_id() directly.

27421

27422 YANG Description: Identifier of Identifier of this

27423 AffinityOrAntiAffinityGroup information element.

27424 """

27425 parent = getattr(self, "_parent", None)

27426 if parent is not None and load is False:

27427 raise AttributeError("Cannot set keys directly when" +

27428 " within an instantiated list")

27429

27430 if hasattr(v, "_utype"):

27431 v = v._utype(v)

27432 try:

27433 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

27434 except (TypeError, ValueError):

27435 raise ValueError({

27436 'error-string': """id must be of a type compatible with string""",

27437 'defined-type': "string",

27438 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

27439 })

27440

27441 self.__id = t

27442 if hasattr(self, '_set'):

27443 self._set()

27444

27445 def _unset_id(self):

27446 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

27447

27448

27449 def _get_type(self):

27450 """

27451 Getter method for type, mapped from YANG variable /nsd/nsd/df/affinity_or_anti_affinity_group/type (affinity-type)

27452

27453 YANG Description: Specifies the type of relationship that the members of

27454 the group have: 'affinity' or 'anti-affinity.'

27455 """

27456 return self.__type

27457

27458 def _set_type(self, v, load=False):

27459 """

27460 Setter method for type, mapped from YANG variable /nsd/nsd/df/affinity_or_anti_affinity_group/type (affinity-type)

27461 If this variable is read-only (config: false) in the

27462 source YANG file, then _set_type is considered as a private

27463 method. Backends looking to populate this variable should

27464 do so via calling thisObj._set_type() directly.

27465

27466 YANG Description: Specifies the type of relationship that the members of

27467 the group have: 'affinity' or 'anti-affinity.'

27468 """

27469 if hasattr(v, "_utype"):

27470 v = v._utype(v)

27471 try:

27472 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'affinity': {}, 'anti-affinity': {}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-type', is_config=True)

27473 except (TypeError, ValueError):

27474 raise ValueError({

27475 'error-string': """type must be of a type compatible with affinity-type""",

27476 'defined-type': "etsi-nfv-nsd:affinity-type",

27477 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'affinity': {}, 'anti-affinity': {}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-type', is_config=True)""",

27478 })

27479

27480 self.__type = t

27481 if hasattr(self, '_set'):

27482 self._set()

27483

27484 def _unset_type(self):

27485 self.__type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'affinity': {}, 'anti-affinity': {}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-type', is_config=True)

27486

27487

27488 def _get_scope(self):

27489 """

27490 Getter method for scope, mapped from YANG variable /nsd/nsd/df/affinity_or_anti_affinity_group/scope (affinity-scope)

27491

27492 YANG Description: Specifies the scope of the affinity or anti-affinity

27493 relationship e.g. a NFVI node, an NFVI PoP, etc.

27494 """

27495 return self.__scope

27496

27497 def _set_scope(self, v, load=False):

27498 """

27499 Setter method for scope, mapped from YANG variable /nsd/nsd/df/affinity_or_anti_affinity_group/scope (affinity-scope)

27500 If this variable is read-only (config: false) in the

27501 source YANG file, then _set_scope is considered as a private

27502 method. Backends looking to populate this variable should

27503 do so via calling thisObj._set_scope() directly.

27504

27505 YANG Description: Specifies the scope of the affinity or anti-affinity

27506 relationship e.g. a NFVI node, an NFVI PoP, etc.

27507 """

27508 if hasattr(v, "_utype"):

27509 v = v._utype(v)

27510 try:

27511 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'nfvi-node': {}, 'zone-group': {}, 'zone': {}, 'nfvi-pop': {}},), is_leaf=True, yang_name="scope", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-scope', is_config=True)

27512 except (TypeError, ValueError):

27513 raise ValueError({

27514 'error-string': """scope must be of a type compatible with affinity-scope""",

27515 'defined-type': "etsi-nfv-nsd:affinity-scope",

27516 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'nfvi-node': {}, 'zone-group': {}, 'zone': {}, 'nfvi-pop': {}},), is_leaf=True, yang_name="scope", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-scope', is_config=True)""",

27517 })

27518

27519 self.__scope = t

27520 if hasattr(self, '_set'):

27521 self._set()

27522

27523 def _unset_scope(self):

27524 self.__scope = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'nfvi-node': {}, 'zone-group': {}, 'zone': {}, 'nfvi-pop': {}},), is_leaf=True, yang_name="scope", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='affinity-scope', is_config=True)

27525

27526 id = __builtin__.property(_get_id, _set_id)

27527 type = __builtin__.property(_get_type, _set_type)

27528 scope = __builtin__.property(_get_scope, _set_scope)

27529

27530

27531 _pyangbind_elements = OrderedDict([('id', id), ('type', type), ('scope', scope), ])

27532

27533

27534 class yc_vnf_to_level_mapping_etsi_nfv_nsd__nsd_nsd_df_ns_instantiation_level_vnf_to_level_mapping(PybindBase):

27535 """

27536 This class was auto-generated by the PythonClass plugin for PYANG

27537 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/ns-instantiation-level/vnf-to-level-mapping. Each member element of

27538 the container is represented as a class variable - with a specific

27539 YANG type.

27540

27541 YANG Description: Specifies the profile of the VNFs involved in this NS

27542 level and, for each of them, the required number of

27543 instances.

27544 """

27545 __slots__ = ('_path_helper', '_extmethods', '__vnf_profile_id','__number_of_instances',)

27546

27547 _yang_name = 'vnf-to-level-mapping'

27548 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

27549

27550 _pybind_generated_by = 'container'

27551

27552 def __init__(self, *args, **kwargs):

27553

27554 self._path_helper = False

27555

27556 self._extmethods = False

27557 self.__vnf_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="vnf-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

27558 self.__number_of_instances = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(1), is_leaf=True, yang_name="number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

27559

27560 load = kwargs.pop("load", None)

27561 if args:

27562 if len(args) > 1:

27563 raise TypeError("cannot create a YANG container with >1 argument")

27564 all_attr = True

27565 for e in self._pyangbind_elements:

27566 if not hasattr(args[0], e):

27567 all_attr = False

27568 break

27569 if not all_attr:

27570 raise ValueError("Supplied object did not have the correct attributes")

27571 for e in self._pyangbind_elements:

27572 nobj = getattr(args[0], e)

27573 if nobj._changed() is False:

27574 continue

27575 setmethod = getattr(self, "_set_%s" % e)

27576 if load is None:

27577 setmethod(getattr(args[0], e))

27578 else:

27579 setmethod(getattr(args[0], e), load=load)

27580

27581 def _path(self):

27582 if hasattr(self, "_parent"):

27583 return self._parent._path()+[self._yang_name]

27584 else:

27585 return ['nsd', 'nsd', 'df', 'ns-instantiation-level', 'vnf-to-level-mapping']

27586

27587 def _get_vnf_profile_id(self):

27588 """

27589 Getter method for vnf_profile_id, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level/vnf_to_level_mapping/vnf_profile_id (leafref)

27590

27591 YANG Description: Identifies the profile to be used for a VNF

27592 involved in an NS level.

27593 """

27594 return self.__vnf_profile_id

27595

27596 def _set_vnf_profile_id(self, v, load=False):

27597 """

27598 Setter method for vnf_profile_id, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level/vnf_to_level_mapping/vnf_profile_id (leafref)

27599 If this variable is read-only (config: false) in the

27600 source YANG file, then _set_vnf_profile_id is considered as a private

27601 method. Backends looking to populate this variable should

27602 do so via calling thisObj._set_vnf_profile_id() directly.

27603

27604 YANG Description: Identifies the profile to be used for a VNF

27605 involved in an NS level.

27606 """

27607 parent = getattr(self, "_parent", None)

27608 if parent is not None and load is False:

27609 raise AttributeError("Cannot set keys directly when" +

27610 " within an instantiated list")

27611

27612 if hasattr(v, "_utype"):

27613 v = v._utype(v)

27614 try:

27615 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="vnf-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

27616 except (TypeError, ValueError):

27617 raise ValueError({

27618 'error-string': """vnf_profile_id must be of a type compatible with leafref""",

27619 'defined-type': "leafref",

27620 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="vnf-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

27621 })

27622

27623 self.__vnf_profile_id = t

27624 if hasattr(self, '_set'):

27625 self._set()

27626

27627 def _unset_vnf_profile_id(self):

27628 self.__vnf_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="vnf-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

27629

27630

27631 def _get_number_of_instances(self):

27632 """

27633 Getter method for number_of_instances, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level/vnf_to_level_mapping/number_of_instances (uint32)

27634

27635 YANG Description: Specifies the number of VNF instances required for

27636 an NS level.

27637 """

27638 return self.__number_of_instances

27639

27640 def _set_number_of_instances(self, v, load=False):

27641 """

27642 Setter method for number_of_instances, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level/vnf_to_level_mapping/number_of_instances (uint32)

27643 If this variable is read-only (config: false) in the

27644 source YANG file, then _set_number_of_instances is considered as a private

27645 method. Backends looking to populate this variable should

27646 do so via calling thisObj._set_number_of_instances() directly.

27647

27648 YANG Description: Specifies the number of VNF instances required for

27649 an NS level.

27650 """

27651 if hasattr(v, "_utype"):

27652 v = v._utype(v)

27653 try:

27654 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(1), is_leaf=True, yang_name="number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

27655 except (TypeError, ValueError):

27656 raise ValueError({

27657 'error-string': """number_of_instances must be of a type compatible with uint32""",

27658 'defined-type': "uint32",

27659 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(1), is_leaf=True, yang_name="number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)""",

27660 })

27661

27662 self.__number_of_instances = t

27663 if hasattr(self, '_set'):

27664 self._set()

27665

27666 def _unset_number_of_instances(self):

27667 self.__number_of_instances = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(1), is_leaf=True, yang_name="number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

27668

27669 vnf_profile_id = __builtin__.property(_get_vnf_profile_id, _set_vnf_profile_id)

27670 number_of_instances = __builtin__.property(_get_number_of_instances, _set_number_of_instances)

27671

27672

27673 _pyangbind_elements = OrderedDict([('vnf_profile_id', vnf_profile_id), ('number_of_instances', number_of_instances), ])

27674

27675

27676 class yc_virtual_link_to_level_mapping_etsi_nfv_nsd__nsd_nsd_df_ns_instantiation_level_virtual_link_to_level_mapping(PybindBase):

27677 """

27678 This class was auto-generated by the PythonClass plugin for PYANG

27679 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/ns-instantiation-level/virtual-link-to-level-mapping. Each member element of

27680 the container is represented as a class variable - with a specific

27681 YANG type.

27682

27683 YANG Description: Specifies the profile of the VLs involved in this NS

27684 level and, for each of them, the needed bandwidth.

27685 """

27686 __slots__ = ('_path_helper', '_extmethods', '__virtual_link_profile_id','__root','__leaf',)

27687

27688 _yang_name = 'virtual-link-to-level-mapping'

27689 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

27690

27691 _pybind_generated_by = 'container'

27692

27693 def __init__(self, *args, **kwargs):

27694

27695 self._path_helper = False

27696

27697 self._extmethods = False

27698 self.__virtual_link_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="virtual-link-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

27699 self.__root = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="root", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

27700 self.__leaf = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="leaf", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

27701

27702 load = kwargs.pop("load", None)

27703 if args:

27704 if len(args) > 1:

27705 raise TypeError("cannot create a YANG container with >1 argument")

27706 all_attr = True

27707 for e in self._pyangbind_elements:

27708 if not hasattr(args[0], e):

27709 all_attr = False

27710 break

27711 if not all_attr:

27712 raise ValueError("Supplied object did not have the correct attributes")

27713 for e in self._pyangbind_elements:

27714 nobj = getattr(args[0], e)

27715 if nobj._changed() is False:

27716 continue

27717 setmethod = getattr(self, "_set_%s" % e)

27718 if load is None:

27719 setmethod(getattr(args[0], e))

27720 else:

27721 setmethod(getattr(args[0], e), load=load)

27722

27723 def _path(self):

27724 if hasattr(self, "_parent"):

27725 return self._parent._path()+[self._yang_name]

27726 else:

27727 return ['nsd', 'nsd', 'df', 'ns-instantiation-level', 'virtual-link-to-level-mapping']

27728

27729 def _get_virtual_link_profile_id(self):

27730 """

27731 Getter method for virtual_link_profile_id, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level/virtual_link_to_level_mapping/virtual_link_profile_id (leafref)

27732

27733 YANG Description: Identifies the profile to be used for a VL involved

27734 in an NS level.

27735 """

27736 return self.__virtual_link_profile_id

27737

27738 def _set_virtual_link_profile_id(self, v, load=False):

27739 """

27740 Setter method for virtual_link_profile_id, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level/virtual_link_to_level_mapping/virtual_link_profile_id (leafref)

27741 If this variable is read-only (config: false) in the

27742 source YANG file, then _set_virtual_link_profile_id is considered as a private

27743 method. Backends looking to populate this variable should

27744 do so via calling thisObj._set_virtual_link_profile_id() directly.

27745

27746 YANG Description: Identifies the profile to be used for a VL involved

27747 in an NS level.

27748 """

27749 parent = getattr(self, "_parent", None)

27750 if parent is not None and load is False:

27751 raise AttributeError("Cannot set keys directly when" +

27752 " within an instantiated list")

27753

27754 if hasattr(v, "_utype"):

27755 v = v._utype(v)

27756 try:

27757 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="virtual-link-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

27758 except (TypeError, ValueError):

27759 raise ValueError({

27760 'error-string': """virtual_link_profile_id must be of a type compatible with leafref""",

27761 'defined-type': "leafref",

27762 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="virtual-link-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

27763 })

27764

27765 self.__virtual_link_profile_id = t

27766 if hasattr(self, '_set'):

27767 self._set()

27768

27769 def _unset_virtual_link_profile_id(self):

27770 self.__virtual_link_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="virtual-link-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

27771

27772

27773 def _get_root(self):

27774 """

27775 Getter method for root, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level/virtual_link_to_level_mapping/root (uint64)

27776

27777 YANG Description: Specifies the throughput requirement of

27778 the link (e.g. bitrate of E-Line, root bitrate

27779 of E-Tree, aggregate capacity of E-LAN).

27780 """

27781 return self.__root

27782

27783 def _set_root(self, v, load=False):

27784 """

27785 Setter method for root, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level/virtual_link_to_level_mapping/root (uint64)

27786 If this variable is read-only (config: false) in the

27787 source YANG file, then _set_root is considered as a private

27788 method. Backends looking to populate this variable should

27789 do so via calling thisObj._set_root() directly.

27790

27791 YANG Description: Specifies the throughput requirement of

27792 the link (e.g. bitrate of E-Line, root bitrate

27793 of E-Tree, aggregate capacity of E-LAN).

27794 """

27795 if hasattr(v, "_utype"):

27796 v = v._utype(v)

27797 try:

27798 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="root", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

27799 except (TypeError, ValueError):

27800 raise ValueError({

27801 'error-string': """root must be of a type compatible with uint64""",

27802 'defined-type': "uint64",

27803 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="root", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)""",

27804 })

27805

27806 self.__root = t

27807 if hasattr(self, '_set'):

27808 self._set()

27809

27810 def _unset_root(self):

27811 self.__root = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="root", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

27812

27813

27814 def _get_leaf(self):

27815 """

27816 Getter method for leaf, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level/virtual_link_to_level_mapping/leaf (uint64)

27817

27818 YANG Description: Specifies the throughput requirement of

27819 leaf connections to the link when

27820 applicable to the connectivity type (e.g. for

27821 E-Tree and E-LAN branches).

27822 """

27823 return self.__leaf

27824

27825 def _set_leaf(self, v, load=False):

27826 """

27827 Setter method for leaf, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level/virtual_link_to_level_mapping/leaf (uint64)

27828 If this variable is read-only (config: false) in the

27829 source YANG file, then _set_leaf is considered as a private

27830 method. Backends looking to populate this variable should

27831 do so via calling thisObj._set_leaf() directly.

27832

27833 YANG Description: Specifies the throughput requirement of

27834 leaf connections to the link when

27835 applicable to the connectivity type (e.g. for

27836 E-Tree and E-LAN branches).

27837 """

27838 if hasattr(v, "_utype"):

27839 v = v._utype(v)

27840 try:

27841 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="leaf", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

27842 except (TypeError, ValueError):

27843 raise ValueError({

27844 'error-string': """leaf must be of a type compatible with uint64""",

27845 'defined-type': "uint64",

27846 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="leaf", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)""",

27847 })

27848

27849 self.__leaf = t

27850 if hasattr(self, '_set'):

27851 self._set()

27852

27853 def _unset_leaf(self):

27854 self.__leaf = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="leaf", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint64', is_config=True)

27855

27856 virtual_link_profile_id = __builtin__.property(_get_virtual_link_profile_id, _set_virtual_link_profile_id)

27857 root = __builtin__.property(_get_root, _set_root)

27858 leaf = __builtin__.property(_get_leaf, _set_leaf)

27859

27860

27861 _pyangbind_elements = OrderedDict([('virtual_link_profile_id', virtual_link_profile_id), ('root', root), ('leaf', leaf), ])

27862

27863

27864 class yc_ns_to_level_mapping_etsi_nfv_nsd__nsd_nsd_df_ns_instantiation_level_ns_to_level_mapping(PybindBase):

27865 """

27866 This class was auto-generated by the PythonClass plugin for PYANG

27867 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/ns-instantiation-level/ns-to-level-mapping. Each member element of

27868 the container is represented as a class variable - with a specific

27869 YANG type.

27870

27871 YANG Description: Specifies the profile of the nested NSs involved in

27872 this NS level and, for each of them, the required

27873 number of instances.

27874 """

27875 __slots__ = ('_path_helper', '_extmethods', '__ns_profile_id','__number_of_instances',)

27876

27877 _yang_name = 'ns-to-level-mapping'

27878 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

27879

27880 _pybind_generated_by = 'container'

27881

27882 def __init__(self, *args, **kwargs):

27883

27884 self._path_helper = False

27885

27886 self._extmethods = False

27887 self.__ns_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="ns-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

27888 self.__number_of_instances = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(1), is_leaf=True, yang_name="number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

27889

27890 load = kwargs.pop("load", None)

27891 if args:

27892 if len(args) > 1:

27893 raise TypeError("cannot create a YANG container with >1 argument")

27894 all_attr = True

27895 for e in self._pyangbind_elements:

27896 if not hasattr(args[0], e):

27897 all_attr = False

27898 break

27899 if not all_attr:

27900 raise ValueError("Supplied object did not have the correct attributes")

27901 for e in self._pyangbind_elements:

27902 nobj = getattr(args[0], e)

27903 if nobj._changed() is False:

27904 continue

27905 setmethod = getattr(self, "_set_%s" % e)

27906 if load is None:

27907 setmethod(getattr(args[0], e))

27908 else:

27909 setmethod(getattr(args[0], e), load=load)

27910

27911 def _path(self):

27912 if hasattr(self, "_parent"):

27913 return self._parent._path()+[self._yang_name]

27914 else:

27915 return ['nsd', 'nsd', 'df', 'ns-instantiation-level', 'ns-to-level-mapping']

27916

27917 def _get_ns_profile_id(self):

27918 """

27919 Getter method for ns_profile_id, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level/ns_to_level_mapping/ns_profile_id (leafref)

27920

27921 YANG Description: Identifies the profile to be used for a nested NS

27922 involved in the NS level.

27923 """

27924 return self.__ns_profile_id

27925

27926 def _set_ns_profile_id(self, v, load=False):

27927 """

27928 Setter method for ns_profile_id, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level/ns_to_level_mapping/ns_profile_id (leafref)

27929 If this variable is read-only (config: false) in the

27930 source YANG file, then _set_ns_profile_id is considered as a private

27931 method. Backends looking to populate this variable should

27932 do so via calling thisObj._set_ns_profile_id() directly.

27933

27934 YANG Description: Identifies the profile to be used for a nested NS

27935 involved in the NS level.

27936 """

27937 parent = getattr(self, "_parent", None)

27938 if parent is not None and load is False:

27939 raise AttributeError("Cannot set keys directly when" +

27940 " within an instantiated list")

27941

27942 if hasattr(v, "_utype"):

27943 v = v._utype(v)

27944 try:

27945 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="ns-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

27946 except (TypeError, ValueError):

27947 raise ValueError({

27948 'error-string': """ns_profile_id must be of a type compatible with leafref""",

27949 'defined-type': "leafref",

27950 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="ns-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

27951 })

27952

27953 self.__ns_profile_id = t

27954 if hasattr(self, '_set'):

27955 self._set()

27956

27957 def _unset_ns_profile_id(self):

27958 self.__ns_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="ns-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

27959

27960

27961 def _get_number_of_instances(self):

27962 """

27963 Getter method for number_of_instances, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level/ns_to_level_mapping/number_of_instances (uint32)

27964

27965 YANG Description: Specifies the number of nested NS instances required

27966 for the NS scale level.

27967 """

27968 return self.__number_of_instances

27969

27970 def _set_number_of_instances(self, v, load=False):

27971 """

27972 Setter method for number_of_instances, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level/ns_to_level_mapping/number_of_instances (uint32)

27973 If this variable is read-only (config: false) in the

27974 source YANG file, then _set_number_of_instances is considered as a private

27975 method. Backends looking to populate this variable should

27976 do so via calling thisObj._set_number_of_instances() directly.

27977

27978 YANG Description: Specifies the number of nested NS instances required

27979 for the NS scale level.

27980 """

27981 if hasattr(v, "_utype"):

27982 v = v._utype(v)

27983 try:

27984 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(1), is_leaf=True, yang_name="number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

27985 except (TypeError, ValueError):

27986 raise ValueError({

27987 'error-string': """number_of_instances must be of a type compatible with uint32""",

27988 'defined-type': "uint32",

27989 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(1), is_leaf=True, yang_name="number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)""",

27990 })

27991

27992 self.__number_of_instances = t

27993 if hasattr(self, '_set'):

27994 self._set()

27995

27996 def _unset_number_of_instances(self):

27997 self.__number_of_instances = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), default=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32)(1), is_leaf=True, yang_name="number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

27998

27999 ns_profile_id = __builtin__.property(_get_ns_profile_id, _set_ns_profile_id)

28000 number_of_instances = __builtin__.property(_get_number_of_instances, _set_number_of_instances)

28001

28002

28003 _pyangbind_elements = OrderedDict([('ns_profile_id', ns_profile_id), ('number_of_instances', number_of_instances), ])

28004

28005

28006 class yc_ns_instantiation_level_etsi_nfv_nsd__nsd_nsd_df_ns_instantiation_level(PybindBase):

28007 """

28008 This class was auto-generated by the PythonClass plugin for PYANG

28009 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/ns-instantiation-level. Each member element of

28010 the container is represented as a class variable - with a specific

28011 YANG type.

28012

28013 YANG Description: Describes the details of an NS level.

28014 """

28015 __slots__ = ('_path_helper', '_extmethods', '__id','__description','__vnf_to_level_mapping','__virtual_link_to_level_mapping','__ns_to_level_mapping',)

28016

28017 _yang_name = 'ns-instantiation-level'

28018 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

28019

28020 _pybind_generated_by = 'container'

28021

28022 def __init__(self, *args, **kwargs):

28023

28024 self._path_helper = False

28025

28026 self._extmethods = False

28027 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

28028 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

28029 self.__vnf_to_level_mapping = YANGDynClass(base=YANGListType("vnf_profile_id",yc_vnf_to_level_mapping_etsi_nfv_nsd__nsd_nsd_df_ns_instantiation_level_vnf_to_level_mapping, yang_name="vnf-to-level-mapping", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='vnf-profile-id', extensions=None), is_container='list', yang_name="vnf-to-level-mapping", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

28030 self.__virtual_link_to_level_mapping = YANGDynClass(base=YANGListType("virtual_link_profile_id",yc_virtual_link_to_level_mapping_etsi_nfv_nsd__nsd_nsd_df_ns_instantiation_level_virtual_link_to_level_mapping, yang_name="virtual-link-to-level-mapping", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='virtual-link-profile-id', extensions=None), is_container='list', yang_name="virtual-link-to-level-mapping", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

28031 self.__ns_to_level_mapping = YANGDynClass(base=YANGListType("ns_profile_id",yc_ns_to_level_mapping_etsi_nfv_nsd__nsd_nsd_df_ns_instantiation_level_ns_to_level_mapping, yang_name="ns-to-level-mapping", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='ns-profile-id', extensions=None), is_container='list', yang_name="ns-to-level-mapping", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

28032

28033 load = kwargs.pop("load", None)

28034 if args:

28035 if len(args) > 1:

28036 raise TypeError("cannot create a YANG container with >1 argument")

28037 all_attr = True

28038 for e in self._pyangbind_elements:

28039 if not hasattr(args[0], e):

28040 all_attr = False

28041 break

28042 if not all_attr:

28043 raise ValueError("Supplied object did not have the correct attributes")

28044 for e in self._pyangbind_elements:

28045 nobj = getattr(args[0], e)

28046 if nobj._changed() is False:

28047 continue

28048 setmethod = getattr(self, "_set_%s" % e)

28049 if load is None:

28050 setmethod(getattr(args[0], e))

28051 else:

28052 setmethod(getattr(args[0], e), load=load)

28053

28054 def _path(self):

28055 if hasattr(self, "_parent"):

28056 return self._parent._path()+[self._yang_name]

28057 else:

28058 return ['nsd', 'nsd', 'df', 'ns-instantiation-level']

28059

28060 def _get_id(self):

28061 """

28062 Getter method for id, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level/id (string)

28063

28064 YANG Description: Identifier of this NsLevel information element. It

28065 uniquely identifies an NS level within the DF.

28066 """

28067 return self.__id

28068

28069 def _set_id(self, v, load=False):

28070 """

28071 Setter method for id, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level/id (string)

28072 If this variable is read-only (config: false) in the

28073 source YANG file, then _set_id is considered as a private

28074 method. Backends looking to populate this variable should

28075 do so via calling thisObj._set_id() directly.

28076

28077 YANG Description: Identifier of this NsLevel information element. It

28078 uniquely identifies an NS level within the DF.

28079 """

28080 parent = getattr(self, "_parent", None)

28081 if parent is not None and load is False:

28082 raise AttributeError("Cannot set keys directly when" +

28083 " within an instantiated list")

28084

28085 if hasattr(v, "_utype"):

28086 v = v._utype(v)

28087 try:

28088 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

28089 except (TypeError, ValueError):

28090 raise ValueError({

28091 'error-string': """id must be of a type compatible with string""",

28092 'defined-type': "string",

28093 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

28094 })

28095

28096 self.__id = t

28097 if hasattr(self, '_set'):

28098 self._set()

28099

28100 def _unset_id(self):

28101 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

28102

28103

28104 def _get_description(self):

28105 """

28106 Getter method for description, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level/description (string)

28107

28108 YANG Description: Human readable description of the NS level.

28109 """

28110 return self.__description

28111

28112 def _set_description(self, v, load=False):

28113 """

28114 Setter method for description, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level/description (string)

28115 If this variable is read-only (config: false) in the

28116 source YANG file, then _set_description is considered as a private

28117 method. Backends looking to populate this variable should

28118 do so via calling thisObj._set_description() directly.

28119

28120 YANG Description: Human readable description of the NS level.

28121 """

28122 if hasattr(v, "_utype"):

28123 v = v._utype(v)

28124 try:

28125 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

28126 except (TypeError, ValueError):

28127 raise ValueError({

28128 'error-string': """description must be of a type compatible with string""",

28129 'defined-type': "string",

28130 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

28131 })

28132

28133 self.__description = t

28134 if hasattr(self, '_set'):

28135 self._set()

28136

28137 def _unset_description(self):

28138 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

28139

28140

28141 def _get_vnf_to_level_mapping(self):

28142 """

28143 Getter method for vnf_to_level_mapping, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level/vnf_to_level_mapping (list)

28144

28145 YANG Description: Specifies the profile of the VNFs involved in this NS

28146 level and, for each of them, the required number of

28147 instances.

28148 """

28149 return self.__vnf_to_level_mapping

28150

28151 def _set_vnf_to_level_mapping(self, v, load=False):

28152 """

28153 Setter method for vnf_to_level_mapping, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level/vnf_to_level_mapping (list)

28154 If this variable is read-only (config: false) in the

28155 source YANG file, then _set_vnf_to_level_mapping is considered as a private

28156 method. Backends looking to populate this variable should

28157 do so via calling thisObj._set_vnf_to_level_mapping() directly.

28158

28159 YANG Description: Specifies the profile of the VNFs involved in this NS

28160 level and, for each of them, the required number of

28161 instances.

28162 """

28163 if hasattr(v, "_utype"):

28164 v = v._utype(v)

28165 try:

28166 t = YANGDynClass(v,base=YANGListType("vnf_profile_id",yc_vnf_to_level_mapping_etsi_nfv_nsd__nsd_nsd_df_ns_instantiation_level_vnf_to_level_mapping, yang_name="vnf-to-level-mapping", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='vnf-profile-id', extensions=None), is_container='list', yang_name="vnf-to-level-mapping", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

28167 except (TypeError, ValueError):

28168 raise ValueError({

28169 'error-string': """vnf_to_level_mapping must be of a type compatible with list""",

28170 'defined-type': "list",

28171 'generated-type': """YANGDynClass(base=YANGListType("vnf_profile_id",yc_vnf_to_level_mapping_etsi_nfv_nsd__nsd_nsd_df_ns_instantiation_level_vnf_to_level_mapping, yang_name="vnf-to-level-mapping", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='vnf-profile-id', extensions=None), is_container='list', yang_name="vnf-to-level-mapping", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

28172 })

28173

28174 self.__vnf_to_level_mapping = t

28175 if hasattr(self, '_set'):

28176 self._set()

28177

28178 def _unset_vnf_to_level_mapping(self):

28179 self.__vnf_to_level_mapping = YANGDynClass(base=YANGListType("vnf_profile_id",yc_vnf_to_level_mapping_etsi_nfv_nsd__nsd_nsd_df_ns_instantiation_level_vnf_to_level_mapping, yang_name="vnf-to-level-mapping", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='vnf-profile-id', extensions=None), is_container='list', yang_name="vnf-to-level-mapping", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

28180

28181

28182 def _get_virtual_link_to_level_mapping(self):

28183 """

28184 Getter method for virtual_link_to_level_mapping, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level/virtual_link_to_level_mapping (list)

28185

28186 YANG Description: Specifies the profile of the VLs involved in this NS

28187 level and, for each of them, the needed bandwidth.

28188 """

28189 return self.__virtual_link_to_level_mapping

28190

28191 def _set_virtual_link_to_level_mapping(self, v, load=False):

28192 """

28193 Setter method for virtual_link_to_level_mapping, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level/virtual_link_to_level_mapping (list)

28194 If this variable is read-only (config: false) in the

28195 source YANG file, then _set_virtual_link_to_level_mapping is considered as a private

28196 method. Backends looking to populate this variable should

28197 do so via calling thisObj._set_virtual_link_to_level_mapping() directly.

28198

28199 YANG Description: Specifies the profile of the VLs involved in this NS

28200 level and, for each of them, the needed bandwidth.

28201 """

28202 if hasattr(v, "_utype"):

28203 v = v._utype(v)

28204 try:

28205 t = YANGDynClass(v,base=YANGListType("virtual_link_profile_id",yc_virtual_link_to_level_mapping_etsi_nfv_nsd__nsd_nsd_df_ns_instantiation_level_virtual_link_to_level_mapping, yang_name="virtual-link-to-level-mapping", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='virtual-link-profile-id', extensions=None), is_container='list', yang_name="virtual-link-to-level-mapping", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

28206 except (TypeError, ValueError):

28207 raise ValueError({

28208 'error-string': """virtual_link_to_level_mapping must be of a type compatible with list""",

28209 'defined-type': "list",

28210 'generated-type': """YANGDynClass(base=YANGListType("virtual_link_profile_id",yc_virtual_link_to_level_mapping_etsi_nfv_nsd__nsd_nsd_df_ns_instantiation_level_virtual_link_to_level_mapping, yang_name="virtual-link-to-level-mapping", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='virtual-link-profile-id', extensions=None), is_container='list', yang_name="virtual-link-to-level-mapping", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

28211 })

28212

28213 self.__virtual_link_to_level_mapping = t

28214 if hasattr(self, '_set'):

28215 self._set()

28216

28217 def _unset_virtual_link_to_level_mapping(self):

28218 self.__virtual_link_to_level_mapping = YANGDynClass(base=YANGListType("virtual_link_profile_id",yc_virtual_link_to_level_mapping_etsi_nfv_nsd__nsd_nsd_df_ns_instantiation_level_virtual_link_to_level_mapping, yang_name="virtual-link-to-level-mapping", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='virtual-link-profile-id', extensions=None), is_container='list', yang_name="virtual-link-to-level-mapping", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

28219

28220

28221 def _get_ns_to_level_mapping(self):

28222 """

28223 Getter method for ns_to_level_mapping, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level/ns_to_level_mapping (list)

28224

28225 YANG Description: Specifies the profile of the nested NSs involved in

28226 this NS level and, for each of them, the required

28227 number of instances.

28228 """

28229 return self.__ns_to_level_mapping

28230

28231 def _set_ns_to_level_mapping(self, v, load=False):

28232 """

28233 Setter method for ns_to_level_mapping, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level/ns_to_level_mapping (list)

28234 If this variable is read-only (config: false) in the

28235 source YANG file, then _set_ns_to_level_mapping is considered as a private

28236 method. Backends looking to populate this variable should

28237 do so via calling thisObj._set_ns_to_level_mapping() directly.

28238

28239 YANG Description: Specifies the profile of the nested NSs involved in

28240 this NS level and, for each of them, the required

28241 number of instances.

28242 """

28243 if hasattr(v, "_utype"):

28244 v = v._utype(v)

28245 try:

28246 t = YANGDynClass(v,base=YANGListType("ns_profile_id",yc_ns_to_level_mapping_etsi_nfv_nsd__nsd_nsd_df_ns_instantiation_level_ns_to_level_mapping, yang_name="ns-to-level-mapping", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='ns-profile-id', extensions=None), is_container='list', yang_name="ns-to-level-mapping", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

28247 except (TypeError, ValueError):

28248 raise ValueError({

28249 'error-string': """ns_to_level_mapping must be of a type compatible with list""",

28250 'defined-type': "list",

28251 'generated-type': """YANGDynClass(base=YANGListType("ns_profile_id",yc_ns_to_level_mapping_etsi_nfv_nsd__nsd_nsd_df_ns_instantiation_level_ns_to_level_mapping, yang_name="ns-to-level-mapping", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='ns-profile-id', extensions=None), is_container='list', yang_name="ns-to-level-mapping", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

28252 })

28253

28254 self.__ns_to_level_mapping = t

28255 if hasattr(self, '_set'):

28256 self._set()

28257

28258 def _unset_ns_to_level_mapping(self):

28259 self.__ns_to_level_mapping = YANGDynClass(base=YANGListType("ns_profile_id",yc_ns_to_level_mapping_etsi_nfv_nsd__nsd_nsd_df_ns_instantiation_level_ns_to_level_mapping, yang_name="ns-to-level-mapping", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='ns-profile-id', extensions=None), is_container='list', yang_name="ns-to-level-mapping", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

28260

28261 id = __builtin__.property(_get_id, _set_id)

28262 description = __builtin__.property(_get_description, _set_description)

28263 vnf_to_level_mapping = __builtin__.property(_get_vnf_to_level_mapping, _set_vnf_to_level_mapping)

28264 virtual_link_to_level_mapping = __builtin__.property(_get_virtual_link_to_level_mapping, _set_virtual_link_to_level_mapping)

28265 ns_to_level_mapping = __builtin__.property(_get_ns_to_level_mapping, _set_ns_to_level_mapping)

28266

28267

28268 _pyangbind_elements = OrderedDict([('id', id), ('description', description), ('vnf_to_level_mapping', vnf_to_level_mapping), ('virtual_link_to_level_mapping', virtual_link_to_level_mapping), ('ns_to_level_mapping', ns_to_level_mapping), ])

28269

28270

28271 class yc_affinity_or_anti_affinity_group_id_etsi_nfv_nsd__nsd_nsd_df_ns_profile_affinity_or_anti_affinity_group_id(PybindBase):

28272 """

28273 This class was auto-generated by the PythonClass plugin for PYANG

28274 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/ns-profile/affinity-or-anti-affinity-group-id. Each member element of

28275 the container is represented as a class variable - with a specific

28276 YANG type.

28277

28278 YANG Description: Identifies an affinity or anti-affinity group the NSs

28279 created according to this NsProfile belongs to.

28280 """

28281 __slots__ = ('_path_helper', '_extmethods', '__id',)

28282

28283 _yang_name = 'affinity-or-anti-affinity-group-id'

28284 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

28285

28286 _pybind_generated_by = 'container'

28287

28288 def __init__(self, *args, **kwargs):

28289

28290 self._path_helper = False

28291

28292 self._extmethods = False

28293 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

28294

28295 load = kwargs.pop("load", None)

28296 if args:

28297 if len(args) > 1:

28298 raise TypeError("cannot create a YANG container with >1 argument")

28299 all_attr = True

28300 for e in self._pyangbind_elements:

28301 if not hasattr(args[0], e):

28302 all_attr = False

28303 break

28304 if not all_attr:

28305 raise ValueError("Supplied object did not have the correct attributes")

28306 for e in self._pyangbind_elements:

28307 nobj = getattr(args[0], e)

28308 if nobj._changed() is False:

28309 continue

28310 setmethod = getattr(self, "_set_%s" % e)

28311 if load is None:

28312 setmethod(getattr(args[0], e))

28313 else:

28314 setmethod(getattr(args[0], e), load=load)

28315

28316 def _path(self):

28317 if hasattr(self, "_parent"):

28318 return self._parent._path()+[self._yang_name]

28319 else:

28320 return ['nsd', 'nsd', 'df', 'ns-profile', 'affinity-or-anti-affinity-group-id']

28321

28322 def _get_id(self):

28323 """

28324 Getter method for id, mapped from YANG variable /nsd/nsd/df/ns_profile/affinity_or_anti_affinity_group_id/id (leafref)

28325 """

28326 return self.__id

28327

28328 def _set_id(self, v, load=False):

28329 """

28330 Setter method for id, mapped from YANG variable /nsd/nsd/df/ns_profile/affinity_or_anti_affinity_group_id/id (leafref)

28331 If this variable is read-only (config: false) in the

28332 source YANG file, then _set_id is considered as a private

28333 method. Backends looking to populate this variable should

28334 do so via calling thisObj._set_id() directly.

28335 """

28336 parent = getattr(self, "_parent", None)

28337 if parent is not None and load is False:

28338 raise AttributeError("Cannot set keys directly when" +

28339 " within an instantiated list")

28340

28341 if hasattr(v, "_utype"):

28342 v = v._utype(v)

28343 try:

28344 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

28345 except (TypeError, ValueError):

28346 raise ValueError({

28347 'error-string': """id must be of a type compatible with leafref""",

28348 'defined-type': "leafref",

28349 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

28350 })

28351

28352 self.__id = t

28353 if hasattr(self, '_set'):

28354 self._set()

28355

28356 def _unset_id(self):

28357 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

28358

28359 id = __builtin__.property(_get_id, _set_id)

28360

28361

28362 _pyangbind_elements = OrderedDict([('id', id), ])

28363

28364

28365 class yc_constituent_cpd_id_etsi_nfv_nsd__nsd_nsd_df_ns_profile_virtual_link_connectivity_constituent_cpd_id(PybindBase):

28366 """

28367 This class was auto-generated by the PythonClass plugin for PYANG

28368 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/ns-profile/virtual-link-connectivity/constituent-cpd-id. Each member element of

28369 the container is represented as a class variable - with a specific

28370 YANG type.

28371

28372 YANG Description: Describes a connection point on a VNF/PNF or a SAP

28373 which connects to virtual links instantiated from

28374 the profile identified in the virtualLinkProfileId

28375 attribute.

28376 """

28377 __slots__ = ('_path_helper', '_extmethods', '__constituent_base_element_id','__constituent_cpd_id',)

28378

28379 _yang_name = 'constituent-cpd-id'

28380 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

28381

28382 _pybind_generated_by = 'container'

28383

28384 def __init__(self, *args, **kwargs):

28385

28386 self._path_helper = False

28387

28388 self._extmethods = False

28389 self.__constituent_base_element_id = YANGDynClass(base=str, is_leaf=True, yang_name="constituent-base-element-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

28390 self.__constituent_cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

28391

28392 load = kwargs.pop("load", None)

28393 if args:

28394 if len(args) > 1:

28395 raise TypeError("cannot create a YANG container with >1 argument")

28396 all_attr = True

28397 for e in self._pyangbind_elements:

28398 if not hasattr(args[0], e):

28399 all_attr = False

28400 break

28401 if not all_attr:

28402 raise ValueError("Supplied object did not have the correct attributes")

28403 for e in self._pyangbind_elements:

28404 nobj = getattr(args[0], e)

28405 if nobj._changed() is False:

28406 continue

28407 setmethod = getattr(self, "_set_%s" % e)

28408 if load is None:

28409 setmethod(getattr(args[0], e))

28410 else:

28411 setmethod(getattr(args[0], e), load=load)

28412

28413 def _path(self):

28414 if hasattr(self, "_parent"):

28415 return self._parent._path()+[self._yang_name]

28416 else:

28417 return ['nsd', 'nsd', 'df', 'ns-profile', 'virtual-link-connectivity', 'constituent-cpd-id']

28418

28419 def _get_constituent_base_element_id(self):

28420 """

28421 Getter method for constituent_base_element_id, mapped from YANG variable /nsd/nsd/df/ns_profile/virtual_link_connectivity/constituent_cpd_id/constituent_base_element_id (leafref)

28422

28423 YANG Description: Reference to the profile of an NS constituent.

28424 """

28425 return self.__constituent_base_element_id

28426

28427 def _set_constituent_base_element_id(self, v, load=False):

28428 """

28429 Setter method for constituent_base_element_id, mapped from YANG variable /nsd/nsd/df/ns_profile/virtual_link_connectivity/constituent_cpd_id/constituent_base_element_id (leafref)

28430 If this variable is read-only (config: false) in the

28431 source YANG file, then _set_constituent_base_element_id is considered as a private

28432 method. Backends looking to populate this variable should

28433 do so via calling thisObj._set_constituent_base_element_id() directly.

28434

28435 YANG Description: Reference to the profile of an NS constituent.

28436 """

28437 parent = getattr(self, "_parent", None)

28438 if parent is not None and load is False:

28439 raise AttributeError("Cannot set keys directly when" +

28440 " within an instantiated list")

28441

28442 if hasattr(v, "_utype"):

28443 v = v._utype(v)

28444 try:

28445 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="constituent-base-element-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

28446 except (TypeError, ValueError):

28447 raise ValueError({

28448 'error-string': """constituent_base_element_id must be of a type compatible with leafref""",

28449 'defined-type': "leafref",

28450 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="constituent-base-element-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

28451 })

28452

28453 self.__constituent_base_element_id = t

28454 if hasattr(self, '_set'):

28455 self._set()

28456

28457 def _unset_constituent_base_element_id(self):

28458 self.__constituent_base_element_id = YANGDynClass(base=str, is_leaf=True, yang_name="constituent-base-element-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

28459

28460

28461 def _get_constituent_cpd_id(self):

28462 """

28463 Getter method for constituent_cpd_id, mapped from YANG variable /nsd/nsd/df/ns_profile/virtual_link_connectivity/constituent_cpd_id/constituent_cpd_id (leafref)

28464

28465 YANG Description: A reference to the descriptor of a connection point

28466 attached to one of the constituent VNFs and PNFs or to

28467 the descriptor of a NS SAP.

28468 """

28469 return self.__constituent_cpd_id

28470

28471 def _set_constituent_cpd_id(self, v, load=False):

28472 """

28473 Setter method for constituent_cpd_id, mapped from YANG variable /nsd/nsd/df/ns_profile/virtual_link_connectivity/constituent_cpd_id/constituent_cpd_id (leafref)

28474 If this variable is read-only (config: false) in the

28475 source YANG file, then _set_constituent_cpd_id is considered as a private

28476 method. Backends looking to populate this variable should

28477 do so via calling thisObj._set_constituent_cpd_id() directly.

28478

28479 YANG Description: A reference to the descriptor of a connection point

28480 attached to one of the constituent VNFs and PNFs or to

28481 the descriptor of a NS SAP.

28482 """

28483 if hasattr(v, "_utype"):

28484 v = v._utype(v)

28485 try:

28486 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

28487 except (TypeError, ValueError):

28488 raise ValueError({

28489 'error-string': """constituent_cpd_id must be of a type compatible with leafref""",

28490 'defined-type': "leafref",

28491 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

28492 })

28493

28494 self.__constituent_cpd_id = t

28495 if hasattr(self, '_set'):

28496 self._set()

28497

28498 def _unset_constituent_cpd_id(self):

28499 self.__constituent_cpd_id = YANGDynClass(base=str, is_leaf=True, yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

28500

28501 constituent_base_element_id = __builtin__.property(_get_constituent_base_element_id, _set_constituent_base_element_id)

28502 constituent_cpd_id = __builtin__.property(_get_constituent_cpd_id, _set_constituent_cpd_id)

28503

28504

28505 _pyangbind_elements = OrderedDict([('constituent_base_element_id', constituent_base_element_id), ('constituent_cpd_id', constituent_cpd_id), ])

28506

28507

28508 class yc_virtual_link_connectivity_etsi_nfv_nsd__nsd_nsd_df_ns_profile_virtual_link_connectivity(PybindBase):

28509 """

28510 This class was auto-generated by the PythonClass plugin for PYANG

28511 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/ns-profile/virtual-link-connectivity. Each member element of

28512 the container is represented as a class variable - with a specific

28513 YANG type.

28514 """

28515 __slots__ = ('_path_helper', '_extmethods', '__virtual_link_profile_id','__constituent_cpd_id',)

28516

28517 _yang_name = 'virtual-link-connectivity'

28518 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

28519

28520 _pybind_generated_by = 'container'

28521

28522 def __init__(self, *args, **kwargs):

28523

28524 self._path_helper = False

28525

28526 self._extmethods = False

28527 self.__virtual_link_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="virtual-link-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

28528 self.__constituent_cpd_id = YANGDynClass(base=YANGListType("constituent_base_element_id",yc_constituent_cpd_id_etsi_nfv_nsd__nsd_nsd_df_ns_profile_virtual_link_connectivity_constituent_cpd_id, yang_name="constituent-cpd-id", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='constituent-base-element-id', extensions=None), is_container='list', yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

28529

28530 load = kwargs.pop("load", None)

28531 if args:

28532 if len(args) > 1:

28533 raise TypeError("cannot create a YANG container with >1 argument")

28534 all_attr = True

28535 for e in self._pyangbind_elements:

28536 if not hasattr(args[0], e):

28537 all_attr = False

28538 break

28539 if not all_attr:

28540 raise ValueError("Supplied object did not have the correct attributes")

28541 for e in self._pyangbind_elements:

28542 nobj = getattr(args[0], e)

28543 if nobj._changed() is False:

28544 continue

28545 setmethod = getattr(self, "_set_%s" % e)

28546 if load is None:

28547 setmethod(getattr(args[0], e))

28548 else:

28549 setmethod(getattr(args[0], e), load=load)

28550

28551 def _path(self):

28552 if hasattr(self, "_parent"):

28553 return self._parent._path()+[self._yang_name]

28554 else:

28555 return ['nsd', 'nsd', 'df', 'ns-profile', 'virtual-link-connectivity']

28556

28557 def _get_virtual_link_profile_id(self):

28558 """

28559 Getter method for virtual_link_profile_id, mapped from YANG variable /nsd/nsd/df/ns_profile/virtual_link_connectivity/virtual_link_profile_id (leafref)

28560

28561 YANG Description: Reference an NS VL profile.

28562 """

28563 return self.__virtual_link_profile_id

28564

28565 def _set_virtual_link_profile_id(self, v, load=False):

28566 """

28567 Setter method for virtual_link_profile_id, mapped from YANG variable /nsd/nsd/df/ns_profile/virtual_link_connectivity/virtual_link_profile_id (leafref)

28568 If this variable is read-only (config: false) in the

28569 source YANG file, then _set_virtual_link_profile_id is considered as a private

28570 method. Backends looking to populate this variable should

28571 do so via calling thisObj._set_virtual_link_profile_id() directly.

28572

28573 YANG Description: Reference an NS VL profile.

28574 """

28575 parent = getattr(self, "_parent", None)

28576 if parent is not None and load is False:

28577 raise AttributeError("Cannot set keys directly when" +

28578 " within an instantiated list")

28579

28580 if hasattr(v, "_utype"):

28581 v = v._utype(v)

28582 try:

28583 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="virtual-link-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

28584 except (TypeError, ValueError):

28585 raise ValueError({

28586 'error-string': """virtual_link_profile_id must be of a type compatible with leafref""",

28587 'defined-type': "leafref",

28588 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="virtual-link-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

28589 })

28590

28591 self.__virtual_link_profile_id = t

28592 if hasattr(self, '_set'):

28593 self._set()

28594

28595 def _unset_virtual_link_profile_id(self):

28596 self.__virtual_link_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="virtual-link-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

28597

28598

28599 def _get_constituent_cpd_id(self):

28600 """

28601 Getter method for constituent_cpd_id, mapped from YANG variable /nsd/nsd/df/ns_profile/virtual_link_connectivity/constituent_cpd_id (list)

28602

28603 YANG Description: Describes a connection point on a VNF/PNF or a SAP

28604 which connects to virtual links instantiated from

28605 the profile identified in the virtualLinkProfileId

28606 attribute.

28607 """

28608 return self.__constituent_cpd_id

28609

28610 def _set_constituent_cpd_id(self, v, load=False):

28611 """

28612 Setter method for constituent_cpd_id, mapped from YANG variable /nsd/nsd/df/ns_profile/virtual_link_connectivity/constituent_cpd_id (list)

28613 If this variable is read-only (config: false) in the

28614 source YANG file, then _set_constituent_cpd_id is considered as a private

28615 method. Backends looking to populate this variable should

28616 do so via calling thisObj._set_constituent_cpd_id() directly.

28617

28618 YANG Description: Describes a connection point on a VNF/PNF or a SAP

28619 which connects to virtual links instantiated from

28620 the profile identified in the virtualLinkProfileId

28621 attribute.

28622 """

28623 if hasattr(v, "_utype"):

28624 v = v._utype(v)

28625 try:

28626 t = YANGDynClass(v,base=YANGListType("constituent_base_element_id",yc_constituent_cpd_id_etsi_nfv_nsd__nsd_nsd_df_ns_profile_virtual_link_connectivity_constituent_cpd_id, yang_name="constituent-cpd-id", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='constituent-base-element-id', extensions=None), is_container='list', yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

28627 except (TypeError, ValueError):

28628 raise ValueError({

28629 'error-string': """constituent_cpd_id must be of a type compatible with list""",

28630 'defined-type': "list",

28631 'generated-type': """YANGDynClass(base=YANGListType("constituent_base_element_id",yc_constituent_cpd_id_etsi_nfv_nsd__nsd_nsd_df_ns_profile_virtual_link_connectivity_constituent_cpd_id, yang_name="constituent-cpd-id", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='constituent-base-element-id', extensions=None), is_container='list', yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

28632 })

28633

28634 self.__constituent_cpd_id = t

28635 if hasattr(self, '_set'):

28636 self._set()

28637

28638 def _unset_constituent_cpd_id(self):

28639 self.__constituent_cpd_id = YANGDynClass(base=YANGListType("constituent_base_element_id",yc_constituent_cpd_id_etsi_nfv_nsd__nsd_nsd_df_ns_profile_virtual_link_connectivity_constituent_cpd_id, yang_name="constituent-cpd-id", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='constituent-base-element-id', extensions=None), is_container='list', yang_name="constituent-cpd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

28640

28641 virtual_link_profile_id = __builtin__.property(_get_virtual_link_profile_id, _set_virtual_link_profile_id)

28642 constituent_cpd_id = __builtin__.property(_get_constituent_cpd_id, _set_constituent_cpd_id)

28643

28644

28645 _pyangbind_elements = OrderedDict([('virtual_link_profile_id', virtual_link_profile_id), ('constituent_cpd_id', constituent_cpd_id), ])

28646

28647

28648 class yc_ns_profile_etsi_nfv_nsd__nsd_nsd_df_ns_profile(PybindBase):

28649 """

28650 This class was auto-generated by the PythonClass plugin for PYANG

28651 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/ns-profile. Each member element of

28652 the container is represented as a class variable - with a specific

28653 YANG type.

28654

28655 YANG Description: Specifies a NS Profile supported by this NS DF.

28656 """

28657 __slots__ = ('_path_helper', '_extmethods', '__id','__nsd_id','__ns_df_id','__instantiation_level_id','__min_number_of_instances','__max_number_of_instances','__affinity_or_anti_affinity_group_id','__virtual_link_connectivity',)

28658

28659 _yang_name = 'ns-profile'

28660 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

28661

28662 _pybind_generated_by = 'container'

28663

28664 def __init__(self, *args, **kwargs):

28665

28666 self._path_helper = False

28667

28668 self._extmethods = False

28669 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

28670 self.__nsd_id = YANGDynClass(base=str, is_leaf=True, yang_name="nsd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

28671 self.__ns_df_id = YANGDynClass(base=str, is_leaf=True, yang_name="ns-df-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

28672 self.__instantiation_level_id = YANGDynClass(base=str, is_leaf=True, yang_name="instantiation-level-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

28673 self.__min_number_of_instances = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="min-number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

28674 self.__max_number_of_instances = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="max-number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

28675 self.__affinity_or_anti_affinity_group_id = YANGDynClass(base=YANGListType("id",yc_affinity_or_anti_affinity_group_id_etsi_nfv_nsd__nsd_nsd_df_ns_profile_affinity_or_anti_affinity_group_id, yang_name="affinity-or-anti-affinity-group-id", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

28676 self.__virtual_link_connectivity = YANGDynClass(base=YANGListType("virtual_link_profile_id",yc_virtual_link_connectivity_etsi_nfv_nsd__nsd_nsd_df_ns_profile_virtual_link_connectivity, yang_name="virtual-link-connectivity", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='virtual-link-profile-id', extensions=None), is_container='list', yang_name="virtual-link-connectivity", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

28677

28678 load = kwargs.pop("load", None)

28679 if args:

28680 if len(args) > 1:

28681 raise TypeError("cannot create a YANG container with >1 argument")

28682 all_attr = True

28683 for e in self._pyangbind_elements:

28684 if not hasattr(args[0], e):

28685 all_attr = False

28686 break

28687 if not all_attr:

28688 raise ValueError("Supplied object did not have the correct attributes")

28689 for e in self._pyangbind_elements:

28690 nobj = getattr(args[0], e)

28691 if nobj._changed() is False:

28692 continue

28693 setmethod = getattr(self, "_set_%s" % e)

28694 if load is None:

28695 setmethod(getattr(args[0], e))

28696 else:

28697 setmethod(getattr(args[0], e), load=load)

28698

28699 def _path(self):

28700 if hasattr(self, "_parent"):

28701 return self._parent._path()+[self._yang_name]

28702 else:

28703 return ['nsd', 'nsd', 'df', 'ns-profile']

28704

28705 def _get_id(self):

28706 """

28707 Getter method for id, mapped from YANG variable /nsd/nsd/df/ns_profile/id (string)

28708

28709 YANG Description: Identifies an NS profile.

28710 """

28711 return self.__id

28712

28713 def _set_id(self, v, load=False):

28714 """

28715 Setter method for id, mapped from YANG variable /nsd/nsd/df/ns_profile/id (string)

28716 If this variable is read-only (config: false) in the

28717 source YANG file, then _set_id is considered as a private

28718 method. Backends looking to populate this variable should

28719 do so via calling thisObj._set_id() directly.

28720

28721 YANG Description: Identifies an NS profile.

28722 """

28723 parent = getattr(self, "_parent", None)

28724 if parent is not None and load is False:

28725 raise AttributeError("Cannot set keys directly when" +

28726 " within an instantiated list")

28727

28728 if hasattr(v, "_utype"):

28729 v = v._utype(v)

28730 try:

28731 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

28732 except (TypeError, ValueError):

28733 raise ValueError({

28734 'error-string': """id must be of a type compatible with string""",

28735 'defined-type': "string",

28736 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

28737 })

28738

28739 self.__id = t

28740 if hasattr(self, '_set'):

28741 self._set()

28742

28743 def _unset_id(self):

28744 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

28745

28746

28747 def _get_nsd_id(self):

28748 """

28749 Getter method for nsd_id, mapped from YANG variable /nsd/nsd/df/ns_profile/nsd_id (leafref)

28750

28751 YANG Description: Identifies the NSD applicable to NS instantiated

28752 according to this profile.

28753 """

28754 return self.__nsd_id

28755

28756 def _set_nsd_id(self, v, load=False):

28757 """

28758 Setter method for nsd_id, mapped from YANG variable /nsd/nsd/df/ns_profile/nsd_id (leafref)

28759 If this variable is read-only (config: false) in the

28760 source YANG file, then _set_nsd_id is considered as a private

28761 method. Backends looking to populate this variable should

28762 do so via calling thisObj._set_nsd_id() directly.

28763

28764 YANG Description: Identifies the NSD applicable to NS instantiated

28765 according to this profile.

28766 """

28767 if hasattr(v, "_utype"):

28768 v = v._utype(v)

28769 try:

28770 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="nsd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

28771 except (TypeError, ValueError):

28772 raise ValueError({

28773 'error-string': """nsd_id must be of a type compatible with leafref""",

28774 'defined-type': "leafref",

28775 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="nsd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

28776 })

28777

28778 self.__nsd_id = t

28779 if hasattr(self, '_set'):

28780 self._set()

28781

28782 def _unset_nsd_id(self):

28783 self.__nsd_id = YANGDynClass(base=str, is_leaf=True, yang_name="nsd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

28784

28785

28786 def _get_ns_df_id(self):

28787 """

28788 Getter method for ns_df_id, mapped from YANG variable /nsd/nsd/df/ns_profile/ns_df_id (leafref)

28789

28790 YANG Description: Identifies the applicable network service DF within

28791 the scope of the NSD.

28792 """

28793 return self.__ns_df_id

28794

28795 def _set_ns_df_id(self, v, load=False):

28796 """

28797 Setter method for ns_df_id, mapped from YANG variable /nsd/nsd/df/ns_profile/ns_df_id (leafref)

28798 If this variable is read-only (config: false) in the

28799 source YANG file, then _set_ns_df_id is considered as a private

28800 method. Backends looking to populate this variable should

28801 do so via calling thisObj._set_ns_df_id() directly.

28802

28803 YANG Description: Identifies the applicable network service DF within

28804 the scope of the NSD.

28805 """

28806 if hasattr(v, "_utype"):

28807 v = v._utype(v)

28808 try:

28809 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="ns-df-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

28810 except (TypeError, ValueError):

28811 raise ValueError({

28812 'error-string': """ns_df_id must be of a type compatible with leafref""",

28813 'defined-type': "leafref",

28814 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="ns-df-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

28815 })

28816

28817 self.__ns_df_id = t

28818 if hasattr(self, '_set'):

28819 self._set()

28820

28821 def _unset_ns_df_id(self):

28822 self.__ns_df_id = YANGDynClass(base=str, is_leaf=True, yang_name="ns-df-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

28823

28824

28825 def _get_instantiation_level_id(self):

28826 """

28827 Getter method for instantiation_level_id, mapped from YANG variable /nsd/nsd/df/ns_profile/instantiation_level_id (leafref)

28828

28829 YANG Description: Identifies the NS level within the referenced NS DF to

28830 be used in the context of the parent NS instantiation.

28831 If not present, the default NS instantiation level as

28832 declared in the referenced NSD shall be used.

28833 """

28834 return self.__instantiation_level_id

28835

28836 def _set_instantiation_level_id(self, v, load=False):

28837 """

28838 Setter method for instantiation_level_id, mapped from YANG variable /nsd/nsd/df/ns_profile/instantiation_level_id (leafref)

28839 If this variable is read-only (config: false) in the

28840 source YANG file, then _set_instantiation_level_id is considered as a private

28841 method. Backends looking to populate this variable should

28842 do so via calling thisObj._set_instantiation_level_id() directly.

28843

28844 YANG Description: Identifies the NS level within the referenced NS DF to

28845 be used in the context of the parent NS instantiation.

28846 If not present, the default NS instantiation level as

28847 declared in the referenced NSD shall be used.

28848 """

28849 if hasattr(v, "_utype"):

28850 v = v._utype(v)

28851 try:

28852 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="instantiation-level-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

28853 except (TypeError, ValueError):

28854 raise ValueError({

28855 'error-string': """instantiation_level_id must be of a type compatible with leafref""",

28856 'defined-type': "leafref",

28857 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="instantiation-level-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

28858 })

28859

28860 self.__instantiation_level_id = t

28861 if hasattr(self, '_set'):

28862 self._set()

28863

28864 def _unset_instantiation_level_id(self):

28865 self.__instantiation_level_id = YANGDynClass(base=str, is_leaf=True, yang_name="instantiation-level-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

28866

28867

28868 def _get_min_number_of_instances(self):

28869 """

28870 Getter method for min_number_of_instances, mapped from YANG variable /nsd/nsd/df/ns_profile/min_number_of_instances (uint16)

28871

28872 YANG Description: Minimum number of nested NS instances based on the

28873 referenced NSD that is permitted to exist for this

28874 NsProfile.

28875 """

28876 return self.__min_number_of_instances

28877

28878 def _set_min_number_of_instances(self, v, load=False):

28879 """

28880 Setter method for min_number_of_instances, mapped from YANG variable /nsd/nsd/df/ns_profile/min_number_of_instances (uint16)

28881 If this variable is read-only (config: false) in the

28882 source YANG file, then _set_min_number_of_instances is considered as a private

28883 method. Backends looking to populate this variable should

28884 do so via calling thisObj._set_min_number_of_instances() directly.

28885

28886 YANG Description: Minimum number of nested NS instances based on the

28887 referenced NSD that is permitted to exist for this

28888 NsProfile.

28889 """

28890 if hasattr(v, "_utype"):

28891 v = v._utype(v)

28892 try:

28893 t = YANGDynClass(v,base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="min-number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

28894 except (TypeError, ValueError):

28895 raise ValueError({

28896 'error-string': """min_number_of_instances must be of a type compatible with uint16""",

28897 'defined-type': "uint16",

28898 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="min-number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)""",

28899 })

28900

28901 self.__min_number_of_instances = t

28902 if hasattr(self, '_set'):

28903 self._set()

28904

28905 def _unset_min_number_of_instances(self):

28906 self.__min_number_of_instances = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="min-number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

28907

28908

28909 def _get_max_number_of_instances(self):

28910 """

28911 Getter method for max_number_of_instances, mapped from YANG variable /nsd/nsd/df/ns_profile/max_number_of_instances (uint16)

28912

28913 YANG Description: Maximum number of nested NS instances based on the

28914 referenced NSD that is permitted to exist for this

28915 NsProfile.

28916 """

28917 return self.__max_number_of_instances

28918

28919 def _set_max_number_of_instances(self, v, load=False):

28920 """

28921 Setter method for max_number_of_instances, mapped from YANG variable /nsd/nsd/df/ns_profile/max_number_of_instances (uint16)

28922 If this variable is read-only (config: false) in the

28923 source YANG file, then _set_max_number_of_instances is considered as a private

28924 method. Backends looking to populate this variable should

28925 do so via calling thisObj._set_max_number_of_instances() directly.

28926

28927 YANG Description: Maximum number of nested NS instances based on the

28928 referenced NSD that is permitted to exist for this

28929 NsProfile.

28930 """

28931 if hasattr(v, "_utype"):

28932 v = v._utype(v)

28933 try:

28934 t = YANGDynClass(v,base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="max-number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

28935 except (TypeError, ValueError):

28936 raise ValueError({

28937 'error-string': """max_number_of_instances must be of a type compatible with uint16""",

28938 'defined-type': "uint16",

28939 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="max-number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)""",

28940 })

28941

28942 self.__max_number_of_instances = t

28943 if hasattr(self, '_set'):

28944 self._set()

28945

28946 def _unset_max_number_of_instances(self):

28947 self.__max_number_of_instances = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(1), is_leaf=True, yang_name="max-number-of-instances", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

28948

28949

28950 def _get_affinity_or_anti_affinity_group_id(self):

28951 """

28952 Getter method for affinity_or_anti_affinity_group_id, mapped from YANG variable /nsd/nsd/df/ns_profile/affinity_or_anti_affinity_group_id (list)

28953

28954 YANG Description: Identifies an affinity or anti-affinity group the NSs

28955 created according to this NsProfile belongs to.

28956 """

28957 return self.__affinity_or_anti_affinity_group_id

28958

28959 def _set_affinity_or_anti_affinity_group_id(self, v, load=False):

28960 """

28961 Setter method for affinity_or_anti_affinity_group_id, mapped from YANG variable /nsd/nsd/df/ns_profile/affinity_or_anti_affinity_group_id (list)

28962 If this variable is read-only (config: false) in the

28963 source YANG file, then _set_affinity_or_anti_affinity_group_id is considered as a private

28964 method. Backends looking to populate this variable should

28965 do so via calling thisObj._set_affinity_or_anti_affinity_group_id() directly.

28966

28967 YANG Description: Identifies an affinity or anti-affinity group the NSs

28968 created according to this NsProfile belongs to.

28969 """

28970 if hasattr(v, "_utype"):

28971 v = v._utype(v)

28972 try:

28973 t = YANGDynClass(v,base=YANGListType("id",yc_affinity_or_anti_affinity_group_id_etsi_nfv_nsd__nsd_nsd_df_ns_profile_affinity_or_anti_affinity_group_id, yang_name="affinity-or-anti-affinity-group-id", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

28974 except (TypeError, ValueError):

28975 raise ValueError({

28976 'error-string': """affinity_or_anti_affinity_group_id must be of a type compatible with list""",

28977 'defined-type': "list",

28978 'generated-type': """YANGDynClass(base=YANGListType("id",yc_affinity_or_anti_affinity_group_id_etsi_nfv_nsd__nsd_nsd_df_ns_profile_affinity_or_anti_affinity_group_id, yang_name="affinity-or-anti-affinity-group-id", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

28979 })

28980

28981 self.__affinity_or_anti_affinity_group_id = t

28982 if hasattr(self, '_set'):

28983 self._set()

28984

28985 def _unset_affinity_or_anti_affinity_group_id(self):

28986 self.__affinity_or_anti_affinity_group_id = YANGDynClass(base=YANGListType("id",yc_affinity_or_anti_affinity_group_id_etsi_nfv_nsd__nsd_nsd_df_ns_profile_affinity_or_anti_affinity_group_id, yang_name="affinity-or-anti-affinity-group-id", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

28987

28988

28989 def _get_virtual_link_connectivity(self):

28990 """

28991 Getter method for virtual_link_connectivity, mapped from YANG variable /nsd/nsd/df/ns_profile/virtual_link_connectivity (list)

28992 """

28993 return self.__virtual_link_connectivity

28994

28995 def _set_virtual_link_connectivity(self, v, load=False):

28996 """

28997 Setter method for virtual_link_connectivity, mapped from YANG variable /nsd/nsd/df/ns_profile/virtual_link_connectivity (list)

28998 If this variable is read-only (config: false) in the

28999 source YANG file, then _set_virtual_link_connectivity is considered as a private

29000 method. Backends looking to populate this variable should

29001 do so via calling thisObj._set_virtual_link_connectivity() directly.

29002 """

29003 if hasattr(v, "_utype"):

29004 v = v._utype(v)

29005 try:

29006 t = YANGDynClass(v,base=YANGListType("virtual_link_profile_id",yc_virtual_link_connectivity_etsi_nfv_nsd__nsd_nsd_df_ns_profile_virtual_link_connectivity, yang_name="virtual-link-connectivity", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='virtual-link-profile-id', extensions=None), is_container='list', yang_name="virtual-link-connectivity", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

29007 except (TypeError, ValueError):

29008 raise ValueError({

29009 'error-string': """virtual_link_connectivity must be of a type compatible with list""",

29010 'defined-type': "list",

29011 'generated-type': """YANGDynClass(base=YANGListType("virtual_link_profile_id",yc_virtual_link_connectivity_etsi_nfv_nsd__nsd_nsd_df_ns_profile_virtual_link_connectivity, yang_name="virtual-link-connectivity", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='virtual-link-profile-id', extensions=None), is_container='list', yang_name="virtual-link-connectivity", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

29012 })

29013

29014 self.__virtual_link_connectivity = t

29015 if hasattr(self, '_set'):

29016 self._set()

29017

29018 def _unset_virtual_link_connectivity(self):

29019 self.__virtual_link_connectivity = YANGDynClass(base=YANGListType("virtual_link_profile_id",yc_virtual_link_connectivity_etsi_nfv_nsd__nsd_nsd_df_ns_profile_virtual_link_connectivity, yang_name="virtual-link-connectivity", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='virtual-link-profile-id', extensions=None), is_container='list', yang_name="virtual-link-connectivity", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

29020

29021 id = __builtin__.property(_get_id, _set_id)

29022 nsd_id = __builtin__.property(_get_nsd_id, _set_nsd_id)

29023 ns_df_id = __builtin__.property(_get_ns_df_id, _set_ns_df_id)

29024 instantiation_level_id = __builtin__.property(_get_instantiation_level_id, _set_instantiation_level_id)

29025 min_number_of_instances = __builtin__.property(_get_min_number_of_instances, _set_min_number_of_instances)

29026 max_number_of_instances = __builtin__.property(_get_max_number_of_instances, _set_max_number_of_instances)

29027 affinity_or_anti_affinity_group_id = __builtin__.property(_get_affinity_or_anti_affinity_group_id, _set_affinity_or_anti_affinity_group_id)

29028 virtual_link_connectivity = __builtin__.property(_get_virtual_link_connectivity, _set_virtual_link_connectivity)

29029

29030

29031 _pyangbind_elements = OrderedDict([('id', id), ('nsd_id', nsd_id), ('ns_df_id', ns_df_id), ('instantiation_level_id', instantiation_level_id), ('min_number_of_instances', min_number_of_instances), ('max_number_of_instances', max_number_of_instances), ('affinity_or_anti_affinity_group_id', affinity_or_anti_affinity_group_id), ('virtual_link_connectivity', virtual_link_connectivity), ])

29032

29033

29034 class yc_dependencies_etsi_nfv_nsd__nsd_nsd_df_dependencies(PybindBase):

29035 """

29036 This class was auto-generated by the PythonClass plugin for PYANG

29037 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/dependencies. Each member element of

29038 the container is represented as a class variable - with a specific

29039 YANG type.

29040

29041 YANG Description: Specifies the order in which instances of the VNFs and/or

29042 nested NSs have to be created.

29043 """

29044 __slots__ = ('_path_helper', '_extmethods', '__id','__primary_vnf_profile','__primary_ns_profile','__secondary_vnf_profile','__secondary_ns_profile',)

29045

29046 _yang_name = 'dependencies'

29047 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

29048

29049 _pybind_generated_by = 'container'

29050

29051 def __init__(self, *args, **kwargs):

29052

29053 self._path_helper = False

29054

29055 self._extmethods = False

29056 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

29057 self.__primary_vnf_profile = YANGDynClass(base=str, is_leaf=True, yang_name="primary-vnf-profile", parent=self, choice=('primary-id', 'primary-vnf-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

29058 self.__primary_ns_profile = YANGDynClass(base=str, is_leaf=True, yang_name="primary-ns-profile", parent=self, choice=('primary-id', 'primary-ns-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

29059 self.__secondary_vnf_profile = YANGDynClass(base=str, is_leaf=True, yang_name="secondary-vnf-profile", parent=self, choice=('secondary-id', 'secondary-vnf-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

29060 self.__secondary_ns_profile = YANGDynClass(base=str, is_leaf=True, yang_name="secondary-ns-profile", parent=self, choice=('secondary-id', 'secondary-ns-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

29061

29062 load = kwargs.pop("load", None)

29063 if args:

29064 if len(args) > 1:

29065 raise TypeError("cannot create a YANG container with >1 argument")

29066 all_attr = True

29067 for e in self._pyangbind_elements:

29068 if not hasattr(args[0], e):

29069 all_attr = False

29070 break

29071 if not all_attr:

29072 raise ValueError("Supplied object did not have the correct attributes")

29073 for e in self._pyangbind_elements:

29074 nobj = getattr(args[0], e)

29075 if nobj._changed() is False:

29076 continue

29077 setmethod = getattr(self, "_set_%s" % e)

29078 if load is None:

29079 setmethod(getattr(args[0], e))

29080 else:

29081 setmethod(getattr(args[0], e), load=load)

29082

29083 def _path(self):

29084 if hasattr(self, "_parent"):

29085 return self._parent._path()+[self._yang_name]

29086 else:

29087 return ['nsd', 'nsd', 'df', 'dependencies']

29088

29089 def _get_id(self):

29090 """

29091 Getter method for id, mapped from YANG variable /nsd/nsd/df/dependencies/id (string)

29092 """

29093 return self.__id

29094

29095 def _set_id(self, v, load=False):

29096 """

29097 Setter method for id, mapped from YANG variable /nsd/nsd/df/dependencies/id (string)

29098 If this variable is read-only (config: false) in the

29099 source YANG file, then _set_id is considered as a private

29100 method. Backends looking to populate this variable should

29101 do so via calling thisObj._set_id() directly.

29102 """

29103 parent = getattr(self, "_parent", None)

29104 if parent is not None and load is False:

29105 raise AttributeError("Cannot set keys directly when" +

29106 " within an instantiated list")

29107

29108 if hasattr(v, "_utype"):

29109 v = v._utype(v)

29110 try:

29111 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

29112 except (TypeError, ValueError):

29113 raise ValueError({

29114 'error-string': """id must be of a type compatible with string""",

29115 'defined-type': "string",

29116 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

29117 })

29118

29119 self.__id = t

29120 if hasattr(self, '_set'):

29121 self._set()

29122

29123 def _unset_id(self):

29124 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

29125

29126

29127 def _get_primary_vnf_profile(self):

29128 """

29129 Getter method for primary_vnf_profile, mapped from YANG variable /nsd/nsd/df/dependencies/primary_vnf_profile (leafref)

29130 """

29131 return self.__primary_vnf_profile

29132

29133 def _set_primary_vnf_profile(self, v, load=False):

29134 """

29135 Setter method for primary_vnf_profile, mapped from YANG variable /nsd/nsd/df/dependencies/primary_vnf_profile (leafref)

29136 If this variable is read-only (config: false) in the

29137 source YANG file, then _set_primary_vnf_profile is considered as a private

29138 method. Backends looking to populate this variable should

29139 do so via calling thisObj._set_primary_vnf_profile() directly.

29140 """

29141 if hasattr(v, "_utype"):

29142 v = v._utype(v)

29143 try:

29144 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="primary-vnf-profile", parent=self, choice=('primary-id', 'primary-vnf-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

29145 except (TypeError, ValueError):

29146 raise ValueError({

29147 'error-string': """primary_vnf_profile must be of a type compatible with leafref""",

29148 'defined-type': "leafref",

29149 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="primary-vnf-profile", parent=self, choice=('primary-id', 'primary-vnf-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

29150 })

29151

29152 self.__primary_vnf_profile = t

29153 if hasattr(self, '_set'):

29154 self._set()

29155

29156 def _unset_primary_vnf_profile(self):

29157 self.__primary_vnf_profile = YANGDynClass(base=str, is_leaf=True, yang_name="primary-vnf-profile", parent=self, choice=('primary-id', 'primary-vnf-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

29158

29159

29160 def _get_primary_ns_profile(self):

29161 """

29162 Getter method for primary_ns_profile, mapped from YANG variable /nsd/nsd/df/dependencies/primary_ns_profile (leafref)

29163 """

29164 return self.__primary_ns_profile

29165

29166 def _set_primary_ns_profile(self, v, load=False):

29167 """

29168 Setter method for primary_ns_profile, mapped from YANG variable /nsd/nsd/df/dependencies/primary_ns_profile (leafref)

29169 If this variable is read-only (config: false) in the

29170 source YANG file, then _set_primary_ns_profile is considered as a private

29171 method. Backends looking to populate this variable should

29172 do so via calling thisObj._set_primary_ns_profile() directly.

29173 """

29174 if hasattr(v, "_utype"):

29175 v = v._utype(v)

29176 try:

29177 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="primary-ns-profile", parent=self, choice=('primary-id', 'primary-ns-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

29178 except (TypeError, ValueError):

29179 raise ValueError({

29180 'error-string': """primary_ns_profile must be of a type compatible with leafref""",

29181 'defined-type': "leafref",

29182 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="primary-ns-profile", parent=self, choice=('primary-id', 'primary-ns-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

29183 })

29184

29185 self.__primary_ns_profile = t

29186 if hasattr(self, '_set'):

29187 self._set()

29188

29189 def _unset_primary_ns_profile(self):

29190 self.__primary_ns_profile = YANGDynClass(base=str, is_leaf=True, yang_name="primary-ns-profile", parent=self, choice=('primary-id', 'primary-ns-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

29191

29192

29193 def _get_secondary_vnf_profile(self):

29194 """

29195 Getter method for secondary_vnf_profile, mapped from YANG variable /nsd/nsd/df/dependencies/secondary_vnf_profile (leafref)

29196 """

29197 return self.__secondary_vnf_profile

29198

29199 def _set_secondary_vnf_profile(self, v, load=False):

29200 """

29201 Setter method for secondary_vnf_profile, mapped from YANG variable /nsd/nsd/df/dependencies/secondary_vnf_profile (leafref)

29202 If this variable is read-only (config: false) in the

29203 source YANG file, then _set_secondary_vnf_profile is considered as a private

29204 method. Backends looking to populate this variable should

29205 do so via calling thisObj._set_secondary_vnf_profile() directly.

29206 """

29207 if hasattr(v, "_utype"):

29208 v = v._utype(v)

29209 try:

29210 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="secondary-vnf-profile", parent=self, choice=('secondary-id', 'secondary-vnf-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

29211 except (TypeError, ValueError):

29212 raise ValueError({

29213 'error-string': """secondary_vnf_profile must be of a type compatible with leafref""",

29214 'defined-type': "leafref",

29215 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="secondary-vnf-profile", parent=self, choice=('secondary-id', 'secondary-vnf-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

29216 })

29217

29218 self.__secondary_vnf_profile = t

29219 if hasattr(self, '_set'):

29220 self._set()

29221

29222 def _unset_secondary_vnf_profile(self):

29223 self.__secondary_vnf_profile = YANGDynClass(base=str, is_leaf=True, yang_name="secondary-vnf-profile", parent=self, choice=('secondary-id', 'secondary-vnf-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

29224

29225

29226 def _get_secondary_ns_profile(self):

29227 """

29228 Getter method for secondary_ns_profile, mapped from YANG variable /nsd/nsd/df/dependencies/secondary_ns_profile (leafref)

29229 """

29230 return self.__secondary_ns_profile

29231

29232 def _set_secondary_ns_profile(self, v, load=False):

29233 """

29234 Setter method for secondary_ns_profile, mapped from YANG variable /nsd/nsd/df/dependencies/secondary_ns_profile (leafref)

29235 If this variable is read-only (config: false) in the

29236 source YANG file, then _set_secondary_ns_profile is considered as a private

29237 method. Backends looking to populate this variable should

29238 do so via calling thisObj._set_secondary_ns_profile() directly.

29239 """

29240 if hasattr(v, "_utype"):

29241 v = v._utype(v)

29242 try:

29243 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="secondary-ns-profile", parent=self, choice=('secondary-id', 'secondary-ns-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

29244 except (TypeError, ValueError):

29245 raise ValueError({

29246 'error-string': """secondary_ns_profile must be of a type compatible with leafref""",

29247 'defined-type': "leafref",

29248 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="secondary-ns-profile", parent=self, choice=('secondary-id', 'secondary-ns-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

29249 })

29250

29251 self.__secondary_ns_profile = t

29252 if hasattr(self, '_set'):

29253 self._set()

29254

29255 def _unset_secondary_ns_profile(self):

29256 self.__secondary_ns_profile = YANGDynClass(base=str, is_leaf=True, yang_name="secondary-ns-profile", parent=self, choice=('secondary-id', 'secondary-ns-profile'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

29257

29258 id = __builtin__.property(_get_id, _set_id)

29259 primary_vnf_profile = __builtin__.property(_get_primary_vnf_profile, _set_primary_vnf_profile)

29260 primary_ns_profile = __builtin__.property(_get_primary_ns_profile, _set_primary_ns_profile)

29261 secondary_vnf_profile = __builtin__.property(_get_secondary_vnf_profile, _set_secondary_vnf_profile)

29262 secondary_ns_profile = __builtin__.property(_get_secondary_ns_profile, _set_secondary_ns_profile)

29263

29264 __choices__ = {'primary-id': {'primary-vnf-profile': ['primary_vnf_profile'], 'primary-ns-profile': ['primary_ns_profile']}, 'secondary-id': {'secondary-vnf-profile': ['secondary_vnf_profile'], 'secondary-ns-profile': ['secondary_ns_profile']}}

29265 _pyangbind_elements = OrderedDict([('id', id), ('primary_vnf_profile', primary_vnf_profile), ('primary_ns_profile', primary_ns_profile), ('secondary_vnf_profile', secondary_vnf_profile), ('secondary_ns_profile', secondary_ns_profile), ])

29266

29267

29268 class yc_vnf_indicator_info_etsi_nfv_nsd__nsd_nsd_df_monitored_info_vnf_indicator_info(PybindBase):

29269 """

29270 This class was auto-generated by the PythonClass plugin for PYANG

29271 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/monitored-info/vnf-indicator-info. Each member element of

29272 the container is represented as a class variable - with a specific

29273 YANG type.

29274

29275 YANG Description: Uniquely identifies this VNF Indicator information

29276 element.

29277 """

29278 __slots__ = ('_path_helper', '_extmethods', '__vnfd_id','__vnf_indicator',)

29279

29280 _yang_name = 'vnf-indicator-info'

29281 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

29282

29283 _pybind_generated_by = 'container'

29284

29285 def __init__(self, *args, **kwargs):

29286

29287 self._path_helper = False

29288

29289 self._extmethods = False

29290 self.__vnfd_id = YANGDynClass(base=str, is_leaf=True, yang_name="vnfd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

29291 self.__vnf_indicator = YANGDynClass(base=str, is_leaf=True, yang_name="vnf-indicator", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

29292

29293 load = kwargs.pop("load", None)

29294 if args:

29295 if len(args) > 1:

29296 raise TypeError("cannot create a YANG container with >1 argument")

29297 all_attr = True

29298 for e in self._pyangbind_elements:

29299 if not hasattr(args[0], e):

29300 all_attr = False

29301 break

29302 if not all_attr:

29303 raise ValueError("Supplied object did not have the correct attributes")

29304 for e in self._pyangbind_elements:

29305 nobj = getattr(args[0], e)

29306 if nobj._changed() is False:

29307 continue

29308 setmethod = getattr(self, "_set_%s" % e)

29309 if load is None:

29310 setmethod(getattr(args[0], e))

29311 else:

29312 setmethod(getattr(args[0], e), load=load)

29313

29314 def _path(self):

29315 if hasattr(self, "_parent"):

29316 return self._parent._path()+[self._yang_name]

29317 else:

29318 return ['nsd', 'nsd', 'df', 'monitored-info', 'vnf-indicator-info']

29319

29320 def _get_vnfd_id(self):

29321 """

29322 Getter method for vnfd_id, mapped from YANG variable /nsd/nsd/df/monitored_info/vnf_indicator_info/vnfd_id (leafref)

29323

29324 YANG Description: Identifies a VNFD.

29325 """

29326 return self.__vnfd_id

29327

29328 def _set_vnfd_id(self, v, load=False):

29329 """

29330 Setter method for vnfd_id, mapped from YANG variable /nsd/nsd/df/monitored_info/vnf_indicator_info/vnfd_id (leafref)

29331 If this variable is read-only (config: false) in the

29332 source YANG file, then _set_vnfd_id is considered as a private

29333 method. Backends looking to populate this variable should

29334 do so via calling thisObj._set_vnfd_id() directly.

29335

29336 YANG Description: Identifies a VNFD.

29337 """

29338 if hasattr(v, "_utype"):

29339 v = v._utype(v)

29340 try:

29341 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="vnfd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

29342 except (TypeError, ValueError):

29343 raise ValueError({

29344 'error-string': """vnfd_id must be of a type compatible with leafref""",

29345 'defined-type': "leafref",

29346 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="vnfd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

29347 })

29348

29349 self.__vnfd_id = t

29350 if hasattr(self, '_set'):

29351 self._set()

29352

29353 def _unset_vnfd_id(self):

29354 self.__vnfd_id = YANGDynClass(base=str, is_leaf=True, yang_name="vnfd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

29355

29356

29357 def _get_vnf_indicator(self):

29358 """

29359 Getter method for vnf_indicator, mapped from YANG variable /nsd/nsd/df/monitored_info/vnf_indicator_info/vnf_indicator (leafref)

29360

29361 YANG Description: Identifies a VNF indicator within the VNFD.

29362 """

29363 return self.__vnf_indicator

29364

29365 def _set_vnf_indicator(self, v, load=False):

29366 """

29367 Setter method for vnf_indicator, mapped from YANG variable /nsd/nsd/df/monitored_info/vnf_indicator_info/vnf_indicator (leafref)

29368 If this variable is read-only (config: false) in the

29369 source YANG file, then _set_vnf_indicator is considered as a private

29370 method. Backends looking to populate this variable should

29371 do so via calling thisObj._set_vnf_indicator() directly.

29372

29373 YANG Description: Identifies a VNF indicator within the VNFD.

29374 """

29375 if hasattr(v, "_utype"):

29376 v = v._utype(v)

29377 try:

29378 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="vnf-indicator", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

29379 except (TypeError, ValueError):

29380 raise ValueError({

29381 'error-string': """vnf_indicator must be of a type compatible with leafref""",

29382 'defined-type': "leafref",

29383 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="vnf-indicator", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

29384 })

29385

29386 self.__vnf_indicator = t

29387 if hasattr(self, '_set'):

29388 self._set()

29389

29390 def _unset_vnf_indicator(self):

29391 self.__vnf_indicator = YANGDynClass(base=str, is_leaf=True, yang_name="vnf-indicator", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

29392

29393 vnfd_id = __builtin__.property(_get_vnfd_id, _set_vnfd_id)

29394 vnf_indicator = __builtin__.property(_get_vnf_indicator, _set_vnf_indicator)

29395

29396

29397 _pyangbind_elements = OrderedDict([('vnfd_id', vnfd_id), ('vnf_indicator', vnf_indicator), ])

29398

29399

29400 class yc_monitoring_parameter_etsi_nfv_nsd__nsd_nsd_df_monitored_info_monitoring_parameter(PybindBase):

29401 """

29402 This class was auto-generated by the PythonClass plugin for PYANG

29403 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/monitored-info/monitoring-parameter. Each member element of

29404 the container is represented as a class variable - with a specific

29405 YANG type.

29406 """

29407 __slots__ = ('_path_helper', '_extmethods', '__id','__name','__performance_metric','__collection_period',)

29408

29409 _yang_name = 'monitoring-parameter'

29410 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

29411

29412 _pybind_generated_by = 'container'

29413

29414 def __init__(self, *args, **kwargs):

29415

29416 self._path_helper = False

29417

29418 self._extmethods = False

29419 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

29420 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

29421 self.__performance_metric = YANGDynClass(base=str, is_leaf=True, yang_name="performance-metric", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

29422 self.__collection_period = YANGDynClass(base=str, is_leaf=True, yang_name="collection-period", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

29423

29424 load = kwargs.pop("load", None)

29425 if args:

29426 if len(args) > 1:

29427 raise TypeError("cannot create a YANG container with >1 argument")

29428 all_attr = True

29429 for e in self._pyangbind_elements:

29430 if not hasattr(args[0], e):

29431 all_attr = False

29432 break

29433 if not all_attr:

29434 raise ValueError("Supplied object did not have the correct attributes")

29435 for e in self._pyangbind_elements:

29436 nobj = getattr(args[0], e)

29437 if nobj._changed() is False:

29438 continue

29439 setmethod = getattr(self, "_set_%s" % e)

29440 if load is None:

29441 setmethod(getattr(args[0], e))

29442 else:

29443 setmethod(getattr(args[0], e), load=load)

29444

29445 def _path(self):

29446 if hasattr(self, "_parent"):

29447 return self._parent._path()+[self._yang_name]

29448 else:

29449 return ['nsd', 'nsd', 'df', 'monitored-info', 'monitoring-parameter']

29450

29451 def _get_id(self):

29452 """

29453 Getter method for id, mapped from YANG variable /nsd/nsd/df/monitored_info/monitoring_parameter/id (string)

29454

29455 YANG Description: Unique identifier of this monitoring parameter

29456 information element.

29457 """

29458 return self.__id

29459

29460 def _set_id(self, v, load=False):

29461 """

29462 Setter method for id, mapped from YANG variable /nsd/nsd/df/monitored_info/monitoring_parameter/id (string)

29463 If this variable is read-only (config: false) in the

29464 source YANG file, then _set_id is considered as a private

29465 method. Backends looking to populate this variable should

29466 do so via calling thisObj._set_id() directly.

29467

29468 YANG Description: Unique identifier of this monitoring parameter

29469 information element.

29470 """

29471 if hasattr(v, "_utype"):

29472 v = v._utype(v)

29473 try:

29474 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

29475 except (TypeError, ValueError):

29476 raise ValueError({

29477 'error-string': """id must be of a type compatible with string""",

29478 'defined-type': "string",

29479 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

29480 })

29481

29482 self.__id = t

29483 if hasattr(self, '_set'):

29484 self._set()

29485

29486 def _unset_id(self):

29487 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

29488

29489

29490 def _get_name(self):

29491 """

29492 Getter method for name, mapped from YANG variable /nsd/nsd/df/monitored_info/monitoring_parameter/name (string)

29493

29494 YANG Description: Human readable name of the monitoring parameter.

29495 """

29496 return self.__name

29497

29498 def _set_name(self, v, load=False):

29499 """

29500 Setter method for name, mapped from YANG variable /nsd/nsd/df/monitored_info/monitoring_parameter/name (string)

29501 If this variable is read-only (config: false) in the

29502 source YANG file, then _set_name is considered as a private

29503 method. Backends looking to populate this variable should

29504 do so via calling thisObj._set_name() directly.

29505

29506 YANG Description: Human readable name of the monitoring parameter.

29507 """

29508 if hasattr(v, "_utype"):

29509 v = v._utype(v)

29510 try:

29511 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

29512 except (TypeError, ValueError):

29513 raise ValueError({

29514 'error-string': """name must be of a type compatible with string""",

29515 'defined-type': "string",

29516 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

29517 })

29518

29519 self.__name = t

29520 if hasattr(self, '_set'):

29521 self._set()

29522

29523 def _unset_name(self):

29524 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

29525

29526

29527 def _get_performance_metric(self):

29528 """

29529 Getter method for performance_metric, mapped from YANG variable /nsd/nsd/df/monitored_info/monitoring_parameter/performance_metric (string)

29530

29531 YANG Description: Defines the virtualised resource-related performance

29532 metric.

29533 """

29534 return self.__performance_metric

29535

29536 def _set_performance_metric(self, v, load=False):

29537 """

29538 Setter method for performance_metric, mapped from YANG variable /nsd/nsd/df/monitored_info/monitoring_parameter/performance_metric (string)

29539 If this variable is read-only (config: false) in the

29540 source YANG file, then _set_performance_metric is considered as a private

29541 method. Backends looking to populate this variable should

29542 do so via calling thisObj._set_performance_metric() directly.

29543

29544 YANG Description: Defines the virtualised resource-related performance

29545 metric.

29546 """

29547 if hasattr(v, "_utype"):

29548 v = v._utype(v)

29549 try:

29550 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="performance-metric", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

29551 except (TypeError, ValueError):

29552 raise ValueError({

29553 'error-string': """performance_metric must be of a type compatible with string""",

29554 'defined-type': "string",

29555 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="performance-metric", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

29556 })

29557

29558 self.__performance_metric = t

29559 if hasattr(self, '_set'):

29560 self._set()

29561

29562 def _unset_performance_metric(self):

29563 self.__performance_metric = YANGDynClass(base=str, is_leaf=True, yang_name="performance-metric", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

29564

29565

29566 def _get_collection_period(self):

29567 """

29568 Getter method for collection_period, mapped from YANG variable /nsd/nsd/df/monitored_info/monitoring_parameter/collection_period (string)

29569

29570 YANG Description: An attribute that describes the periodicity at

29571 which to collect the performance information.

29572 """

29573 return self.__collection_period

29574

29575 def _set_collection_period(self, v, load=False):

29576 """

29577 Setter method for collection_period, mapped from YANG variable /nsd/nsd/df/monitored_info/monitoring_parameter/collection_period (string)

29578 If this variable is read-only (config: false) in the

29579 source YANG file, then _set_collection_period is considered as a private

29580 method. Backends looking to populate this variable should

29581 do so via calling thisObj._set_collection_period() directly.

29582

29583 YANG Description: An attribute that describes the periodicity at

29584 which to collect the performance information.

29585 """

29586 if hasattr(v, "_utype"):

29587 v = v._utype(v)

29588 try:

29589 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="collection-period", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

29590 except (TypeError, ValueError):

29591 raise ValueError({

29592 'error-string': """collection_period must be of a type compatible with string""",

29593 'defined-type': "string",

29594 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="collection-period", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

29595 })

29596

29597 self.__collection_period = t

29598 if hasattr(self, '_set'):

29599 self._set()

29600

29601 def _unset_collection_period(self):

29602 self.__collection_period = YANGDynClass(base=str, is_leaf=True, yang_name="collection-period", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

29603

29604 id = __builtin__.property(_get_id, _set_id)

29605 name = __builtin__.property(_get_name, _set_name)

29606 performance_metric = __builtin__.property(_get_performance_metric, _set_performance_metric)

29607 collection_period = __builtin__.property(_get_collection_period, _set_collection_period)

29608

29609

29610 _pyangbind_elements = OrderedDict([('id', id), ('name', name), ('performance_metric', performance_metric), ('collection_period', collection_period), ])

29611

29612

29613 class yc_monitored_info_etsi_nfv_nsd__nsd_nsd_df_monitored_info(PybindBase):

29614 """

29615 This class was auto-generated by the PythonClass plugin for PYANG

29616 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df/monitored-info. Each member element of

29617 the container is represented as a class variable - with a specific

29618 YANG type.

29619 """

29620 __slots__ = ('_path_helper', '_extmethods', '__id','__vnf_indicator_info','__monitoring_parameter',)

29621

29622 _yang_name = 'monitored-info'

29623 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

29624

29625 _pybind_generated_by = 'container'

29626

29627 def __init__(self, *args, **kwargs):

29628

29629 self._path_helper = False

29630

29631 self._extmethods = False

29632 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

29633 self.__vnf_indicator_info = YANGDynClass(base=yc_vnf_indicator_info_etsi_nfv_nsd__nsd_nsd_df_monitored_info_vnf_indicator_info, is_container='container', yang_name="vnf-indicator-info", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

29634 self.__monitoring_parameter = YANGDynClass(base=yc_monitoring_parameter_etsi_nfv_nsd__nsd_nsd_df_monitored_info_monitoring_parameter, is_container='container', yang_name="monitoring-parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

29635

29636 load = kwargs.pop("load", None)

29637 if args:

29638 if len(args) > 1:

29639 raise TypeError("cannot create a YANG container with >1 argument")

29640 all_attr = True

29641 for e in self._pyangbind_elements:

29642 if not hasattr(args[0], e):

29643 all_attr = False

29644 break

29645 if not all_attr:

29646 raise ValueError("Supplied object did not have the correct attributes")

29647 for e in self._pyangbind_elements:

29648 nobj = getattr(args[0], e)

29649 if nobj._changed() is False:

29650 continue

29651 setmethod = getattr(self, "_set_%s" % e)

29652 if load is None:

29653 setmethod(getattr(args[0], e))

29654 else:

29655 setmethod(getattr(args[0], e), load=load)

29656

29657 def _path(self):

29658 if hasattr(self, "_parent"):

29659 return self._parent._path()+[self._yang_name]

29660 else:

29661 return ['nsd', 'nsd', 'df', 'monitored-info']

29662

29663 def _get_id(self):

29664 """

29665 Getter method for id, mapped from YANG variable /nsd/nsd/df/monitored_info/id (string)

29666 """

29667 return self.__id

29668

29669 def _set_id(self, v, load=False):

29670 """

29671 Setter method for id, mapped from YANG variable /nsd/nsd/df/monitored_info/id (string)

29672 If this variable is read-only (config: false) in the

29673 source YANG file, then _set_id is considered as a private

29674 method. Backends looking to populate this variable should

29675 do so via calling thisObj._set_id() directly.

29676 """

29677 parent = getattr(self, "_parent", None)

29678 if parent is not None and load is False:

29679 raise AttributeError("Cannot set keys directly when" +

29680 " within an instantiated list")

29681

29682 if hasattr(v, "_utype"):

29683 v = v._utype(v)

29684 try:

29685 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

29686 except (TypeError, ValueError):

29687 raise ValueError({

29688 'error-string': """id must be of a type compatible with string""",

29689 'defined-type': "string",

29690 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

29691 })

29692

29693 self.__id = t

29694 if hasattr(self, '_set'):

29695 self._set()

29696

29697 def _unset_id(self):

29698 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

29699

29700

29701 def _get_vnf_indicator_info(self):

29702 """

29703 Getter method for vnf_indicator_info, mapped from YANG variable /nsd/nsd/df/monitored_info/vnf_indicator_info (container)

29704

29705 YANG Description: Uniquely identifies this VNF Indicator information

29706 element.

29707 """

29708 return self.__vnf_indicator_info

29709

29710 def _set_vnf_indicator_info(self, v, load=False):

29711 """

29712 Setter method for vnf_indicator_info, mapped from YANG variable /nsd/nsd/df/monitored_info/vnf_indicator_info (container)

29713 If this variable is read-only (config: false) in the

29714 source YANG file, then _set_vnf_indicator_info is considered as a private

29715 method. Backends looking to populate this variable should

29716 do so via calling thisObj._set_vnf_indicator_info() directly.

29717

29718 YANG Description: Uniquely identifies this VNF Indicator information

29719 element.

29720 """

29721 if hasattr(v, "_utype"):

29722 v = v._utype(v)

29723 try:

29724 t = YANGDynClass(v,base=yc_vnf_indicator_info_etsi_nfv_nsd__nsd_nsd_df_monitored_info_vnf_indicator_info, is_container='container', yang_name="vnf-indicator-info", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

29725 except (TypeError, ValueError):

29726 raise ValueError({

29727 'error-string': """vnf_indicator_info must be of a type compatible with container""",

29728 'defined-type': "container",

29729 'generated-type': """YANGDynClass(base=yc_vnf_indicator_info_etsi_nfv_nsd__nsd_nsd_df_monitored_info_vnf_indicator_info, is_container='container', yang_name="vnf-indicator-info", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

29730 })

29731

29732 self.__vnf_indicator_info = t

29733 if hasattr(self, '_set'):

29734 self._set()

29735

29736 def _unset_vnf_indicator_info(self):

29737 self.__vnf_indicator_info = YANGDynClass(base=yc_vnf_indicator_info_etsi_nfv_nsd__nsd_nsd_df_monitored_info_vnf_indicator_info, is_container='container', yang_name="vnf-indicator-info", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

29738

29739

29740 def _get_monitoring_parameter(self):

29741 """

29742 Getter method for monitoring_parameter, mapped from YANG variable /nsd/nsd/df/monitored_info/monitoring_parameter (container)

29743 """

29744 return self.__monitoring_parameter

29745

29746 def _set_monitoring_parameter(self, v, load=False):

29747 """

29748 Setter method for monitoring_parameter, mapped from YANG variable /nsd/nsd/df/monitored_info/monitoring_parameter (container)

29749 If this variable is read-only (config: false) in the

29750 source YANG file, then _set_monitoring_parameter is considered as a private

29751 method. Backends looking to populate this variable should

29752 do so via calling thisObj._set_monitoring_parameter() directly.

29753 """

29754 if hasattr(v, "_utype"):

29755 v = v._utype(v)

29756 try:

29757 t = YANGDynClass(v,base=yc_monitoring_parameter_etsi_nfv_nsd__nsd_nsd_df_monitored_info_monitoring_parameter, is_container='container', yang_name="monitoring-parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

29758 except (TypeError, ValueError):

29759 raise ValueError({

29760 'error-string': """monitoring_parameter must be of a type compatible with container""",

29761 'defined-type': "container",

29762 'generated-type': """YANGDynClass(base=yc_monitoring_parameter_etsi_nfv_nsd__nsd_nsd_df_monitored_info_monitoring_parameter, is_container='container', yang_name="monitoring-parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

29763 })

29764

29765 self.__monitoring_parameter = t

29766 if hasattr(self, '_set'):

29767 self._set()

29768

29769 def _unset_monitoring_parameter(self):

29770 self.__monitoring_parameter = YANGDynClass(base=yc_monitoring_parameter_etsi_nfv_nsd__nsd_nsd_df_monitored_info_monitoring_parameter, is_container='container', yang_name="monitoring-parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

29771

29772 id = __builtin__.property(_get_id, _set_id)

29773 vnf_indicator_info = __builtin__.property(_get_vnf_indicator_info, _set_vnf_indicator_info)

29774 monitoring_parameter = __builtin__.property(_get_monitoring_parameter, _set_monitoring_parameter)

29775

29776

29777 _pyangbind_elements = OrderedDict([('id', id), ('vnf_indicator_info', vnf_indicator_info), ('monitoring_parameter', monitoring_parameter), ])

29778

29779

29780 class yc_df_etsi_nfv_nsd__nsd_nsd_df(PybindBase):

29781 """

29782 This class was auto-generated by the PythonClass plugin for PYANG

29783 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/df. Each member element of

29784 the container is represented as a class variable - with a specific

29785 YANG type.

29786

29787 YANG Description: Identifies a DF within the scope of an NSD.

29788 """

29789 __slots__ = ('_path_helper', '_extmethods', '__id','__flavour_key','__vnf_profile','__pnf_profile','__virtual_link_profile','__scaling_aspect','__affinity_or_anti_affinity_group','__ns_instantiation_level','__default_instantiation_level','__ns_profile','__dependencies','__monitored_info',)

29790

29791 _yang_name = 'df'

29792 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

29793

29794 _pybind_generated_by = 'container'

29795

29796 def __init__(self, *args, **kwargs):

29797

29798 self._path_helper = False

29799

29800 self._extmethods = False

29801 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

29802 self.__flavour_key = YANGDynClass(base=str, is_leaf=True, yang_name="flavour-key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

29803 self.__vnf_profile = YANGDynClass(base=YANGListType("id",yc_vnf_profile_etsi_nfv_nsd__nsd_nsd_df_vnf_profile, yang_name="vnf-profile", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="vnf-profile", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

29804 self.__pnf_profile = YANGDynClass(base=YANGListType("id",yc_pnf_profile_etsi_nfv_nsd__nsd_nsd_df_pnf_profile, yang_name="pnf-profile", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="pnf-profile", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

29805 self.__virtual_link_profile = YANGDynClass(base=YANGListType("id",yc_virtual_link_profile_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile, yang_name="virtual-link-profile", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="virtual-link-profile", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

29806 self.__scaling_aspect = YANGDynClass(base=YANGListType("id",yc_scaling_aspect_etsi_nfv_nsd__nsd_nsd_df_scaling_aspect, yang_name="scaling-aspect", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="scaling-aspect", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

29807 self.__affinity_or_anti_affinity_group = YANGDynClass(base=YANGListType("id",yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_nsd_df_affinity_or_anti_affinity_group, yang_name="affinity-or-anti-affinity-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

29808 self.__ns_instantiation_level = YANGDynClass(base=YANGListType("id",yc_ns_instantiation_level_etsi_nfv_nsd__nsd_nsd_df_ns_instantiation_level, yang_name="ns-instantiation-level", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="ns-instantiation-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

29809 self.__default_instantiation_level = YANGDynClass(base=str, is_leaf=True, yang_name="default-instantiation-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

29810 self.__ns_profile = YANGDynClass(base=YANGListType("id",yc_ns_profile_etsi_nfv_nsd__nsd_nsd_df_ns_profile, yang_name="ns-profile", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="ns-profile", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

29811 self.__dependencies = YANGDynClass(base=YANGListType("id",yc_dependencies_etsi_nfv_nsd__nsd_nsd_df_dependencies, yang_name="dependencies", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="dependencies", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

29812 self.__monitored_info = YANGDynClass(base=YANGListType("id",yc_monitored_info_etsi_nfv_nsd__nsd_nsd_df_monitored_info, yang_name="monitored-info", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="monitored-info", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

29813

29814 load = kwargs.pop("load", None)

29815 if args:

29816 if len(args) > 1:

29817 raise TypeError("cannot create a YANG container with >1 argument")

29818 all_attr = True

29819 for e in self._pyangbind_elements:

29820 if not hasattr(args[0], e):

29821 all_attr = False

29822 break

29823 if not all_attr:

29824 raise ValueError("Supplied object did not have the correct attributes")

29825 for e in self._pyangbind_elements:

29826 nobj = getattr(args[0], e)

29827 if nobj._changed() is False:

29828 continue

29829 setmethod = getattr(self, "_set_%s" % e)

29830 if load is None:

29831 setmethod(getattr(args[0], e))

29832 else:

29833 setmethod(getattr(args[0], e), load=load)

29834

29835 def _path(self):

29836 if hasattr(self, "_parent"):

29837 return self._parent._path()+[self._yang_name]

29838 else:

29839 return ['nsd', 'nsd', 'df']

29840

29841 def _get_id(self):

29842 """

29843 Getter method for id, mapped from YANG variable /nsd/nsd/df/id (string)

29844

29845 YANG Description: Identifies this NsDf information element. It identifies

29846 a NS DF within the NSD.

29847 """

29848 return self.__id

29849

29850 def _set_id(self, v, load=False):

29851 """

29852 Setter method for id, mapped from YANG variable /nsd/nsd/df/id (string)

29853 If this variable is read-only (config: false) in the

29854 source YANG file, then _set_id is considered as a private

29855 method. Backends looking to populate this variable should

29856 do so via calling thisObj._set_id() directly.

29857

29858 YANG Description: Identifies this NsDf information element. It identifies

29859 a NS DF within the NSD.

29860 """

29861 parent = getattr(self, "_parent", None)

29862 if parent is not None and load is False:

29863 raise AttributeError("Cannot set keys directly when" +

29864 " within an instantiated list")

29865

29866 if hasattr(v, "_utype"):

29867 v = v._utype(v)

29868 try:

29869 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

29870 except (TypeError, ValueError):

29871 raise ValueError({

29872 'error-string': """id must be of a type compatible with string""",

29873 'defined-type': "string",

29874 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

29875 })

29876

29877 self.__id = t

29878 if hasattr(self, '_set'):

29879 self._set()

29880

29881 def _unset_id(self):

29882 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

29883

29884

29885 def _get_flavour_key(self):

29886 """

29887 Getter method for flavour_key, mapped from YANG variable /nsd/nsd/df/flavour_key (leafref)

29888

29889 YANG Description: Assurance parameter against which this flavour is being

29890 described.

29891

29892 The key can be a combination of multiple assurance

29893 parameters with a logical relationship between them.

29894 The parameters should be present as a monitoredInfo

29895 attribute in the NSD.

29896 """

29897 return self.__flavour_key

29898

29899 def _set_flavour_key(self, v, load=False):

29900 """

29901 Setter method for flavour_key, mapped from YANG variable /nsd/nsd/df/flavour_key (leafref)

29902 If this variable is read-only (config: false) in the

29903 source YANG file, then _set_flavour_key is considered as a private

29904 method. Backends looking to populate this variable should

29905 do so via calling thisObj._set_flavour_key() directly.

29906

29907 YANG Description: Assurance parameter against which this flavour is being

29908 described.

29909

29910 The key can be a combination of multiple assurance

29911 parameters with a logical relationship between them.

29912 The parameters should be present as a monitoredInfo

29913 attribute in the NSD.

29914 """

29915 if hasattr(v, "_utype"):

29916 v = v._utype(v)

29917 try:

29918 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="flavour-key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

29919 except (TypeError, ValueError):

29920 raise ValueError({

29921 'error-string': """flavour_key must be of a type compatible with leafref""",

29922 'defined-type': "leafref",

29923 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="flavour-key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

29924 })

29925

29926 self.__flavour_key = t

29927 if hasattr(self, '_set'):

29928 self._set()

29929

29930 def _unset_flavour_key(self):

29931 self.__flavour_key = YANGDynClass(base=str, is_leaf=True, yang_name="flavour-key", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

29932

29933

29934 def _get_vnf_profile(self):

29935 """

29936 Getter method for vnf_profile, mapped from YANG variable /nsd/nsd/df/vnf_profile (list)

29937

29938 YANG Description: VNF profile to be used for the NS flavour.

29939 """

29940 return self.__vnf_profile

29941

29942 def _set_vnf_profile(self, v, load=False):

29943 """

29944 Setter method for vnf_profile, mapped from YANG variable /nsd/nsd/df/vnf_profile (list)

29945 If this variable is read-only (config: false) in the

29946 source YANG file, then _set_vnf_profile is considered as a private

29947 method. Backends looking to populate this variable should

29948 do so via calling thisObj._set_vnf_profile() directly.

29949

29950 YANG Description: VNF profile to be used for the NS flavour.

29951 """

29952 if hasattr(v, "_utype"):

29953 v = v._utype(v)

29954 try:

29955 t = YANGDynClass(v,base=YANGListType("id",yc_vnf_profile_etsi_nfv_nsd__nsd_nsd_df_vnf_profile, yang_name="vnf-profile", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="vnf-profile", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

29956 except (TypeError, ValueError):

29957 raise ValueError({

29958 'error-string': """vnf_profile must be of a type compatible with list""",

29959 'defined-type': "list",

29960 'generated-type': """YANGDynClass(base=YANGListType("id",yc_vnf_profile_etsi_nfv_nsd__nsd_nsd_df_vnf_profile, yang_name="vnf-profile", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="vnf-profile", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

29961 })

29962

29963 self.__vnf_profile = t

29964 if hasattr(self, '_set'):

29965 self._set()

29966

29967 def _unset_vnf_profile(self):

29968 self.__vnf_profile = YANGDynClass(base=YANGListType("id",yc_vnf_profile_etsi_nfv_nsd__nsd_nsd_df_vnf_profile, yang_name="vnf-profile", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="vnf-profile", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

29969

29970

29971 def _get_pnf_profile(self):

29972 """

29973 Getter method for pnf_profile, mapped from YANG variable /nsd/nsd/df/pnf_profile (list)

29974 """

29975 return self.__pnf_profile

29976

29977 def _set_pnf_profile(self, v, load=False):

29978 """

29979 Setter method for pnf_profile, mapped from YANG variable /nsd/nsd/df/pnf_profile (list)

29980 If this variable is read-only (config: false) in the

29981 source YANG file, then _set_pnf_profile is considered as a private

29982 method. Backends looking to populate this variable should

29983 do so via calling thisObj._set_pnf_profile() directly.

29984 """

29985 if hasattr(v, "_utype"):

29986 v = v._utype(v)

29987 try:

29988 t = YANGDynClass(v,base=YANGListType("id",yc_pnf_profile_etsi_nfv_nsd__nsd_nsd_df_pnf_profile, yang_name="pnf-profile", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="pnf-profile", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

29989 except (TypeError, ValueError):

29990 raise ValueError({

29991 'error-string': """pnf_profile must be of a type compatible with list""",

29992 'defined-type': "list",

29993 'generated-type': """YANGDynClass(base=YANGListType("id",yc_pnf_profile_etsi_nfv_nsd__nsd_nsd_df_pnf_profile, yang_name="pnf-profile", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="pnf-profile", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

29994 })

29995

29996 self.__pnf_profile = t

29997 if hasattr(self, '_set'):

29998 self._set()

29999

30000 def _unset_pnf_profile(self):

30001 self.__pnf_profile = YANGDynClass(base=YANGListType("id",yc_pnf_profile_etsi_nfv_nsd__nsd_nsd_df_pnf_profile, yang_name="pnf-profile", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="pnf-profile", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

30002

30003

30004 def _get_virtual_link_profile(self):

30005 """

30006 Getter method for virtual_link_profile, mapped from YANG variable /nsd/nsd/df/virtual_link_profile (list)

30007

30008 YANG Description: VL profile to be used for the NS flavour.

30009 """

30010 return self.__virtual_link_profile

30011

30012 def _set_virtual_link_profile(self, v, load=False):

30013 """

30014 Setter method for virtual_link_profile, mapped from YANG variable /nsd/nsd/df/virtual_link_profile (list)

30015 If this variable is read-only (config: false) in the

30016 source YANG file, then _set_virtual_link_profile is considered as a private

30017 method. Backends looking to populate this variable should

30018 do so via calling thisObj._set_virtual_link_profile() directly.

30019

30020 YANG Description: VL profile to be used for the NS flavour.

30021 """

30022 if hasattr(v, "_utype"):

30023 v = v._utype(v)

30024 try:

30025 t = YANGDynClass(v,base=YANGListType("id",yc_virtual_link_profile_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile, yang_name="virtual-link-profile", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="virtual-link-profile", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

30026 except (TypeError, ValueError):

30027 raise ValueError({

30028 'error-string': """virtual_link_profile must be of a type compatible with list""",

30029 'defined-type': "list",

30030 'generated-type': """YANGDynClass(base=YANGListType("id",yc_virtual_link_profile_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile, yang_name="virtual-link-profile", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="virtual-link-profile", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

30031 })

30032

30033 self.__virtual_link_profile = t

30034 if hasattr(self, '_set'):

30035 self._set()

30036

30037 def _unset_virtual_link_profile(self):

30038 self.__virtual_link_profile = YANGDynClass(base=YANGListType("id",yc_virtual_link_profile_etsi_nfv_nsd__nsd_nsd_df_virtual_link_profile, yang_name="virtual-link-profile", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="virtual-link-profile", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

30039

30040

30041 def _get_scaling_aspect(self):

30042 """

30043 Getter method for scaling_aspect, mapped from YANG variable /nsd/nsd/df/scaling_aspect (list)

30044

30045 YANG Description: The scaling aspects supported by this DF of the NS.

30046 """

30047 return self.__scaling_aspect

30048

30049 def _set_scaling_aspect(self, v, load=False):

30050 """

30051 Setter method for scaling_aspect, mapped from YANG variable /nsd/nsd/df/scaling_aspect (list)

30052 If this variable is read-only (config: false) in the

30053 source YANG file, then _set_scaling_aspect is considered as a private

30054 method. Backends looking to populate this variable should

30055 do so via calling thisObj._set_scaling_aspect() directly.

30056

30057 YANG Description: The scaling aspects supported by this DF of the NS.

30058 """

30059 if hasattr(v, "_utype"):

30060 v = v._utype(v)

30061 try:

30062 t = YANGDynClass(v,base=YANGListType("id",yc_scaling_aspect_etsi_nfv_nsd__nsd_nsd_df_scaling_aspect, yang_name="scaling-aspect", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="scaling-aspect", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

30063 except (TypeError, ValueError):

30064 raise ValueError({

30065 'error-string': """scaling_aspect must be of a type compatible with list""",

30066 'defined-type': "list",

30067 'generated-type': """YANGDynClass(base=YANGListType("id",yc_scaling_aspect_etsi_nfv_nsd__nsd_nsd_df_scaling_aspect, yang_name="scaling-aspect", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="scaling-aspect", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

30068 })

30069

30070 self.__scaling_aspect = t

30071 if hasattr(self, '_set'):

30072 self._set()

30073

30074 def _unset_scaling_aspect(self):

30075 self.__scaling_aspect = YANGDynClass(base=YANGListType("id",yc_scaling_aspect_etsi_nfv_nsd__nsd_nsd_df_scaling_aspect, yang_name="scaling-aspect", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="scaling-aspect", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

30076

30077

30078 def _get_affinity_or_anti_affinity_group(self):

30079 """

30080 Getter method for affinity_or_anti_affinity_group, mapped from YANG variable /nsd/nsd/df/affinity_or_anti_affinity_group (list)

30081

30082 YANG Description: Specifies affinity or anti-affinity relationship

30083 applicable between the VNF instances created using

30084 different VNFDs, the Virtual Link instances created

30085 using different NsVirtualLinkDescs or the nested NS

30086 instances created using different NSDs in the same

30087 affinity or anti-affinity group.

30088 """

30089 return self.__affinity_or_anti_affinity_group

30090

30091 def _set_affinity_or_anti_affinity_group(self, v, load=False):

30092 """

30093 Setter method for affinity_or_anti_affinity_group, mapped from YANG variable /nsd/nsd/df/affinity_or_anti_affinity_group (list)

30094 If this variable is read-only (config: false) in the

30095 source YANG file, then _set_affinity_or_anti_affinity_group is considered as a private

30096 method. Backends looking to populate this variable should

30097 do so via calling thisObj._set_affinity_or_anti_affinity_group() directly.

30098

30099 YANG Description: Specifies affinity or anti-affinity relationship

30100 applicable between the VNF instances created using

30101 different VNFDs, the Virtual Link instances created

30102 using different NsVirtualLinkDescs or the nested NS

30103 instances created using different NSDs in the same

30104 affinity or anti-affinity group.

30105 """

30106 if hasattr(v, "_utype"):

30107 v = v._utype(v)

30108 try:

30109 t = YANGDynClass(v,base=YANGListType("id",yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_nsd_df_affinity_or_anti_affinity_group, yang_name="affinity-or-anti-affinity-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

30110 except (TypeError, ValueError):

30111 raise ValueError({

30112 'error-string': """affinity_or_anti_affinity_group must be of a type compatible with list""",

30113 'defined-type': "list",

30114 'generated-type': """YANGDynClass(base=YANGListType("id",yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_nsd_df_affinity_or_anti_affinity_group, yang_name="affinity-or-anti-affinity-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

30115 })

30116

30117 self.__affinity_or_anti_affinity_group = t

30118 if hasattr(self, '_set'):

30119 self._set()

30120

30121 def _unset_affinity_or_anti_affinity_group(self):

30122 self.__affinity_or_anti_affinity_group = YANGDynClass(base=YANGListType("id",yc_affinity_or_anti_affinity_group_etsi_nfv_nsd__nsd_nsd_df_affinity_or_anti_affinity_group, yang_name="affinity-or-anti-affinity-group", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="affinity-or-anti-affinity-group", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

30123

30124

30125 def _get_ns_instantiation_level(self):

30126 """

30127 Getter method for ns_instantiation_level, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level (list)

30128

30129 YANG Description: Describes the details of an NS level.

30130 """

30131 return self.__ns_instantiation_level

30132

30133 def _set_ns_instantiation_level(self, v, load=False):

30134 """

30135 Setter method for ns_instantiation_level, mapped from YANG variable /nsd/nsd/df/ns_instantiation_level (list)

30136 If this variable is read-only (config: false) in the

30137 source YANG file, then _set_ns_instantiation_level is considered as a private

30138 method. Backends looking to populate this variable should

30139 do so via calling thisObj._set_ns_instantiation_level() directly.

30140

30141 YANG Description: Describes the details of an NS level.

30142 """

30143 if hasattr(v, "_utype"):

30144 v = v._utype(v)

30145 try:

30146 t = YANGDynClass(v,base=YANGListType("id",yc_ns_instantiation_level_etsi_nfv_nsd__nsd_nsd_df_ns_instantiation_level, yang_name="ns-instantiation-level", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="ns-instantiation-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

30147 except (TypeError, ValueError):

30148 raise ValueError({

30149 'error-string': """ns_instantiation_level must be of a type compatible with list""",

30150 'defined-type': "list",

30151 'generated-type': """YANGDynClass(base=YANGListType("id",yc_ns_instantiation_level_etsi_nfv_nsd__nsd_nsd_df_ns_instantiation_level, yang_name="ns-instantiation-level", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="ns-instantiation-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

30152 })

30153

30154 self.__ns_instantiation_level = t

30155 if hasattr(self, '_set'):

30156 self._set()

30157

30158 def _unset_ns_instantiation_level(self):

30159 self.__ns_instantiation_level = YANGDynClass(base=YANGListType("id",yc_ns_instantiation_level_etsi_nfv_nsd__nsd_nsd_df_ns_instantiation_level, yang_name="ns-instantiation-level", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="ns-instantiation-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

30160

30161

30162 def _get_default_instantiation_level(self):

30163 """

30164 Getter method for default_instantiation_level, mapped from YANG variable /nsd/nsd/df/default_instantiation_level (leafref)

30165

30166 YANG Description: Identifies the NS level which represents the default NS

30167 instantiation level for this DF. It shall be present if

30168 there are multiple 'nsIinstantiationLevel' entries.

30169 """

30170 return self.__default_instantiation_level

30171

30172 def _set_default_instantiation_level(self, v, load=False):

30173 """

30174 Setter method for default_instantiation_level, mapped from YANG variable /nsd/nsd/df/default_instantiation_level (leafref)

30175 If this variable is read-only (config: false) in the

30176 source YANG file, then _set_default_instantiation_level is considered as a private

30177 method. Backends looking to populate this variable should

30178 do so via calling thisObj._set_default_instantiation_level() directly.

30179

30180 YANG Description: Identifies the NS level which represents the default NS

30181 instantiation level for this DF. It shall be present if

30182 there are multiple 'nsIinstantiationLevel' entries.

30183 """

30184 if hasattr(v, "_utype"):

30185 v = v._utype(v)

30186 try:

30187 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="default-instantiation-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

30188 except (TypeError, ValueError):

30189 raise ValueError({

30190 'error-string': """default_instantiation_level must be of a type compatible with leafref""",

30191 'defined-type': "leafref",

30192 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="default-instantiation-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

30193 })

30194

30195 self.__default_instantiation_level = t

30196 if hasattr(self, '_set'):

30197 self._set()

30198

30199 def _unset_default_instantiation_level(self):

30200 self.__default_instantiation_level = YANGDynClass(base=str, is_leaf=True, yang_name="default-instantiation-level", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

30201

30202

30203 def _get_ns_profile(self):

30204 """

30205 Getter method for ns_profile, mapped from YANG variable /nsd/nsd/df/ns_profile (list)

30206

30207 YANG Description: Specifies a NS Profile supported by this NS DF.

30208 """

30209 return self.__ns_profile

30210

30211 def _set_ns_profile(self, v, load=False):

30212 """

30213 Setter method for ns_profile, mapped from YANG variable /nsd/nsd/df/ns_profile (list)

30214 If this variable is read-only (config: false) in the

30215 source YANG file, then _set_ns_profile is considered as a private

30216 method. Backends looking to populate this variable should

30217 do so via calling thisObj._set_ns_profile() directly.

30218

30219 YANG Description: Specifies a NS Profile supported by this NS DF.

30220 """

30221 if hasattr(v, "_utype"):

30222 v = v._utype(v)

30223 try:

30224 t = YANGDynClass(v,base=YANGListType("id",yc_ns_profile_etsi_nfv_nsd__nsd_nsd_df_ns_profile, yang_name="ns-profile", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="ns-profile", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

30225 except (TypeError, ValueError):

30226 raise ValueError({

30227 'error-string': """ns_profile must be of a type compatible with list""",

30228 'defined-type': "list",

30229 'generated-type': """YANGDynClass(base=YANGListType("id",yc_ns_profile_etsi_nfv_nsd__nsd_nsd_df_ns_profile, yang_name="ns-profile", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="ns-profile", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

30230 })

30231

30232 self.__ns_profile = t

30233 if hasattr(self, '_set'):

30234 self._set()

30235

30236 def _unset_ns_profile(self):

30237 self.__ns_profile = YANGDynClass(base=YANGListType("id",yc_ns_profile_etsi_nfv_nsd__nsd_nsd_df_ns_profile, yang_name="ns-profile", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="ns-profile", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

30238

30239

30240 def _get_dependencies(self):

30241 """

30242 Getter method for dependencies, mapped from YANG variable /nsd/nsd/df/dependencies (list)

30243

30244 YANG Description: Specifies the order in which instances of the VNFs and/or

30245 nested NSs have to be created.

30246 """

30247 return self.__dependencies

30248

30249 def _set_dependencies(self, v, load=False):

30250 """

30251 Setter method for dependencies, mapped from YANG variable /nsd/nsd/df/dependencies (list)

30252 If this variable is read-only (config: false) in the

30253 source YANG file, then _set_dependencies is considered as a private

30254 method. Backends looking to populate this variable should

30255 do so via calling thisObj._set_dependencies() directly.

30256

30257 YANG Description: Specifies the order in which instances of the VNFs and/or

30258 nested NSs have to be created.

30259 """

30260 if hasattr(v, "_utype"):

30261 v = v._utype(v)

30262 try:

30263 t = YANGDynClass(v,base=YANGListType("id",yc_dependencies_etsi_nfv_nsd__nsd_nsd_df_dependencies, yang_name="dependencies", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="dependencies", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

30264 except (TypeError, ValueError):

30265 raise ValueError({

30266 'error-string': """dependencies must be of a type compatible with list""",

30267 'defined-type': "list",

30268 'generated-type': """YANGDynClass(base=YANGListType("id",yc_dependencies_etsi_nfv_nsd__nsd_nsd_df_dependencies, yang_name="dependencies", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="dependencies", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

30269 })

30270

30271 self.__dependencies = t

30272 if hasattr(self, '_set'):

30273 self._set()

30274

30275 def _unset_dependencies(self):

30276 self.__dependencies = YANGDynClass(base=YANGListType("id",yc_dependencies_etsi_nfv_nsd__nsd_nsd_df_dependencies, yang_name="dependencies", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="dependencies", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

30277

30278

30279 def _get_monitored_info(self):

30280 """

30281 Getter method for monitored_info, mapped from YANG variable /nsd/nsd/df/monitored_info (list)

30282 """

30283 return self.__monitored_info

30284

30285 def _set_monitored_info(self, v, load=False):

30286 """

30287 Setter method for monitored_info, mapped from YANG variable /nsd/nsd/df/monitored_info (list)

30288 If this variable is read-only (config: false) in the

30289 source YANG file, then _set_monitored_info is considered as a private

30290 method. Backends looking to populate this variable should

30291 do so via calling thisObj._set_monitored_info() directly.

30292 """

30293 if hasattr(v, "_utype"):

30294 v = v._utype(v)

30295 try:

30296 t = YANGDynClass(v,base=YANGListType("id",yc_monitored_info_etsi_nfv_nsd__nsd_nsd_df_monitored_info, yang_name="monitored-info", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="monitored-info", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

30297 except (TypeError, ValueError):

30298 raise ValueError({

30299 'error-string': """monitored_info must be of a type compatible with list""",

30300 'defined-type': "list",

30301 'generated-type': """YANGDynClass(base=YANGListType("id",yc_monitored_info_etsi_nfv_nsd__nsd_nsd_df_monitored_info, yang_name="monitored-info", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="monitored-info", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

30302 })

30303

30304 self.__monitored_info = t

30305 if hasattr(self, '_set'):

30306 self._set()

30307

30308 def _unset_monitored_info(self):

30309 self.__monitored_info = YANGDynClass(base=YANGListType("id",yc_monitored_info_etsi_nfv_nsd__nsd_nsd_df_monitored_info, yang_name="monitored-info", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="monitored-info", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

30310

30311 id = __builtin__.property(_get_id, _set_id)

30312 flavour_key = __builtin__.property(_get_flavour_key, _set_flavour_key)

30313 vnf_profile = __builtin__.property(_get_vnf_profile, _set_vnf_profile)

30314 pnf_profile = __builtin__.property(_get_pnf_profile, _set_pnf_profile)

30315 virtual_link_profile = __builtin__.property(_get_virtual_link_profile, _set_virtual_link_profile)

30316 scaling_aspect = __builtin__.property(_get_scaling_aspect, _set_scaling_aspect)

30317 affinity_or_anti_affinity_group = __builtin__.property(_get_affinity_or_anti_affinity_group, _set_affinity_or_anti_affinity_group)

30318 ns_instantiation_level = __builtin__.property(_get_ns_instantiation_level, _set_ns_instantiation_level)

30319 default_instantiation_level = __builtin__.property(_get_default_instantiation_level, _set_default_instantiation_level)

30320 ns_profile = __builtin__.property(_get_ns_profile, _set_ns_profile)

30321 dependencies = __builtin__.property(_get_dependencies, _set_dependencies)

30322 monitored_info = __builtin__.property(_get_monitored_info, _set_monitored_info)

30323

30324

30325 _pyangbind_elements = OrderedDict([('id', id), ('flavour_key', flavour_key), ('vnf_profile', vnf_profile), ('pnf_profile', pnf_profile), ('virtual_link_profile', virtual_link_profile), ('scaling_aspect', scaling_aspect), ('affinity_or_anti_affinity_group', affinity_or_anti_affinity_group), ('ns_instantiation_level', ns_instantiation_level), ('default_instantiation_level', default_instantiation_level), ('ns_profile', ns_profile), ('dependencies', dependencies), ('monitored_info', monitored_info), ])

30326

30327

30328 class yc_script_etsi_nfv_nsd__nsd_nsd_ns_configuration_script(PybindBase):

30329 """

30330 This class was auto-generated by the PythonClass plugin for PYANG

30331 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/ns-configuration/script. Each member element of

30332 the container is represented as a class variable - with a specific

30333 YANG type.

30334 """

30335 __slots__ = ('_path_helper', '_extmethods', '__script_type',)

30336

30337 _yang_name = 'script'

30338 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

30339

30340 _pybind_generated_by = 'container'

30341

30342 def __init__(self, *args, **kwargs):

30343

30344 self._path_helper = False

30345

30346 self._extmethods = False

30347 self.__script_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'rift': {}},), is_leaf=True, yang_name="script-type", parent=self, choice=('config-method', 'script'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='enumeration', is_config=True)

30348

30349 load = kwargs.pop("load", None)

30350 if args:

30351 if len(args) > 1:

30352 raise TypeError("cannot create a YANG container with >1 argument")

30353 all_attr = True

30354 for e in self._pyangbind_elements:

30355 if not hasattr(args[0], e):

30356 all_attr = False

30357 break

30358 if not all_attr:

30359 raise ValueError("Supplied object did not have the correct attributes")

30360 for e in self._pyangbind_elements:

30361 nobj = getattr(args[0], e)

30362 if nobj._changed() is False:

30363 continue

30364 setmethod = getattr(self, "_set_%s" % e)

30365 if load is None:

30366 setmethod(getattr(args[0], e))

30367 else:

30368 setmethod(getattr(args[0], e), load=load)

30369

30370 def _path(self):

30371 if hasattr(self, "_parent"):

30372 return self._parent._path()+[self._yang_name]

30373 else:

30374 return ['nsd', 'nsd', 'ns-configuration', 'script']

30375

30376 def _get_script_type(self):

30377 """

30378 Getter method for script_type, mapped from YANG variable /nsd/nsd/ns_configuration/script/script_type (enumeration)

30379

30380 YANG Description: Script type - currently supported - Scripts confirming to Rift CA plugin

30381 """

30382 return self.__script_type

30383

30384 def _set_script_type(self, v, load=False):

30385 """

30386 Setter method for script_type, mapped from YANG variable /nsd/nsd/ns_configuration/script/script_type (enumeration)

30387 If this variable is read-only (config: false) in the

30388 source YANG file, then _set_script_type is considered as a private

30389 method. Backends looking to populate this variable should

30390 do so via calling thisObj._set_script_type() directly.

30391

30392 YANG Description: Script type - currently supported - Scripts confirming to Rift CA plugin

30393 """

30394 if hasattr(v, "_utype"):

30395 v = v._utype(v)

30396 try:

30397 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'rift': {}},), is_leaf=True, yang_name="script-type", parent=self, choice=('config-method', 'script'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='enumeration', is_config=True)

30398 except (TypeError, ValueError):

30399 raise ValueError({

30400 'error-string': """script_type must be of a type compatible with enumeration""",

30401 'defined-type': "ns-configuration:enumeration",

30402 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'rift': {}},), is_leaf=True, yang_name="script-type", parent=self, choice=('config-method', 'script'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='enumeration', is_config=True)""",

30403 })

30404

30405 self.__script_type = t

30406 if hasattr(self, '_set'):

30407 self._set()

30408

30409 def _unset_script_type(self):

30410 self.__script_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'rift': {}},), is_leaf=True, yang_name="script-type", parent=self, choice=('config-method', 'script'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='enumeration', is_config=True)

30411

30412 script_type = __builtin__.property(_get_script_type, _set_script_type)

30413

30414 __choices__ = {'config-method': {'script': ['script_type']}}

30415 _pyangbind_elements = OrderedDict([('script_type', script_type), ])

30416

30417

30418 class yc_juju_etsi_nfv_nsd__nsd_nsd_ns_configuration_juju(PybindBase):

30419 """

30420 This class was auto-generated by the PythonClass plugin for PYANG

30421 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/ns-configuration/juju. Each member element of

30422 the container is represented as a class variable - with a specific

30423 YANG type.

30424 """

30425 __slots__ = ('_path_helper', '_extmethods', '__charm','__proxy','__cloud',)

30426

30427 _yang_name = 'juju'

30428 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

30429

30430 _pybind_generated_by = 'container'

30431

30432 def __init__(self, *args, **kwargs):

30433

30434 self._path_helper = False

30435

30436 self._extmethods = False

30437 self.__charm = YANGDynClass(base=str, is_leaf=True, yang_name="charm", parent=self, choice=('config-method', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

30438 self.__proxy = YANGDynClass(base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="proxy", parent=self, choice=('config-method', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='boolean', is_config=True)

30439 self.__cloud = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'lxd': {}, 'k8s': {}},), default=str("lxd"), is_leaf=True, yang_name="cloud", parent=self, choice=('config-method', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='enumeration', is_config=True)

30440

30441 load = kwargs.pop("load", None)

30442 if args:

30443 if len(args) > 1:

30444 raise TypeError("cannot create a YANG container with >1 argument")

30445 all_attr = True

30446 for e in self._pyangbind_elements:

30447 if not hasattr(args[0], e):

30448 all_attr = False

30449 break

30450 if not all_attr:

30451 raise ValueError("Supplied object did not have the correct attributes")

30452 for e in self._pyangbind_elements:

30453 nobj = getattr(args[0], e)

30454 if nobj._changed() is False:

30455 continue

30456 setmethod = getattr(self, "_set_%s" % e)

30457 if load is None:

30458 setmethod(getattr(args[0], e))

30459 else:

30460 setmethod(getattr(args[0], e), load=load)

30461

30462 def _path(self):

30463 if hasattr(self, "_parent"):

30464 return self._parent._path()+[self._yang_name]

30465 else:

30466 return ['nsd', 'nsd', 'ns-configuration', 'juju']

30467

30468 def _get_charm(self):

30469 """

30470 Getter method for charm, mapped from YANG variable /nsd/nsd/ns_configuration/juju/charm (string)

30471

30472 YANG Description: Juju charm to use with the VNF or VDU.

30473 """

30474 return self.__charm

30475

30476 def _set_charm(self, v, load=False):

30477 """

30478 Setter method for charm, mapped from YANG variable /nsd/nsd/ns_configuration/juju/charm (string)

30479 If this variable is read-only (config: false) in the

30480 source YANG file, then _set_charm is considered as a private

30481 method. Backends looking to populate this variable should

30482 do so via calling thisObj._set_charm() directly.

30483

30484 YANG Description: Juju charm to use with the VNF or VDU.

30485 """

30486 if hasattr(v, "_utype"):

30487 v = v._utype(v)

30488 try:

30489 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="charm", parent=self, choice=('config-method', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

30490 except (TypeError, ValueError):

30491 raise ValueError({

30492 'error-string': """charm must be of a type compatible with string""",

30493 'defined-type': "string",

30494 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="charm", parent=self, choice=('config-method', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

30495 })

30496

30497 self.__charm = t

30498 if hasattr(self, '_set'):

30499 self._set()

30500

30501 def _unset_charm(self):

30502 self.__charm = YANGDynClass(base=str, is_leaf=True, yang_name="charm", parent=self, choice=('config-method', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

30503

30504

30505 def _get_proxy(self):

30506 """

30507 Getter method for proxy, mapped from YANG variable /nsd/nsd/ns_configuration/juju/proxy (boolean)

30508

30509 YANG Description: Is this a proxy charm?

30510 """

30511 return self.__proxy

30512

30513 def _set_proxy(self, v, load=False):

30514 """

30515 Setter method for proxy, mapped from YANG variable /nsd/nsd/ns_configuration/juju/proxy (boolean)

30516 If this variable is read-only (config: false) in the

30517 source YANG file, then _set_proxy is considered as a private

30518 method. Backends looking to populate this variable should

30519 do so via calling thisObj._set_proxy() directly.

30520

30521 YANG Description: Is this a proxy charm?

30522 """

30523 if hasattr(v, "_utype"):

30524 v = v._utype(v)

30525 try:

30526 t = YANGDynClass(v,base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="proxy", parent=self, choice=('config-method', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='boolean', is_config=True)

30527 except (TypeError, ValueError):

30528 raise ValueError({

30529 'error-string': """proxy must be of a type compatible with boolean""",

30530 'defined-type': "boolean",

30531 'generated-type': """YANGDynClass(base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="proxy", parent=self, choice=('config-method', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='boolean', is_config=True)""",

30532 })

30533

30534 self.__proxy = t

30535 if hasattr(self, '_set'):

30536 self._set()

30537

30538 def _unset_proxy(self):

30539 self.__proxy = YANGDynClass(base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="proxy", parent=self, choice=('config-method', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='boolean', is_config=True)

30540

30541

30542 def _get_cloud(self):

30543 """

30544 Getter method for cloud, mapped from YANG variable /nsd/nsd/ns_configuration/juju/cloud (enumeration)

30545

30546 YANG Description: Type of cloud where the charm will be deployed. It only

30547 applies to proxy charms (not native)

30548 """

30549 return self.__cloud

30550

30551 def _set_cloud(self, v, load=False):

30552 """

30553 Setter method for cloud, mapped from YANG variable /nsd/nsd/ns_configuration/juju/cloud (enumeration)

30554 If this variable is read-only (config: false) in the

30555 source YANG file, then _set_cloud is considered as a private

30556 method. Backends looking to populate this variable should

30557 do so via calling thisObj._set_cloud() directly.

30558

30559 YANG Description: Type of cloud where the charm will be deployed. It only

30560 applies to proxy charms (not native)

30561 """

30562 if hasattr(v, "_utype"):

30563 v = v._utype(v)

30564 try:

30565 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'lxd': {}, 'k8s': {}},), default=str("lxd"), is_leaf=True, yang_name="cloud", parent=self, choice=('config-method', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='enumeration', is_config=True)

30566 except (TypeError, ValueError):

30567 raise ValueError({

30568 'error-string': """cloud must be of a type compatible with enumeration""",

30569 'defined-type': "ns-configuration:enumeration",

30570 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'lxd': {}, 'k8s': {}},), default=str("lxd"), is_leaf=True, yang_name="cloud", parent=self, choice=('config-method', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='enumeration', is_config=True)""",

30571 })

30572

30573 self.__cloud = t

30574 if hasattr(self, '_set'):

30575 self._set()

30576

30577 def _unset_cloud(self):

30578 self.__cloud = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'lxd': {}, 'k8s': {}},), default=str("lxd"), is_leaf=True, yang_name="cloud", parent=self, choice=('config-method', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='enumeration', is_config=True)

30579

30580 charm = __builtin__.property(_get_charm, _set_charm)

30581 proxy = __builtin__.property(_get_proxy, _set_proxy)

30582 cloud = __builtin__.property(_get_cloud, _set_cloud)

30583

30584 __choices__ = {'config-method': {'juju': ['charm', 'proxy', 'cloud']}}

30585 _pyangbind_elements = OrderedDict([('charm', charm), ('proxy', proxy), ('cloud', cloud), ])

30586

30587

30588 class yc_juju_etsi_nfv_nsd__nsd_nsd_ns_configuration_execution_environment_list_juju(PybindBase):

30589 """

30590 This class was auto-generated by the PythonClass plugin for PYANG

30591 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/ns-configuration/execution-environment-list/juju. Each member element of

30592 the container is represented as a class variable - with a specific

30593 YANG type.

30594 """

30595 __slots__ = ('_path_helper', '_extmethods', '__charm','__proxy','__cloud',)

30596

30597 _yang_name = 'juju'

30598 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

30599

30600 _pybind_generated_by = 'container'

30601

30602 def __init__(self, *args, **kwargs):

30603

30604 self._path_helper = False

30605

30606 self._extmethods = False

30607 self.__charm = YANGDynClass(base=str, is_leaf=True, yang_name="charm", parent=self, choice=('execution-environment-model', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

30608 self.__proxy = YANGDynClass(base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="proxy", parent=self, choice=('execution-environment-model', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='boolean', is_config=True)

30609 self.__cloud = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'lxd': {}, 'k8s': {}},), default=str("lxd"), is_leaf=True, yang_name="cloud", parent=self, choice=('execution-environment-model', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='enumeration', is_config=True)

30610

30611 load = kwargs.pop("load", None)

30612 if args:

30613 if len(args) > 1:

30614 raise TypeError("cannot create a YANG container with >1 argument")

30615 all_attr = True

30616 for e in self._pyangbind_elements:

30617 if not hasattr(args[0], e):

30618 all_attr = False

30619 break

30620 if not all_attr:

30621 raise ValueError("Supplied object did not have the correct attributes")

30622 for e in self._pyangbind_elements:

30623 nobj = getattr(args[0], e)

30624 if nobj._changed() is False:

30625 continue

30626 setmethod = getattr(self, "_set_%s" % e)

30627 if load is None:

30628 setmethod(getattr(args[0], e))

30629 else:

30630 setmethod(getattr(args[0], e), load=load)

30631

30632 def _path(self):

30633 if hasattr(self, "_parent"):

30634 return self._parent._path()+[self._yang_name]

30635 else:

30636 return ['nsd', 'nsd', 'ns-configuration', 'execution-environment-list', 'juju']

30637

30638 def _get_charm(self):

30639 """

30640 Getter method for charm, mapped from YANG variable /nsd/nsd/ns_configuration/execution_environment_list/juju/charm (string)

30641

30642 YANG Description: Juju charm to use with the VNF or VDU.

30643 """

30644 return self.__charm

30645

30646 def _set_charm(self, v, load=False):

30647 """

30648 Setter method for charm, mapped from YANG variable /nsd/nsd/ns_configuration/execution_environment_list/juju/charm (string)

30649 If this variable is read-only (config: false) in the

30650 source YANG file, then _set_charm is considered as a private

30651 method. Backends looking to populate this variable should

30652 do so via calling thisObj._set_charm() directly.

30653

30654 YANG Description: Juju charm to use with the VNF or VDU.

30655 """

30656 if hasattr(v, "_utype"):

30657 v = v._utype(v)

30658 try:

30659 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="charm", parent=self, choice=('execution-environment-model', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

30660 except (TypeError, ValueError):

30661 raise ValueError({

30662 'error-string': """charm must be of a type compatible with string""",

30663 'defined-type': "string",

30664 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="charm", parent=self, choice=('execution-environment-model', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

30665 })

30666

30667 self.__charm = t

30668 if hasattr(self, '_set'):

30669 self._set()

30670

30671 def _unset_charm(self):

30672 self.__charm = YANGDynClass(base=str, is_leaf=True, yang_name="charm", parent=self, choice=('execution-environment-model', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

30673

30674

30675 def _get_proxy(self):

30676 """

30677 Getter method for proxy, mapped from YANG variable /nsd/nsd/ns_configuration/execution_environment_list/juju/proxy (boolean)

30678

30679 YANG Description: Is this a proxy charm?

30680 """

30681 return self.__proxy

30682

30683 def _set_proxy(self, v, load=False):

30684 """

30685 Setter method for proxy, mapped from YANG variable /nsd/nsd/ns_configuration/execution_environment_list/juju/proxy (boolean)

30686 If this variable is read-only (config: false) in the

30687 source YANG file, then _set_proxy is considered as a private

30688 method. Backends looking to populate this variable should

30689 do so via calling thisObj._set_proxy() directly.

30690

30691 YANG Description: Is this a proxy charm?

30692 """

30693 if hasattr(v, "_utype"):

30694 v = v._utype(v)

30695 try:

30696 t = YANGDynClass(v,base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="proxy", parent=self, choice=('execution-environment-model', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='boolean', is_config=True)

30697 except (TypeError, ValueError):

30698 raise ValueError({

30699 'error-string': """proxy must be of a type compatible with boolean""",

30700 'defined-type': "boolean",

30701 'generated-type': """YANGDynClass(base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="proxy", parent=self, choice=('execution-environment-model', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='boolean', is_config=True)""",

30702 })

30703

30704 self.__proxy = t

30705 if hasattr(self, '_set'):

30706 self._set()

30707

30708 def _unset_proxy(self):

30709 self.__proxy = YANGDynClass(base=YANGBool, default=YANGBool("true"), is_leaf=True, yang_name="proxy", parent=self, choice=('execution-environment-model', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='boolean', is_config=True)

30710

30711

30712 def _get_cloud(self):

30713 """

30714 Getter method for cloud, mapped from YANG variable /nsd/nsd/ns_configuration/execution_environment_list/juju/cloud (enumeration)

30715

30716 YANG Description: Type of cloud where the charm will be deployed. It only

30717 applies to proxy charms (not native)

30718 """

30719 return self.__cloud

30720

30721 def _set_cloud(self, v, load=False):

30722 """

30723 Setter method for cloud, mapped from YANG variable /nsd/nsd/ns_configuration/execution_environment_list/juju/cloud (enumeration)

30724 If this variable is read-only (config: false) in the

30725 source YANG file, then _set_cloud is considered as a private

30726 method. Backends looking to populate this variable should

30727 do so via calling thisObj._set_cloud() directly.

30728

30729 YANG Description: Type of cloud where the charm will be deployed. It only

30730 applies to proxy charms (not native)

30731 """

30732 if hasattr(v, "_utype"):

30733 v = v._utype(v)

30734 try:

30735 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'lxd': {}, 'k8s': {}},), default=str("lxd"), is_leaf=True, yang_name="cloud", parent=self, choice=('execution-environment-model', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='enumeration', is_config=True)

30736 except (TypeError, ValueError):

30737 raise ValueError({

30738 'error-string': """cloud must be of a type compatible with enumeration""",

30739 'defined-type': "ns-configuration:enumeration",

30740 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'lxd': {}, 'k8s': {}},), default=str("lxd"), is_leaf=True, yang_name="cloud", parent=self, choice=('execution-environment-model', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='enumeration', is_config=True)""",

30741 })

30742

30743 self.__cloud = t

30744 if hasattr(self, '_set'):

30745 self._set()

30746

30747 def _unset_cloud(self):

30748 self.__cloud = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'lxd': {}, 'k8s': {}},), default=str("lxd"), is_leaf=True, yang_name="cloud", parent=self, choice=('execution-environment-model', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='enumeration', is_config=True)

30749

30750 charm = __builtin__.property(_get_charm, _set_charm)

30751 proxy = __builtin__.property(_get_proxy, _set_proxy)

30752 cloud = __builtin__.property(_get_cloud, _set_cloud)

30753

30754 __choices__ = {'execution-environment-model': {'juju': ['charm', 'proxy', 'cloud']}}

30755 _pyangbind_elements = OrderedDict([('charm', charm), ('proxy', proxy), ('cloud', cloud), ])

30756

30757

30758 class yc_execution_environment_list_etsi_nfv_nsd__nsd_nsd_ns_configuration_execution_environment_list(PybindBase):

30759 """

30760 This class was auto-generated by the PythonClass plugin for PYANG

30761 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/ns-configuration/execution-environment-list. Each member element of

30762 the container is represented as a class variable - with a specific

30763 YANG type.

30764 """

30765 __slots__ = ('_path_helper', '_extmethods', '__id','__juju','__helm_chart','__helm_version','__metric_service','__external_connection_point_ref',)

30766

30767 _yang_name = 'execution-environment-list'

30768 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

30769

30770 _pybind_generated_by = 'container'

30771

30772 def __init__(self, *args, **kwargs):

30773

30774 self._path_helper = False

30775

30776 self._extmethods = False

30777 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, choice=('config-method', 'execution-environment-list'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

30778 self.__juju = YANGDynClass(base=yc_juju_etsi_nfv_nsd__nsd_nsd_ns_configuration_execution_environment_list_juju, is_container='container', yang_name="juju", parent=self, choice=('execution-environment-model', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='container', is_config=True)

30779 self.__helm_chart = YANGDynClass(base=str, is_leaf=True, yang_name="helm-chart", parent=self, choice=('execution-environment-model', 'helm-chart'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

30780 self.__helm_version = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'v3': {}},), default=str("v3"), is_leaf=True, yang_name="helm-version", parent=self, choice=('execution-environment-model', 'helm-chart'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='enumeration', is_config=True)

30781 self.__metric_service = YANGDynClass(base=str, is_leaf=True, yang_name="metric-service", parent=self, choice=('config-method', 'execution-environment-list'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

30782 self.__external_connection_point_ref = YANGDynClass(base=str, is_leaf=True, yang_name="external-connection-point-ref", parent=self, choice=('config-method', 'execution-environment-list'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

30783

30784 load = kwargs.pop("load", None)

30785 if args:

30786 if len(args) > 1:

30787 raise TypeError("cannot create a YANG container with >1 argument")

30788 all_attr = True

30789 for e in self._pyangbind_elements:

30790 if not hasattr(args[0], e):

30791 all_attr = False

30792 break

30793 if not all_attr:

30794 raise ValueError("Supplied object did not have the correct attributes")

30795 for e in self._pyangbind_elements:

30796 nobj = getattr(args[0], e)

30797 if nobj._changed() is False:

30798 continue

30799 setmethod = getattr(self, "_set_%s" % e)

30800 if load is None:

30801 setmethod(getattr(args[0], e))

30802 else:

30803 setmethod(getattr(args[0], e), load=load)

30804

30805 def _path(self):

30806 if hasattr(self, "_parent"):

30807 return self._parent._path()+[self._yang_name]

30808 else:

30809 return ['nsd', 'nsd', 'ns-configuration', 'execution-environment-list']

30810

30811 def _get_id(self):

30812 """

30813 Getter method for id, mapped from YANG variable /nsd/nsd/ns_configuration/execution_environment_list/id (string)

30814

30815 YANG Description: Execution environment identifier.

30816 """

30817 return self.__id

30818

30819 def _set_id(self, v, load=False):

30820 """

30821 Setter method for id, mapped from YANG variable /nsd/nsd/ns_configuration/execution_environment_list/id (string)

30822 If this variable is read-only (config: false) in the

30823 source YANG file, then _set_id is considered as a private

30824 method. Backends looking to populate this variable should

30825 do so via calling thisObj._set_id() directly.

30826

30827 YANG Description: Execution environment identifier.

30828 """

30829 parent = getattr(self, "_parent", None)

30830 if parent is not None and load is False:

30831 raise AttributeError("Cannot set keys directly when" +

30832 " within an instantiated list")

30833

30834 if hasattr(v, "_utype"):

30835 v = v._utype(v)

30836 try:

30837 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, choice=('config-method', 'execution-environment-list'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

30838 except (TypeError, ValueError):

30839 raise ValueError({

30840 'error-string': """id must be of a type compatible with string""",

30841 'defined-type': "string",

30842 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, choice=('config-method', 'execution-environment-list'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

30843 })

30844

30845 self.__id = t

30846 if hasattr(self, '_set'):

30847 self._set()

30848

30849 def _unset_id(self):

30850 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, choice=('config-method', 'execution-environment-list'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

30851

30852

30853 def _get_juju(self):

30854 """

30855 Getter method for juju, mapped from YANG variable /nsd/nsd/ns_configuration/execution_environment_list/juju (container)

30856 """

30857 return self.__juju

30858

30859 def _set_juju(self, v, load=False):

30860 """

30861 Setter method for juju, mapped from YANG variable /nsd/nsd/ns_configuration/execution_environment_list/juju (container)

30862 If this variable is read-only (config: false) in the

30863 source YANG file, then _set_juju is considered as a private

30864 method. Backends looking to populate this variable should

30865 do so via calling thisObj._set_juju() directly.

30866 """

30867 if hasattr(v, "_utype"):

30868 v = v._utype(v)

30869 try:

30870 t = YANGDynClass(v,base=yc_juju_etsi_nfv_nsd__nsd_nsd_ns_configuration_execution_environment_list_juju, is_container='container', yang_name="juju", parent=self, choice=('execution-environment-model', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='container', is_config=True)

30871 except (TypeError, ValueError):

30872 raise ValueError({

30873 'error-string': """juju must be of a type compatible with container""",

30874 'defined-type': "container",

30875 'generated-type': """YANGDynClass(base=yc_juju_etsi_nfv_nsd__nsd_nsd_ns_configuration_execution_environment_list_juju, is_container='container', yang_name="juju", parent=self, choice=('execution-environment-model', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='container', is_config=True)""",

30876 })

30877

30878 self.__juju = t

30879 if hasattr(self, '_set'):

30880 self._set()

30881

30882 def _unset_juju(self):

30883 self.__juju = YANGDynClass(base=yc_juju_etsi_nfv_nsd__nsd_nsd_ns_configuration_execution_environment_list_juju, is_container='container', yang_name="juju", parent=self, choice=('execution-environment-model', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='container', is_config=True)

30884

30885

30886 def _get_helm_chart(self):

30887 """

30888 Getter method for helm_chart, mapped from YANG variable /nsd/nsd/ns_configuration/execution_environment_list/helm_chart (string)

30889

30890 YANG Description: Helm chart that models the execution environment, in any of the following ways:

30891- <helm-repo>/<helm-chart>

30892- <helm-chart folder name under helm-charts folder in the package>

30893- <helm-chart tgz file (w/ or w/o extension) under helm-charts folder in the package>

30894- <URL_where_to_fetch_chart>

30895

30896 """

30897 return self.__helm_chart

30898

30899 def _set_helm_chart(self, v, load=False):

30900 """

30901 Setter method for helm_chart, mapped from YANG variable /nsd/nsd/ns_configuration/execution_environment_list/helm_chart (string)

30902 If this variable is read-only (config: false) in the

30903 source YANG file, then _set_helm_chart is considered as a private

30904 method. Backends looking to populate this variable should

30905 do so via calling thisObj._set_helm_chart() directly.

30906

30907 YANG Description: Helm chart that models the execution environment, in any of the following ways:

30908- <helm-repo>/<helm-chart>

30909- <helm-chart folder name under helm-charts folder in the package>

30910- <helm-chart tgz file (w/ or w/o extension) under helm-charts folder in the package>

30911- <URL_where_to_fetch_chart>

30912

30913 """

30914 if hasattr(v, "_utype"):

30915 v = v._utype(v)

30916 try:

30917 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="helm-chart", parent=self, choice=('execution-environment-model', 'helm-chart'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

30918 except (TypeError, ValueError):

30919 raise ValueError({

30920 'error-string': """helm_chart must be of a type compatible with string""",

30921 'defined-type': "string",

30922 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="helm-chart", parent=self, choice=('execution-environment-model', 'helm-chart'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

30923 })

30924

30925 self.__helm_chart = t

30926 if hasattr(self, '_set'):

30927 self._set()

30928

30929 def _unset_helm_chart(self):

30930 self.__helm_chart = YANGDynClass(base=str, is_leaf=True, yang_name="helm-chart", parent=self, choice=('execution-environment-model', 'helm-chart'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

30931

30932

30933 def _get_helm_version(self):

30934 """

30935 Getter method for helm_version, mapped from YANG variable /nsd/nsd/ns_configuration/execution_environment_list/helm_version (enumeration)

30936

30937 YANG Description: Helm version to use for this helm-chart, v3 by default

30938 """

30939 return self.__helm_version

30940

30941 def _set_helm_version(self, v, load=False):

30942 """

30943 Setter method for helm_version, mapped from YANG variable /nsd/nsd/ns_configuration/execution_environment_list/helm_version (enumeration)

30944 If this variable is read-only (config: false) in the

30945 source YANG file, then _set_helm_version is considered as a private

30946 method. Backends looking to populate this variable should

30947 do so via calling thisObj._set_helm_version() directly.

30948

30949 YANG Description: Helm version to use for this helm-chart, v3 by default

30950 """

30951 if hasattr(v, "_utype"):

30952 v = v._utype(v)

30953 try:

30954 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'v3': {}},), default=str("v3"), is_leaf=True, yang_name="helm-version", parent=self, choice=('execution-environment-model', 'helm-chart'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='enumeration', is_config=True)

30955 except (TypeError, ValueError):

30956 raise ValueError({

30957 'error-string': """helm_version must be of a type compatible with enumeration""",

30958 'defined-type': "ns-configuration:enumeration",

30959 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'v3': {}},), default=str("v3"), is_leaf=True, yang_name="helm-version", parent=self, choice=('execution-environment-model', 'helm-chart'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='enumeration', is_config=True)""",

30960 })

30961

30962 self.__helm_version = t

30963 if hasattr(self, '_set'):

30964 self._set()

30965

30966 def _unset_helm_version(self):

30967 self.__helm_version = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'v3': {}},), default=str("v3"), is_leaf=True, yang_name="helm-version", parent=self, choice=('execution-environment-model', 'helm-chart'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='enumeration', is_config=True)

30968

30969

30970 def _get_metric_service(self):

30971 """

30972 Getter method for metric_service, mapped from YANG variable /nsd/nsd/ns_configuration/execution_environment_list/metric_service (string)

30973

30974 YANG Description: Service name in the execution environment. For helm charts, it will be

30975 the name of the kubernetes service used by the exporter to expose metrics

30976 to the OSM collector.

30977

30978 """

30979 return self.__metric_service

30980

30981 def _set_metric_service(self, v, load=False):

30982 """

30983 Setter method for metric_service, mapped from YANG variable /nsd/nsd/ns_configuration/execution_environment_list/metric_service (string)

30984 If this variable is read-only (config: false) in the

30985 source YANG file, then _set_metric_service is considered as a private

30986 method. Backends looking to populate this variable should

30987 do so via calling thisObj._set_metric_service() directly.

30988

30989 YANG Description: Service name in the execution environment. For helm charts, it will be

30990 the name of the kubernetes service used by the exporter to expose metrics

30991 to the OSM collector.

30992

30993 """

30994 if hasattr(v, "_utype"):

30995 v = v._utype(v)

30996 try:

30997 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="metric-service", parent=self, choice=('config-method', 'execution-environment-list'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

30998 except (TypeError, ValueError):

30999 raise ValueError({

31000 'error-string': """metric_service must be of a type compatible with string""",

31001 'defined-type': "string",

31002 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="metric-service", parent=self, choice=('config-method', 'execution-environment-list'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

31003 })

31004

31005 self.__metric_service = t

31006 if hasattr(self, '_set'):

31007 self._set()

31008

31009 def _unset_metric_service(self):

31010 self.__metric_service = YANGDynClass(base=str, is_leaf=True, yang_name="metric-service", parent=self, choice=('config-method', 'execution-environment-list'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31011

31012

31013 def _get_external_connection_point_ref(self):

31014 """

31015 Getter method for external_connection_point_ref, mapped from YANG variable /nsd/nsd/ns_configuration/execution_environment_list/external_connection_point_ref (string)

31016

31017 YANG Description: String representing a leaf reference to the particular external connection point

31018 This field should match /vnfd:vnfd-catalog/vnfd:vnfd/vnfd:id/vnfd:connection-point/vnfd:name

31019

31020 """

31021 return self.__external_connection_point_ref

31022

31023 def _set_external_connection_point_ref(self, v, load=False):

31024 """

31025 Setter method for external_connection_point_ref, mapped from YANG variable /nsd/nsd/ns_configuration/execution_environment_list/external_connection_point_ref (string)

31026 If this variable is read-only (config: false) in the

31027 source YANG file, then _set_external_connection_point_ref is considered as a private

31028 method. Backends looking to populate this variable should

31029 do so via calling thisObj._set_external_connection_point_ref() directly.

31030

31031 YANG Description: String representing a leaf reference to the particular external connection point

31032 This field should match /vnfd:vnfd-catalog/vnfd:vnfd/vnfd:id/vnfd:connection-point/vnfd:name

31033

31034 """

31035 if hasattr(v, "_utype"):

31036 v = v._utype(v)

31037 try:

31038 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="external-connection-point-ref", parent=self, choice=('config-method', 'execution-environment-list'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31039 except (TypeError, ValueError):

31040 raise ValueError({

31041 'error-string': """external_connection_point_ref must be of a type compatible with string""",

31042 'defined-type': "string",

31043 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="external-connection-point-ref", parent=self, choice=('config-method', 'execution-environment-list'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

31044 })

31045

31046 self.__external_connection_point_ref = t

31047 if hasattr(self, '_set'):

31048 self._set()

31049

31050 def _unset_external_connection_point_ref(self):

31051 self.__external_connection_point_ref = YANGDynClass(base=str, is_leaf=True, yang_name="external-connection-point-ref", parent=self, choice=('config-method', 'execution-environment-list'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31052

31053 id = __builtin__.property(_get_id, _set_id)

31054 juju = __builtin__.property(_get_juju, _set_juju)

31055 helm_chart = __builtin__.property(_get_helm_chart, _set_helm_chart)

31056 helm_version = __builtin__.property(_get_helm_version, _set_helm_version)

31057 metric_service = __builtin__.property(_get_metric_service, _set_metric_service)

31058 external_connection_point_ref = __builtin__.property(_get_external_connection_point_ref, _set_external_connection_point_ref)

31059

31060 __choices__ = {'config-method': {'execution-environment-list': ['id', 'metric_service', 'external_connection_point_ref']}, 'execution-environment-model': {'juju': ['juju'], 'helm-chart': ['helm_chart', 'helm_version']}}

31061 _pyangbind_elements = OrderedDict([('id', id), ('juju', juju), ('helm_chart', helm_chart), ('helm_version', helm_version), ('metric_service', metric_service), ('external_connection_point_ref', external_connection_point_ref), ])

31062

31063

31064 class yc_parameter_etsi_nfv_nsd__nsd_nsd_ns_configuration_config_primitive_parameter(PybindBase):

31065 """

31066 This class was auto-generated by the PythonClass plugin for PYANG

31067 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/ns-configuration/config-primitive/parameter. Each member element of

31068 the container is represented as a class variable - with a specific

31069 YANG type.

31070

31071 YANG Description: List of parameters to the config primitive.

31072 """

31073 __slots__ = ('_path_helper', '_extmethods', '__name','__data_type','__mandatory','__default_value','__parameter_pool','__read_only','__hidden',)

31074

31075 _yang_name = 'parameter'

31076 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

31077

31078 _pybind_generated_by = 'container'

31079

31080 def __init__(self, *args, **kwargs):

31081

31082 self._path_helper = False

31083

31084 self._extmethods = False

31085 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31086 self.__data_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'STRING': {}, 'INTEGER': {}, 'BOOLEAN': {}},), is_leaf=True, yang_name="data-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='common:parameter-data-type', is_config=True)

31087 self.__mandatory = YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="mandatory", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='boolean', is_config=True)

31088 self.__default_value = YANGDynClass(base=str, is_leaf=True, yang_name="default-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31089 self.__parameter_pool = YANGDynClass(base=str, is_leaf=True, yang_name="parameter-pool", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31090 self.__read_only = YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="read-only", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='boolean', is_config=True)

31091 self.__hidden = YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="hidden", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='boolean', is_config=True)

31092

31093 load = kwargs.pop("load", None)

31094 if args:

31095 if len(args) > 1:

31096 raise TypeError("cannot create a YANG container with >1 argument")

31097 all_attr = True

31098 for e in self._pyangbind_elements:

31099 if not hasattr(args[0], e):

31100 all_attr = False

31101 break

31102 if not all_attr:

31103 raise ValueError("Supplied object did not have the correct attributes")

31104 for e in self._pyangbind_elements:

31105 nobj = getattr(args[0], e)

31106 if nobj._changed() is False:

31107 continue

31108 setmethod = getattr(self, "_set_%s" % e)

31109 if load is None:

31110 setmethod(getattr(args[0], e))

31111 else:

31112 setmethod(getattr(args[0], e), load=load)

31113

31114 def _path(self):

31115 if hasattr(self, "_parent"):

31116 return self._parent._path()+[self._yang_name]

31117 else:

31118 return ['nsd', 'nsd', 'ns-configuration', 'config-primitive', 'parameter']

31119

31120 def _get_name(self):

31121 """

31122 Getter method for name, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive/parameter/name (string)

31123

31124 YANG Description: Name of the parameter.

31125 """

31126 return self.__name

31127

31128 def _set_name(self, v, load=False):

31129 """

31130 Setter method for name, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive/parameter/name (string)

31131 If this variable is read-only (config: false) in the

31132 source YANG file, then _set_name is considered as a private

31133 method. Backends looking to populate this variable should

31134 do so via calling thisObj._set_name() directly.

31135

31136 YANG Description: Name of the parameter.

31137 """

31138 parent = getattr(self, "_parent", None)

31139 if parent is not None and load is False:

31140 raise AttributeError("Cannot set keys directly when" +

31141 " within an instantiated list")

31142

31143 if hasattr(v, "_utype"):

31144 v = v._utype(v)

31145 try:

31146 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31147 except (TypeError, ValueError):

31148 raise ValueError({

31149 'error-string': """name must be of a type compatible with string""",

31150 'defined-type': "string",

31151 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

31152 })

31153

31154 self.__name = t

31155 if hasattr(self, '_set'):

31156 self._set()

31157

31158 def _unset_name(self):

31159 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31160

31161

31162 def _get_data_type(self):

31163 """

31164 Getter method for data_type, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive/parameter/data_type (common:parameter-data-type)

31165

31166 YANG Description: Data type associated with the name.

31167 """

31168 return self.__data_type

31169

31170 def _set_data_type(self, v, load=False):

31171 """

31172 Setter method for data_type, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive/parameter/data_type (common:parameter-data-type)

31173 If this variable is read-only (config: false) in the

31174 source YANG file, then _set_data_type is considered as a private

31175 method. Backends looking to populate this variable should

31176 do so via calling thisObj._set_data_type() directly.

31177

31178 YANG Description: Data type associated with the name.

31179 """

31180 if hasattr(v, "_utype"):

31181 v = v._utype(v)

31182 try:

31183 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'STRING': {}, 'INTEGER': {}, 'BOOLEAN': {}},), is_leaf=True, yang_name="data-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='common:parameter-data-type', is_config=True)

31184 except (TypeError, ValueError):

31185 raise ValueError({

31186 'error-string': """data_type must be of a type compatible with common:parameter-data-type""",

31187 'defined-type': "common:parameter-data-type",

31188 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'STRING': {}, 'INTEGER': {}, 'BOOLEAN': {}},), is_leaf=True, yang_name="data-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='common:parameter-data-type', is_config=True)""",

31189 })

31190

31191 self.__data_type = t

31192 if hasattr(self, '_set'):

31193 self._set()

31194

31195 def _unset_data_type(self):

31196 self.__data_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'STRING': {}, 'INTEGER': {}, 'BOOLEAN': {}},), is_leaf=True, yang_name="data-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='common:parameter-data-type', is_config=True)

31197

31198

31199 def _get_mandatory(self):

31200 """

31201 Getter method for mandatory, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive/parameter/mandatory (boolean)

31202

31203 YANG Description: Is this field mandatory

31204 """

31205 return self.__mandatory

31206

31207 def _set_mandatory(self, v, load=False):

31208 """

31209 Setter method for mandatory, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive/parameter/mandatory (boolean)

31210 If this variable is read-only (config: false) in the

31211 source YANG file, then _set_mandatory is considered as a private

31212 method. Backends looking to populate this variable should

31213 do so via calling thisObj._set_mandatory() directly.

31214

31215 YANG Description: Is this field mandatory

31216 """

31217 if hasattr(v, "_utype"):

31218 v = v._utype(v)

31219 try:

31220 t = YANGDynClass(v,base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="mandatory", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='boolean', is_config=True)

31221 except (TypeError, ValueError):

31222 raise ValueError({

31223 'error-string': """mandatory must be of a type compatible with boolean""",

31224 'defined-type': "boolean",

31225 'generated-type': """YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="mandatory", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='boolean', is_config=True)""",

31226 })

31227

31228 self.__mandatory = t

31229 if hasattr(self, '_set'):

31230 self._set()

31231

31232 def _unset_mandatory(self):

31233 self.__mandatory = YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="mandatory", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='boolean', is_config=True)

31234

31235

31236 def _get_default_value(self):

31237 """

31238 Getter method for default_value, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive/parameter/default_value (string)

31239

31240 YANG Description: The default value for this field

31241 """

31242 return self.__default_value

31243

31244 def _set_default_value(self, v, load=False):

31245 """

31246 Setter method for default_value, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive/parameter/default_value (string)

31247 If this variable is read-only (config: false) in the

31248 source YANG file, then _set_default_value is considered as a private

31249 method. Backends looking to populate this variable should

31250 do so via calling thisObj._set_default_value() directly.

31251

31252 YANG Description: The default value for this field

31253 """

31254 if hasattr(v, "_utype"):

31255 v = v._utype(v)

31256 try:

31257 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="default-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31258 except (TypeError, ValueError):

31259 raise ValueError({

31260 'error-string': """default_value must be of a type compatible with string""",

31261 'defined-type': "string",

31262 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="default-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

31263 })

31264

31265 self.__default_value = t

31266 if hasattr(self, '_set'):

31267 self._set()

31268

31269 def _unset_default_value(self):

31270 self.__default_value = YANGDynClass(base=str, is_leaf=True, yang_name="default-value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31271

31272

31273 def _get_parameter_pool(self):

31274 """

31275 Getter method for parameter_pool, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive/parameter/parameter_pool (string)

31276

31277 YANG Description: NSD parameter pool name to use for this parameter

31278 """

31279 return self.__parameter_pool

31280

31281 def _set_parameter_pool(self, v, load=False):

31282 """

31283 Setter method for parameter_pool, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive/parameter/parameter_pool (string)

31284 If this variable is read-only (config: false) in the

31285 source YANG file, then _set_parameter_pool is considered as a private

31286 method. Backends looking to populate this variable should

31287 do so via calling thisObj._set_parameter_pool() directly.

31288

31289 YANG Description: NSD parameter pool name to use for this parameter

31290 """

31291 if hasattr(v, "_utype"):

31292 v = v._utype(v)

31293 try:

31294 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="parameter-pool", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31295 except (TypeError, ValueError):

31296 raise ValueError({

31297 'error-string': """parameter_pool must be of a type compatible with string""",

31298 'defined-type': "string",

31299 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="parameter-pool", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

31300 })

31301

31302 self.__parameter_pool = t

31303 if hasattr(self, '_set'):

31304 self._set()

31305

31306 def _unset_parameter_pool(self):

31307 self.__parameter_pool = YANGDynClass(base=str, is_leaf=True, yang_name="parameter-pool", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31308

31309

31310 def _get_read_only(self):

31311 """

31312 Getter method for read_only, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive/parameter/read_only (boolean)

31313

31314 YANG Description: The value should be dimmed by the UI.

31315 Only applies to parameters with default values.

31316 """

31317 return self.__read_only

31318

31319 def _set_read_only(self, v, load=False):

31320 """

31321 Setter method for read_only, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive/parameter/read_only (boolean)

31322 If this variable is read-only (config: false) in the

31323 source YANG file, then _set_read_only is considered as a private

31324 method. Backends looking to populate this variable should

31325 do so via calling thisObj._set_read_only() directly.

31326

31327 YANG Description: The value should be dimmed by the UI.

31328 Only applies to parameters with default values.

31329 """

31330 if hasattr(v, "_utype"):

31331 v = v._utype(v)

31332 try:

31333 t = YANGDynClass(v,base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="read-only", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='boolean', is_config=True)

31334 except (TypeError, ValueError):

31335 raise ValueError({

31336 'error-string': """read_only must be of a type compatible with boolean""",

31337 'defined-type': "boolean",

31338 'generated-type': """YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="read-only", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='boolean', is_config=True)""",

31339 })

31340

31341 self.__read_only = t

31342 if hasattr(self, '_set'):

31343 self._set()

31344

31345 def _unset_read_only(self):

31346 self.__read_only = YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="read-only", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='boolean', is_config=True)

31347

31348

31349 def _get_hidden(self):

31350 """

31351 Getter method for hidden, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive/parameter/hidden (boolean)

31352

31353 YANG Description: The value should be hidden by the UI.

31354 Only applies to parameters with default values.

31355 """

31356 return self.__hidden

31357

31358 def _set_hidden(self, v, load=False):

31359 """

31360 Setter method for hidden, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive/parameter/hidden (boolean)

31361 If this variable is read-only (config: false) in the

31362 source YANG file, then _set_hidden is considered as a private

31363 method. Backends looking to populate this variable should

31364 do so via calling thisObj._set_hidden() directly.

31365

31366 YANG Description: The value should be hidden by the UI.

31367 Only applies to parameters with default values.

31368 """

31369 if hasattr(v, "_utype"):

31370 v = v._utype(v)

31371 try:

31372 t = YANGDynClass(v,base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="hidden", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='boolean', is_config=True)

31373 except (TypeError, ValueError):

31374 raise ValueError({

31375 'error-string': """hidden must be of a type compatible with boolean""",

31376 'defined-type': "boolean",

31377 'generated-type': """YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="hidden", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='boolean', is_config=True)""",

31378 })

31379

31380 self.__hidden = t

31381 if hasattr(self, '_set'):

31382 self._set()

31383

31384 def _unset_hidden(self):

31385 self.__hidden = YANGDynClass(base=YANGBool, default=YANGBool("false"), is_leaf=True, yang_name="hidden", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='boolean', is_config=True)

31386

31387 name = __builtin__.property(_get_name, _set_name)

31388 data_type = __builtin__.property(_get_data_type, _set_data_type)

31389 mandatory = __builtin__.property(_get_mandatory, _set_mandatory)

31390 default_value = __builtin__.property(_get_default_value, _set_default_value)

31391 parameter_pool = __builtin__.property(_get_parameter_pool, _set_parameter_pool)

31392 read_only = __builtin__.property(_get_read_only, _set_read_only)

31393 hidden = __builtin__.property(_get_hidden, _set_hidden)

31394

31395

31396 _pyangbind_elements = OrderedDict([('name', name), ('data_type', data_type), ('mandatory', mandatory), ('default_value', default_value), ('parameter_pool', parameter_pool), ('read_only', read_only), ('hidden', hidden), ])

31397

31398

31399 class yc_config_primitive_etsi_nfv_nsd__nsd_nsd_ns_configuration_config_primitive(PybindBase):

31400 """

31401 This class was auto-generated by the PythonClass plugin for PYANG

31402 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/ns-configuration/config-primitive. Each member element of

31403 the container is represented as a class variable - with a specific

31404 YANG type.

31405

31406 YANG Description: List of config primitives supported by the

31407 configuration agent for this VNF or VDU.

31408 """

31409 __slots__ = ('_path_helper', '_extmethods', '__name','__execution_environment_ref','__execution_environment_primitive','__parameter','__user_defined_script',)

31410

31411 _yang_name = 'config-primitive'

31412 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

31413

31414 _pybind_generated_by = 'container'

31415

31416 def __init__(self, *args, **kwargs):

31417

31418 self._path_helper = False

31419

31420 self._extmethods = False

31421 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31422 self.__execution_environment_ref = YANGDynClass(base=str, is_leaf=True, yang_name="execution-environment-ref", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)

31423 self.__execution_environment_primitive = YANGDynClass(base=str, is_leaf=True, yang_name="execution-environment-primitive", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31424 self.__parameter = YANGDynClass(base=YANGListType("name",yc_parameter_etsi_nfv_nsd__nsd_nsd_ns_configuration_config_primitive_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

31425 self.__user_defined_script = YANGDynClass(base=str, is_leaf=True, yang_name="user-defined-script", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31426

31427 load = kwargs.pop("load", None)

31428 if args:

31429 if len(args) > 1:

31430 raise TypeError("cannot create a YANG container with >1 argument")

31431 all_attr = True

31432 for e in self._pyangbind_elements:

31433 if not hasattr(args[0], e):

31434 all_attr = False

31435 break

31436 if not all_attr:

31437 raise ValueError("Supplied object did not have the correct attributes")

31438 for e in self._pyangbind_elements:

31439 nobj = getattr(args[0], e)

31440 if nobj._changed() is False:

31441 continue

31442 setmethod = getattr(self, "_set_%s" % e)

31443 if load is None:

31444 setmethod(getattr(args[0], e))

31445 else:

31446 setmethod(getattr(args[0], e), load=load)

31447

31448 def _path(self):

31449 if hasattr(self, "_parent"):

31450 return self._parent._path()+[self._yang_name]

31451 else:

31452 return ['nsd', 'nsd', 'ns-configuration', 'config-primitive']

31453

31454 def _get_name(self):

31455 """

31456 Getter method for name, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive/name (string)

31457

31458 YANG Description: Name of the config primitive.

31459 """

31460 return self.__name

31461

31462 def _set_name(self, v, load=False):

31463 """

31464 Setter method for name, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive/name (string)

31465 If this variable is read-only (config: false) in the

31466 source YANG file, then _set_name is considered as a private

31467 method. Backends looking to populate this variable should

31468 do so via calling thisObj._set_name() directly.

31469

31470 YANG Description: Name of the config primitive.

31471 """

31472 parent = getattr(self, "_parent", None)

31473 if parent is not None and load is False:

31474 raise AttributeError("Cannot set keys directly when" +

31475 " within an instantiated list")

31476

31477 if hasattr(v, "_utype"):

31478 v = v._utype(v)

31479 try:

31480 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31481 except (TypeError, ValueError):

31482 raise ValueError({

31483 'error-string': """name must be of a type compatible with string""",

31484 'defined-type': "string",

31485 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

31486 })

31487

31488 self.__name = t

31489 if hasattr(self, '_set'):

31490 self._set()

31491

31492 def _unset_name(self):

31493 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31494

31495

31496 def _get_execution_environment_ref(self):

31497 """

31498 Getter method for execution_environment_ref, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive/execution_environment_ref (leafref)

31499

31500 YANG Description: Leaf reference to the particular execution environment

31501 """

31502 return self.__execution_environment_ref

31503

31504 def _set_execution_environment_ref(self, v, load=False):

31505 """

31506 Setter method for execution_environment_ref, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive/execution_environment_ref (leafref)

31507 If this variable is read-only (config: false) in the

31508 source YANG file, then _set_execution_environment_ref is considered as a private

31509 method. Backends looking to populate this variable should

31510 do so via calling thisObj._set_execution_environment_ref() directly.

31511

31512 YANG Description: Leaf reference to the particular execution environment

31513 """

31514 if hasattr(v, "_utype"):

31515 v = v._utype(v)

31516 try:

31517 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="execution-environment-ref", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)

31518 except (TypeError, ValueError):

31519 raise ValueError({

31520 'error-string': """execution_environment_ref must be of a type compatible with leafref""",

31521 'defined-type': "leafref",

31522 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="execution-environment-ref", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)""",

31523 })

31524

31525 self.__execution_environment_ref = t

31526 if hasattr(self, '_set'):

31527 self._set()

31528

31529 def _unset_execution_environment_ref(self):

31530 self.__execution_environment_ref = YANGDynClass(base=str, is_leaf=True, yang_name="execution-environment-ref", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)

31531

31532

31533 def _get_execution_environment_primitive(self):

31534 """

31535 Getter method for execution_environment_primitive, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive/execution_environment_primitive (string)

31536

31537 YANG Description: Name of the primitive in the execution enviroment. If not explicit,

31538 the leaf 'name' will be used as the name of the primitive.

31539 """

31540 return self.__execution_environment_primitive

31541

31542 def _set_execution_environment_primitive(self, v, load=False):

31543 """

31544 Setter method for execution_environment_primitive, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive/execution_environment_primitive (string)

31545 If this variable is read-only (config: false) in the

31546 source YANG file, then _set_execution_environment_primitive is considered as a private

31547 method. Backends looking to populate this variable should

31548 do so via calling thisObj._set_execution_environment_primitive() directly.

31549

31550 YANG Description: Name of the primitive in the execution enviroment. If not explicit,

31551 the leaf 'name' will be used as the name of the primitive.

31552 """

31553 if hasattr(v, "_utype"):

31554 v = v._utype(v)

31555 try:

31556 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="execution-environment-primitive", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31557 except (TypeError, ValueError):

31558 raise ValueError({

31559 'error-string': """execution_environment_primitive must be of a type compatible with string""",

31560 'defined-type': "string",

31561 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="execution-environment-primitive", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

31562 })

31563

31564 self.__execution_environment_primitive = t

31565 if hasattr(self, '_set'):

31566 self._set()

31567

31568 def _unset_execution_environment_primitive(self):

31569 self.__execution_environment_primitive = YANGDynClass(base=str, is_leaf=True, yang_name="execution-environment-primitive", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31570

31571

31572 def _get_parameter(self):

31573 """

31574 Getter method for parameter, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive/parameter (list)

31575

31576 YANG Description: List of parameters to the config primitive.

31577 """

31578 return self.__parameter

31579

31580 def _set_parameter(self, v, load=False):

31581 """

31582 Setter method for parameter, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive/parameter (list)

31583 If this variable is read-only (config: false) in the

31584 source YANG file, then _set_parameter is considered as a private

31585 method. Backends looking to populate this variable should

31586 do so via calling thisObj._set_parameter() directly.

31587

31588 YANG Description: List of parameters to the config primitive.

31589 """

31590 if hasattr(v, "_utype"):

31591 v = v._utype(v)

31592 try:

31593 t = YANGDynClass(v,base=YANGListType("name",yc_parameter_etsi_nfv_nsd__nsd_nsd_ns_configuration_config_primitive_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

31594 except (TypeError, ValueError):

31595 raise ValueError({

31596 'error-string': """parameter must be of a type compatible with list""",

31597 'defined-type': "list",

31598 'generated-type': """YANGDynClass(base=YANGListType("name",yc_parameter_etsi_nfv_nsd__nsd_nsd_ns_configuration_config_primitive_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)""",

31599 })

31600

31601 self.__parameter = t

31602 if hasattr(self, '_set'):

31603 self._set()

31604

31605 def _unset_parameter(self):

31606 self.__parameter = YANGDynClass(base=YANGListType("name",yc_parameter_etsi_nfv_nsd__nsd_nsd_ns_configuration_config_primitive_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

31607

31608

31609 def _get_user_defined_script(self):

31610 """

31611 Getter method for user_defined_script, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive/user_defined_script (string)

31612

31613 YANG Description: A user defined script. If user defined script is defined,

31614 the script will be executed using bash

31615 """

31616 return self.__user_defined_script

31617

31618 def _set_user_defined_script(self, v, load=False):

31619 """

31620 Setter method for user_defined_script, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive/user_defined_script (string)

31621 If this variable is read-only (config: false) in the

31622 source YANG file, then _set_user_defined_script is considered as a private

31623 method. Backends looking to populate this variable should

31624 do so via calling thisObj._set_user_defined_script() directly.

31625

31626 YANG Description: A user defined script. If user defined script is defined,

31627 the script will be executed using bash

31628 """

31629 if hasattr(v, "_utype"):

31630 v = v._utype(v)

31631 try:

31632 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="user-defined-script", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31633 except (TypeError, ValueError):

31634 raise ValueError({

31635 'error-string': """user_defined_script must be of a type compatible with string""",

31636 'defined-type': "string",

31637 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="user-defined-script", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

31638 })

31639

31640 self.__user_defined_script = t

31641 if hasattr(self, '_set'):

31642 self._set()

31643

31644 def _unset_user_defined_script(self):

31645 self.__user_defined_script = YANGDynClass(base=str, is_leaf=True, yang_name="user-defined-script", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31646

31647 name = __builtin__.property(_get_name, _set_name)

31648 execution_environment_ref = __builtin__.property(_get_execution_environment_ref, _set_execution_environment_ref)

31649 execution_environment_primitive = __builtin__.property(_get_execution_environment_primitive, _set_execution_environment_primitive)

31650 parameter = __builtin__.property(_get_parameter, _set_parameter)

31651 user_defined_script = __builtin__.property(_get_user_defined_script, _set_user_defined_script)

31652

31653

31654 _pyangbind_elements = OrderedDict([('name', name), ('execution_environment_ref', execution_environment_ref), ('execution_environment_primitive', execution_environment_primitive), ('parameter', parameter), ('user_defined_script', user_defined_script), ])

31655

31656

31657 class yc_parameter_etsi_nfv_nsd__nsd_nsd_ns_configuration_initial_config_primitive_parameter(PybindBase):

31658 """

31659 This class was auto-generated by the PythonClass plugin for PYANG

31660 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/ns-configuration/initial-config-primitive/parameter. Each member element of

31661 the container is represented as a class variable - with a specific

31662 YANG type.

31663

31664 YANG Description: List of parameters to the configuration primitive.

31665 """

31666 __slots__ = ('_path_helper', '_extmethods', '__name','__data_type','__value',)

31667

31668 _yang_name = 'parameter'

31669 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

31670

31671 _pybind_generated_by = 'container'

31672

31673 def __init__(self, *args, **kwargs):

31674

31675 self._path_helper = False

31676

31677 self._extmethods = False

31678 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31679 self.__data_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'STRING': {}, 'INTEGER': {}, 'BOOLEAN': {}},), is_leaf=True, yang_name="data-type", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='common:parameter-data-type', is_config=True)

31680 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31681

31682 load = kwargs.pop("load", None)

31683 if args:

31684 if len(args) > 1:

31685 raise TypeError("cannot create a YANG container with >1 argument")

31686 all_attr = True

31687 for e in self._pyangbind_elements:

31688 if not hasattr(args[0], e):

31689 all_attr = False

31690 break

31691 if not all_attr:

31692 raise ValueError("Supplied object did not have the correct attributes")

31693 for e in self._pyangbind_elements:

31694 nobj = getattr(args[0], e)

31695 if nobj._changed() is False:

31696 continue

31697 setmethod = getattr(self, "_set_%s" % e)

31698 if load is None:

31699 setmethod(getattr(args[0], e))

31700 else:

31701 setmethod(getattr(args[0], e), load=load)

31702

31703 def _path(self):

31704 if hasattr(self, "_parent"):

31705 return self._parent._path()+[self._yang_name]

31706 else:

31707 return ['nsd', 'nsd', 'ns-configuration', 'initial-config-primitive', 'parameter']

31708

31709 def _get_name(self):

31710 """

31711 Getter method for name, mapped from YANG variable /nsd/nsd/ns_configuration/initial_config_primitive/parameter/name (string)

31712

31713 YANG Description: Name of the parameter.

31714 """

31715 return self.__name

31716

31717 def _set_name(self, v, load=False):

31718 """

31719 Setter method for name, mapped from YANG variable /nsd/nsd/ns_configuration/initial_config_primitive/parameter/name (string)

31720 If this variable is read-only (config: false) in the

31721 source YANG file, then _set_name is considered as a private

31722 method. Backends looking to populate this variable should

31723 do so via calling thisObj._set_name() directly.

31724

31725 YANG Description: Name of the parameter.

31726 """

31727 parent = getattr(self, "_parent", None)

31728 if parent is not None and load is False:

31729 raise AttributeError("Cannot set keys directly when" +

31730 " within an instantiated list")

31731

31732 if hasattr(v, "_utype"):

31733 v = v._utype(v)

31734 try:

31735 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31736 except (TypeError, ValueError):

31737 raise ValueError({

31738 'error-string': """name must be of a type compatible with string""",

31739 'defined-type': "string",

31740 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

31741 })

31742

31743 self.__name = t

31744 if hasattr(self, '_set'):

31745 self._set()

31746

31747 def _unset_name(self):

31748 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31749

31750

31751 def _get_data_type(self):

31752 """

31753 Getter method for data_type, mapped from YANG variable /nsd/nsd/ns_configuration/initial_config_primitive/parameter/data_type (common:parameter-data-type)

31754

31755 YANG Description: Data type associated with the value.

31756 """

31757 return self.__data_type

31758

31759 def _set_data_type(self, v, load=False):

31760 """

31761 Setter method for data_type, mapped from YANG variable /nsd/nsd/ns_configuration/initial_config_primitive/parameter/data_type (common:parameter-data-type)

31762 If this variable is read-only (config: false) in the

31763 source YANG file, then _set_data_type is considered as a private

31764 method. Backends looking to populate this variable should

31765 do so via calling thisObj._set_data_type() directly.

31766

31767 YANG Description: Data type associated with the value.

31768 """

31769 if hasattr(v, "_utype"):

31770 v = v._utype(v)

31771 try:

31772 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'STRING': {}, 'INTEGER': {}, 'BOOLEAN': {}},), is_leaf=True, yang_name="data-type", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='common:parameter-data-type', is_config=True)

31773 except (TypeError, ValueError):

31774 raise ValueError({

31775 'error-string': """data_type must be of a type compatible with common:parameter-data-type""",

31776 'defined-type': "common:parameter-data-type",

31777 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'STRING': {}, 'INTEGER': {}, 'BOOLEAN': {}},), is_leaf=True, yang_name="data-type", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='common:parameter-data-type', is_config=True)""",

31778 })

31779

31780 self.__data_type = t

31781 if hasattr(self, '_set'):

31782 self._set()

31783

31784 def _unset_data_type(self):

31785 self.__data_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'STRING': {}, 'INTEGER': {}, 'BOOLEAN': {}},), is_leaf=True, yang_name="data-type", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='common:parameter-data-type', is_config=True)

31786

31787

31788 def _get_value(self):

31789 """

31790 Getter method for value, mapped from YANG variable /nsd/nsd/ns_configuration/initial_config_primitive/parameter/value (string)

31791

31792 YANG Description: Value associated with the name.

31793 """

31794 return self.__value

31795

31796 def _set_value(self, v, load=False):

31797 """

31798 Setter method for value, mapped from YANG variable /nsd/nsd/ns_configuration/initial_config_primitive/parameter/value (string)

31799 If this variable is read-only (config: false) in the

31800 source YANG file, then _set_value is considered as a private

31801 method. Backends looking to populate this variable should

31802 do so via calling thisObj._set_value() directly.

31803

31804 YANG Description: Value associated with the name.

31805 """

31806 if hasattr(v, "_utype"):

31807 v = v._utype(v)

31808 try:

31809 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="value", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31810 except (TypeError, ValueError):

31811 raise ValueError({

31812 'error-string': """value must be of a type compatible with string""",

31813 'defined-type': "string",

31814 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

31815 })

31816

31817 self.__value = t

31818 if hasattr(self, '_set'):

31819 self._set()

31820

31821 def _unset_value(self):

31822 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31823

31824 name = __builtin__.property(_get_name, _set_name)

31825 data_type = __builtin__.property(_get_data_type, _set_data_type)

31826 value = __builtin__.property(_get_value, _set_value)

31827

31828 __choices__ = {'primitive-type': {'primitive-definition': ['name', 'data_type', 'value']}}

31829 _pyangbind_elements = OrderedDict([('name', name), ('data_type', data_type), ('value', value), ])

31830

31831

31832 class yc_initial_config_primitive_etsi_nfv_nsd__nsd_nsd_ns_configuration_initial_config_primitive(PybindBase):

31833 """

31834 This class was auto-generated by the PythonClass plugin for PYANG

31835 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/ns-configuration/initial-config-primitive. Each member element of

31836 the container is represented as a class variable - with a specific

31837 YANG type.

31838

31839 YANG Description: Initial set of configuration primitives.

31840 """

31841 __slots__ = ('_path_helper', '_extmethods', '__seq','__name','__execution_environment_ref','__parameter','__user_defined_script',)

31842

31843 _yang_name = 'initial-config-primitive'

31844 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

31845

31846 _pybind_generated_by = 'container'

31847

31848 def __init__(self, *args, **kwargs):

31849

31850 self._path_helper = False

31851

31852 self._extmethods = False

31853 self.__seq = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="seq", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='uint64', is_config=True)

31854 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31855 self.__execution_environment_ref = YANGDynClass(base=str, is_leaf=True, yang_name="execution-environment-ref", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)

31856 self.__parameter = YANGDynClass(base=YANGListType("name",yc_parameter_etsi_nfv_nsd__nsd_nsd_ns_configuration_initial_config_primitive_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None, choice=False), is_container='list', yang_name="parameter", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

31857 self.__user_defined_script = YANGDynClass(base=str, is_leaf=True, yang_name="user-defined-script", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31858

31859 load = kwargs.pop("load", None)

31860 if args:

31861 if len(args) > 1:

31862 raise TypeError("cannot create a YANG container with >1 argument")

31863 all_attr = True

31864 for e in self._pyangbind_elements:

31865 if not hasattr(args[0], e):

31866 all_attr = False

31867 break

31868 if not all_attr:

31869 raise ValueError("Supplied object did not have the correct attributes")

31870 for e in self._pyangbind_elements:

31871 nobj = getattr(args[0], e)

31872 if nobj._changed() is False:

31873 continue

31874 setmethod = getattr(self, "_set_%s" % e)

31875 if load is None:

31876 setmethod(getattr(args[0], e))

31877 else:

31878 setmethod(getattr(args[0], e), load=load)

31879

31880 def _path(self):

31881 if hasattr(self, "_parent"):

31882 return self._parent._path()+[self._yang_name]

31883 else:

31884 return ['nsd', 'nsd', 'ns-configuration', 'initial-config-primitive']

31885

31886 def _get_seq(self):

31887 """

31888 Getter method for seq, mapped from YANG variable /nsd/nsd/ns_configuration/initial_config_primitive/seq (uint64)

31889

31890 YANG Description: Sequence number for the configuration primitive.

31891 """

31892 return self.__seq

31893

31894 def _set_seq(self, v, load=False):

31895 """

31896 Setter method for seq, mapped from YANG variable /nsd/nsd/ns_configuration/initial_config_primitive/seq (uint64)

31897 If this variable is read-only (config: false) in the

31898 source YANG file, then _set_seq is considered as a private

31899 method. Backends looking to populate this variable should

31900 do so via calling thisObj._set_seq() directly.

31901

31902 YANG Description: Sequence number for the configuration primitive.

31903 """

31904 parent = getattr(self, "_parent", None)

31905 if parent is not None and load is False:

31906 raise AttributeError("Cannot set keys directly when" +

31907 " within an instantiated list")

31908

31909 if hasattr(v, "_utype"):

31910 v = v._utype(v)

31911 try:

31912 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="seq", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='uint64', is_config=True)

31913 except (TypeError, ValueError):

31914 raise ValueError({

31915 'error-string': """seq must be of a type compatible with uint64""",

31916 'defined-type': "uint64",

31917 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="seq", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='uint64', is_config=True)""",

31918 })

31919

31920 self.__seq = t

31921 if hasattr(self, '_set'):

31922 self._set()

31923

31924 def _unset_seq(self):

31925 self.__seq = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="seq", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='uint64', is_config=True)

31926

31927

31928 def _get_name(self):

31929 """

31930 Getter method for name, mapped from YANG variable /nsd/nsd/ns_configuration/initial_config_primitive/name (string)

31931

31932 YANG Description: Name of the configuration primitive.

31933 """

31934 return self.__name

31935

31936 def _set_name(self, v, load=False):

31937 """

31938 Setter method for name, mapped from YANG variable /nsd/nsd/ns_configuration/initial_config_primitive/name (string)

31939 If this variable is read-only (config: false) in the

31940 source YANG file, then _set_name is considered as a private

31941 method. Backends looking to populate this variable should

31942 do so via calling thisObj._set_name() directly.

31943

31944 YANG Description: Name of the configuration primitive.

31945 """

31946 if hasattr(v, "_utype"):

31947 v = v._utype(v)

31948 try:

31949 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31950 except (TypeError, ValueError):

31951 raise ValueError({

31952 'error-string': """name must be of a type compatible with string""",

31953 'defined-type': "string",

31954 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

31955 })

31956

31957 self.__name = t

31958 if hasattr(self, '_set'):

31959 self._set()

31960

31961 def _unset_name(self):

31962 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

31963

31964

31965 def _get_execution_environment_ref(self):

31966 """

31967 Getter method for execution_environment_ref, mapped from YANG variable /nsd/nsd/ns_configuration/initial_config_primitive/execution_environment_ref (leafref)

31968

31969 YANG Description: Leaf reference to the particular execution environment

31970 """

31971 return self.__execution_environment_ref

31972

31973 def _set_execution_environment_ref(self, v, load=False):

31974 """

31975 Setter method for execution_environment_ref, mapped from YANG variable /nsd/nsd/ns_configuration/initial_config_primitive/execution_environment_ref (leafref)

31976 If this variable is read-only (config: false) in the

31977 source YANG file, then _set_execution_environment_ref is considered as a private

31978 method. Backends looking to populate this variable should

31979 do so via calling thisObj._set_execution_environment_ref() directly.

31980

31981 YANG Description: Leaf reference to the particular execution environment

31982 """

31983 if hasattr(v, "_utype"):

31984 v = v._utype(v)

31985 try:

31986 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="execution-environment-ref", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)

31987 except (TypeError, ValueError):

31988 raise ValueError({

31989 'error-string': """execution_environment_ref must be of a type compatible with leafref""",

31990 'defined-type': "leafref",

31991 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="execution-environment-ref", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)""",

31992 })

31993

31994 self.__execution_environment_ref = t

31995 if hasattr(self, '_set'):

31996 self._set()

31997

31998 def _unset_execution_environment_ref(self):

31999 self.__execution_environment_ref = YANGDynClass(base=str, is_leaf=True, yang_name="execution-environment-ref", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)

32000

32001

32002 def _get_parameter(self):

32003 """

32004 Getter method for parameter, mapped from YANG variable /nsd/nsd/ns_configuration/initial_config_primitive/parameter (list)

32005

32006 YANG Description: List of parameters to the configuration primitive.

32007 """

32008 return self.__parameter

32009

32010 def _set_parameter(self, v, load=False):

32011 """

32012 Setter method for parameter, mapped from YANG variable /nsd/nsd/ns_configuration/initial_config_primitive/parameter (list)

32013 If this variable is read-only (config: false) in the

32014 source YANG file, then _set_parameter is considered as a private

32015 method. Backends looking to populate this variable should

32016 do so via calling thisObj._set_parameter() directly.

32017

32018 YANG Description: List of parameters to the configuration primitive.

32019 """

32020 if hasattr(v, "_utype"):

32021 v = v._utype(v)

32022 try:

32023 t = YANGDynClass(v,base=YANGListType("name",yc_parameter_etsi_nfv_nsd__nsd_nsd_ns_configuration_initial_config_primitive_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None, choice=False), is_container='list', yang_name="parameter", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

32024 except (TypeError, ValueError):

32025 raise ValueError({

32026 'error-string': """parameter must be of a type compatible with list""",

32027 'defined-type': "list",

32028 'generated-type': """YANGDynClass(base=YANGListType("name",yc_parameter_etsi_nfv_nsd__nsd_nsd_ns_configuration_initial_config_primitive_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None, choice=False), is_container='list', yang_name="parameter", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)""",

32029 })

32030

32031 self.__parameter = t

32032 if hasattr(self, '_set'):

32033 self._set()

32034

32035 def _unset_parameter(self):

32036 self.__parameter = YANGDynClass(base=YANGListType("name",yc_parameter_etsi_nfv_nsd__nsd_nsd_ns_configuration_initial_config_primitive_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None, choice=False), is_container='list', yang_name="parameter", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

32037

32038

32039 def _get_user_defined_script(self):

32040 """

32041 Getter method for user_defined_script, mapped from YANG variable /nsd/nsd/ns_configuration/initial_config_primitive/user_defined_script (string)

32042

32043 YANG Description: A user defined script.

32044 """

32045 return self.__user_defined_script

32046

32047 def _set_user_defined_script(self, v, load=False):

32048 """

32049 Setter method for user_defined_script, mapped from YANG variable /nsd/nsd/ns_configuration/initial_config_primitive/user_defined_script (string)

32050 If this variable is read-only (config: false) in the

32051 source YANG file, then _set_user_defined_script is considered as a private

32052 method. Backends looking to populate this variable should

32053 do so via calling thisObj._set_user_defined_script() directly.

32054

32055 YANG Description: A user defined script.

32056 """

32057 if hasattr(v, "_utype"):

32058 v = v._utype(v)

32059 try:

32060 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="user-defined-script", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32061 except (TypeError, ValueError):

32062 raise ValueError({

32063 'error-string': """user_defined_script must be of a type compatible with string""",

32064 'defined-type': "string",

32065 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="user-defined-script", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

32066 })

32067

32068 self.__user_defined_script = t

32069 if hasattr(self, '_set'):

32070 self._set()

32071

32072 def _unset_user_defined_script(self):

32073 self.__user_defined_script = YANGDynClass(base=str, is_leaf=True, yang_name="user-defined-script", parent=self, choice=('primitive-type', 'primitive-definition'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32074

32075 seq = __builtin__.property(_get_seq, _set_seq)

32076 name = __builtin__.property(_get_name, _set_name)

32077 execution_environment_ref = __builtin__.property(_get_execution_environment_ref, _set_execution_environment_ref)

32078 parameter = __builtin__.property(_get_parameter, _set_parameter)

32079 user_defined_script = __builtin__.property(_get_user_defined_script, _set_user_defined_script)

32080

32081 __choices__ = {'primitive-type': {'primitive-definition': ['name', 'execution_environment_ref', 'parameter', 'user_defined_script']}}

32082 _pyangbind_elements = OrderedDict([('seq', seq), ('name', name), ('execution_environment_ref', execution_environment_ref), ('parameter', parameter), ('user_defined_script', user_defined_script), ])

32083

32084

32085 class yc_parameter_etsi_nfv_nsd__nsd_nsd_ns_configuration_terminate_config_primitive_parameter(PybindBase):

32086 """

32087 This class was auto-generated by the PythonClass plugin for PYANG

32088 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/ns-configuration/terminate-config-primitive/parameter. Each member element of

32089 the container is represented as a class variable - with a specific

32090 YANG type.

32091

32092 YANG Description: List of parameters to the configuration primitive.

32093 """

32094 __slots__ = ('_path_helper', '_extmethods', '__name','__data_type','__value',)

32095

32096 _yang_name = 'parameter'

32097 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

32098

32099 _pybind_generated_by = 'container'

32100

32101 def __init__(self, *args, **kwargs):

32102

32103 self._path_helper = False

32104

32105 self._extmethods = False

32106 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32107 self.__data_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'STRING': {}, 'INTEGER': {}, 'BOOLEAN': {}},), is_leaf=True, yang_name="data-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='common:parameter-data-type', is_config=True)

32108 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32109

32110 load = kwargs.pop("load", None)

32111 if args:

32112 if len(args) > 1:

32113 raise TypeError("cannot create a YANG container with >1 argument")

32114 all_attr = True

32115 for e in self._pyangbind_elements:

32116 if not hasattr(args[0], e):

32117 all_attr = False

32118 break

32119 if not all_attr:

32120 raise ValueError("Supplied object did not have the correct attributes")

32121 for e in self._pyangbind_elements:

32122 nobj = getattr(args[0], e)

32123 if nobj._changed() is False:

32124 continue

32125 setmethod = getattr(self, "_set_%s" % e)

32126 if load is None:

32127 setmethod(getattr(args[0], e))

32128 else:

32129 setmethod(getattr(args[0], e), load=load)

32130

32131 def _path(self):

32132 if hasattr(self, "_parent"):

32133 return self._parent._path()+[self._yang_name]

32134 else:

32135 return ['nsd', 'nsd', 'ns-configuration', 'terminate-config-primitive', 'parameter']

32136

32137 def _get_name(self):

32138 """

32139 Getter method for name, mapped from YANG variable /nsd/nsd/ns_configuration/terminate_config_primitive/parameter/name (string)

32140

32141 YANG Description: Name of the parameter.

32142 """

32143 return self.__name

32144

32145 def _set_name(self, v, load=False):

32146 """

32147 Setter method for name, mapped from YANG variable /nsd/nsd/ns_configuration/terminate_config_primitive/parameter/name (string)

32148 If this variable is read-only (config: false) in the

32149 source YANG file, then _set_name is considered as a private

32150 method. Backends looking to populate this variable should

32151 do so via calling thisObj._set_name() directly.

32152

32153 YANG Description: Name of the parameter.

32154 """

32155 parent = getattr(self, "_parent", None)

32156 if parent is not None and load is False:

32157 raise AttributeError("Cannot set keys directly when" +

32158 " within an instantiated list")

32159

32160 if hasattr(v, "_utype"):

32161 v = v._utype(v)

32162 try:

32163 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32164 except (TypeError, ValueError):

32165 raise ValueError({

32166 'error-string': """name must be of a type compatible with string""",

32167 'defined-type': "string",

32168 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

32169 })

32170

32171 self.__name = t

32172 if hasattr(self, '_set'):

32173 self._set()

32174

32175 def _unset_name(self):

32176 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32177

32178

32179 def _get_data_type(self):

32180 """

32181 Getter method for data_type, mapped from YANG variable /nsd/nsd/ns_configuration/terminate_config_primitive/parameter/data_type (common:parameter-data-type)

32182

32183 YANG Description: Data type associated with the value.

32184 """

32185 return self.__data_type

32186

32187 def _set_data_type(self, v, load=False):

32188 """

32189 Setter method for data_type, mapped from YANG variable /nsd/nsd/ns_configuration/terminate_config_primitive/parameter/data_type (common:parameter-data-type)

32190 If this variable is read-only (config: false) in the

32191 source YANG file, then _set_data_type is considered as a private

32192 method. Backends looking to populate this variable should

32193 do so via calling thisObj._set_data_type() directly.

32194

32195 YANG Description: Data type associated with the value.

32196 """

32197 if hasattr(v, "_utype"):

32198 v = v._utype(v)

32199 try:

32200 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'STRING': {}, 'INTEGER': {}, 'BOOLEAN': {}},), is_leaf=True, yang_name="data-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='common:parameter-data-type', is_config=True)

32201 except (TypeError, ValueError):

32202 raise ValueError({

32203 'error-string': """data_type must be of a type compatible with common:parameter-data-type""",

32204 'defined-type': "common:parameter-data-type",

32205 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'STRING': {}, 'INTEGER': {}, 'BOOLEAN': {}},), is_leaf=True, yang_name="data-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='common:parameter-data-type', is_config=True)""",

32206 })

32207

32208 self.__data_type = t

32209 if hasattr(self, '_set'):

32210 self._set()

32211

32212 def _unset_data_type(self):

32213 self.__data_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'STRING': {}, 'INTEGER': {}, 'BOOLEAN': {}},), is_leaf=True, yang_name="data-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='common:parameter-data-type', is_config=True)

32214

32215

32216 def _get_value(self):

32217 """

32218 Getter method for value, mapped from YANG variable /nsd/nsd/ns_configuration/terminate_config_primitive/parameter/value (string)

32219

32220 YANG Description: Value associated with the name.

32221 """

32222 return self.__value

32223

32224 def _set_value(self, v, load=False):

32225 """

32226 Setter method for value, mapped from YANG variable /nsd/nsd/ns_configuration/terminate_config_primitive/parameter/value (string)

32227 If this variable is read-only (config: false) in the

32228 source YANG file, then _set_value is considered as a private

32229 method. Backends looking to populate this variable should

32230 do so via calling thisObj._set_value() directly.

32231

32232 YANG Description: Value associated with the name.

32233 """

32234 if hasattr(v, "_utype"):

32235 v = v._utype(v)

32236 try:

32237 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32238 except (TypeError, ValueError):

32239 raise ValueError({

32240 'error-string': """value must be of a type compatible with string""",

32241 'defined-type': "string",

32242 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

32243 })

32244

32245 self.__value = t

32246 if hasattr(self, '_set'):

32247 self._set()

32248

32249 def _unset_value(self):

32250 self.__value = YANGDynClass(base=str, is_leaf=True, yang_name="value", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32251

32252 name = __builtin__.property(_get_name, _set_name)

32253 data_type = __builtin__.property(_get_data_type, _set_data_type)

32254 value = __builtin__.property(_get_value, _set_value)

32255

32256

32257 _pyangbind_elements = OrderedDict([('name', name), ('data_type', data_type), ('value', value), ])

32258

32259

32260 class yc_terminate_config_primitive_etsi_nfv_nsd__nsd_nsd_ns_configuration_terminate_config_primitive(PybindBase):

32261 """

32262 This class was auto-generated by the PythonClass plugin for PYANG

32263 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/ns-configuration/terminate-config-primitive. Each member element of

32264 the container is represented as a class variable - with a specific

32265 YANG type.

32266

32267 YANG Description: Terminate set of configuration primitives.

32268 """

32269 __slots__ = ('_path_helper', '_extmethods', '__seq','__name','__execution_environment_ref','__parameter','__user_defined_script',)

32270

32271 _yang_name = 'terminate-config-primitive'

32272 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

32273

32274 _pybind_generated_by = 'container'

32275

32276 def __init__(self, *args, **kwargs):

32277

32278 self._path_helper = False

32279

32280 self._extmethods = False

32281 self.__seq = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="seq", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='uint64', is_config=True)

32282 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32283 self.__execution_environment_ref = YANGDynClass(base=str, is_leaf=True, yang_name="execution-environment-ref", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)

32284 self.__parameter = YANGDynClass(base=YANGListType("name",yc_parameter_etsi_nfv_nsd__nsd_nsd_ns_configuration_terminate_config_primitive_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

32285 self.__user_defined_script = YANGDynClass(base=str, is_leaf=True, yang_name="user-defined-script", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32286

32287 load = kwargs.pop("load", None)

32288 if args:

32289 if len(args) > 1:

32290 raise TypeError("cannot create a YANG container with >1 argument")

32291 all_attr = True

32292 for e in self._pyangbind_elements:

32293 if not hasattr(args[0], e):

32294 all_attr = False

32295 break

32296 if not all_attr:

32297 raise ValueError("Supplied object did not have the correct attributes")

32298 for e in self._pyangbind_elements:

32299 nobj = getattr(args[0], e)

32300 if nobj._changed() is False:

32301 continue

32302 setmethod = getattr(self, "_set_%s" % e)

32303 if load is None:

32304 setmethod(getattr(args[0], e))

32305 else:

32306 setmethod(getattr(args[0], e), load=load)

32307

32308 def _path(self):

32309 if hasattr(self, "_parent"):

32310 return self._parent._path()+[self._yang_name]

32311 else:

32312 return ['nsd', 'nsd', 'ns-configuration', 'terminate-config-primitive']

32313

32314 def _get_seq(self):

32315 """

32316 Getter method for seq, mapped from YANG variable /nsd/nsd/ns_configuration/terminate_config_primitive/seq (uint64)

32317

32318 YANG Description: Sequence number for the configuration primitive.

32319 """

32320 return self.__seq

32321

32322 def _set_seq(self, v, load=False):

32323 """

32324 Setter method for seq, mapped from YANG variable /nsd/nsd/ns_configuration/terminate_config_primitive/seq (uint64)

32325 If this variable is read-only (config: false) in the

32326 source YANG file, then _set_seq is considered as a private

32327 method. Backends looking to populate this variable should

32328 do so via calling thisObj._set_seq() directly.

32329

32330 YANG Description: Sequence number for the configuration primitive.

32331 """

32332 parent = getattr(self, "_parent", None)

32333 if parent is not None and load is False:

32334 raise AttributeError("Cannot set keys directly when" +

32335 " within an instantiated list")

32336

32337 if hasattr(v, "_utype"):

32338 v = v._utype(v)

32339 try:

32340 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="seq", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='uint64', is_config=True)

32341 except (TypeError, ValueError):

32342 raise ValueError({

32343 'error-string': """seq must be of a type compatible with uint64""",

32344 'defined-type': "uint64",

32345 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="seq", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='uint64', is_config=True)""",

32346 })

32347

32348 self.__seq = t

32349 if hasattr(self, '_set'):

32350 self._set()

32351

32352 def _unset_seq(self):

32353 self.__seq = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..18446744073709551615']}, int_size=64), is_leaf=True, yang_name="seq", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='uint64', is_config=True)

32354

32355

32356 def _get_name(self):

32357 """

32358 Getter method for name, mapped from YANG variable /nsd/nsd/ns_configuration/terminate_config_primitive/name (string)

32359

32360 YANG Description: Name of the configuration primitive.

32361 """

32362 return self.__name

32363

32364 def _set_name(self, v, load=False):

32365 """

32366 Setter method for name, mapped from YANG variable /nsd/nsd/ns_configuration/terminate_config_primitive/name (string)

32367 If this variable is read-only (config: false) in the

32368 source YANG file, then _set_name is considered as a private

32369 method. Backends looking to populate this variable should

32370 do so via calling thisObj._set_name() directly.

32371

32372 YANG Description: Name of the configuration primitive.

32373 """

32374 if hasattr(v, "_utype"):

32375 v = v._utype(v)

32376 try:

32377 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32378 except (TypeError, ValueError):

32379 raise ValueError({

32380 'error-string': """name must be of a type compatible with string""",

32381 'defined-type': "string",

32382 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

32383 })

32384

32385 self.__name = t

32386 if hasattr(self, '_set'):

32387 self._set()

32388

32389 def _unset_name(self):

32390 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32391

32392

32393 def _get_execution_environment_ref(self):

32394 """

32395 Getter method for execution_environment_ref, mapped from YANG variable /nsd/nsd/ns_configuration/terminate_config_primitive/execution_environment_ref (leafref)

32396

32397 YANG Description: Leaf reference to the particular execution environment

32398 """

32399 return self.__execution_environment_ref

32400

32401 def _set_execution_environment_ref(self, v, load=False):

32402 """

32403 Setter method for execution_environment_ref, mapped from YANG variable /nsd/nsd/ns_configuration/terminate_config_primitive/execution_environment_ref (leafref)

32404 If this variable is read-only (config: false) in the

32405 source YANG file, then _set_execution_environment_ref is considered as a private

32406 method. Backends looking to populate this variable should

32407 do so via calling thisObj._set_execution_environment_ref() directly.

32408

32409 YANG Description: Leaf reference to the particular execution environment

32410 """

32411 if hasattr(v, "_utype"):

32412 v = v._utype(v)

32413 try:

32414 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="execution-environment-ref", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)

32415 except (TypeError, ValueError):

32416 raise ValueError({

32417 'error-string': """execution_environment_ref must be of a type compatible with leafref""",

32418 'defined-type': "leafref",

32419 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="execution-environment-ref", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)""",

32420 })

32421

32422 self.__execution_environment_ref = t

32423 if hasattr(self, '_set'):

32424 self._set()

32425

32426 def _unset_execution_environment_ref(self):

32427 self.__execution_environment_ref = YANGDynClass(base=str, is_leaf=True, yang_name="execution-environment-ref", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)

32428

32429

32430 def _get_parameter(self):

32431 """

32432 Getter method for parameter, mapped from YANG variable /nsd/nsd/ns_configuration/terminate_config_primitive/parameter (list)

32433

32434 YANG Description: List of parameters to the configuration primitive.

32435 """

32436 return self.__parameter

32437

32438 def _set_parameter(self, v, load=False):

32439 """

32440 Setter method for parameter, mapped from YANG variable /nsd/nsd/ns_configuration/terminate_config_primitive/parameter (list)

32441 If this variable is read-only (config: false) in the

32442 source YANG file, then _set_parameter is considered as a private

32443 method. Backends looking to populate this variable should

32444 do so via calling thisObj._set_parameter() directly.

32445

32446 YANG Description: List of parameters to the configuration primitive.

32447 """

32448 if hasattr(v, "_utype"):

32449 v = v._utype(v)

32450 try:

32451 t = YANGDynClass(v,base=YANGListType("name",yc_parameter_etsi_nfv_nsd__nsd_nsd_ns_configuration_terminate_config_primitive_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

32452 except (TypeError, ValueError):

32453 raise ValueError({

32454 'error-string': """parameter must be of a type compatible with list""",

32455 'defined-type': "list",

32456 'generated-type': """YANGDynClass(base=YANGListType("name",yc_parameter_etsi_nfv_nsd__nsd_nsd_ns_configuration_terminate_config_primitive_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)""",

32457 })

32458

32459 self.__parameter = t

32460 if hasattr(self, '_set'):

32461 self._set()

32462

32463 def _unset_parameter(self):

32464 self.__parameter = YANGDynClass(base=YANGListType("name",yc_parameter_etsi_nfv_nsd__nsd_nsd_ns_configuration_terminate_config_primitive_parameter, yang_name="parameter", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="parameter", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

32465

32466

32467 def _get_user_defined_script(self):

32468 """

32469 Getter method for user_defined_script, mapped from YANG variable /nsd/nsd/ns_configuration/terminate_config_primitive/user_defined_script (string)

32470

32471 YANG Description: A user defined script.

32472 """

32473 return self.__user_defined_script

32474

32475 def _set_user_defined_script(self, v, load=False):

32476 """

32477 Setter method for user_defined_script, mapped from YANG variable /nsd/nsd/ns_configuration/terminate_config_primitive/user_defined_script (string)

32478 If this variable is read-only (config: false) in the

32479 source YANG file, then _set_user_defined_script is considered as a private

32480 method. Backends looking to populate this variable should

32481 do so via calling thisObj._set_user_defined_script() directly.

32482

32483 YANG Description: A user defined script.

32484 """

32485 if hasattr(v, "_utype"):

32486 v = v._utype(v)

32487 try:

32488 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="user-defined-script", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32489 except (TypeError, ValueError):

32490 raise ValueError({

32491 'error-string': """user_defined_script must be of a type compatible with string""",

32492 'defined-type': "string",

32493 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="user-defined-script", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

32494 })

32495

32496 self.__user_defined_script = t

32497 if hasattr(self, '_set'):

32498 self._set()

32499

32500 def _unset_user_defined_script(self):

32501 self.__user_defined_script = YANGDynClass(base=str, is_leaf=True, yang_name="user-defined-script", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32502

32503 seq = __builtin__.property(_get_seq, _set_seq)

32504 name = __builtin__.property(_get_name, _set_name)

32505 execution_environment_ref = __builtin__.property(_get_execution_environment_ref, _set_execution_environment_ref)

32506 parameter = __builtin__.property(_get_parameter, _set_parameter)

32507 user_defined_script = __builtin__.property(_get_user_defined_script, _set_user_defined_script)

32508

32509

32510 _pyangbind_elements = OrderedDict([('seq', seq), ('name', name), ('execution_environment_ref', execution_environment_ref), ('parameter', parameter), ('user_defined_script', user_defined_script), ])

32511

32512

32513 class yc_metrics_etsi_nfv_nsd__nsd_nsd_ns_configuration_metrics(PybindBase):

32514 """

32515 This class was auto-generated by the PythonClass plugin for PYANG

32516 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/ns-configuration/metrics. Each member element of

32517 the container is represented as a class variable - with a specific

32518 YANG type.

32519

32520 YANG Description: List of VNFC related metrics

32521 """

32522 __slots__ = ('_path_helper', '_extmethods', '__name',)

32523

32524 _yang_name = 'metrics'

32525 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

32526

32527 _pybind_generated_by = 'container'

32528

32529 def __init__(self, *args, **kwargs):

32530

32531 self._path_helper = False

32532

32533 self._extmethods = False

32534 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32535

32536 load = kwargs.pop("load", None)

32537 if args:

32538 if len(args) > 1:

32539 raise TypeError("cannot create a YANG container with >1 argument")

32540 all_attr = True

32541 for e in self._pyangbind_elements:

32542 if not hasattr(args[0], e):

32543 all_attr = False

32544 break

32545 if not all_attr:

32546 raise ValueError("Supplied object did not have the correct attributes")

32547 for e in self._pyangbind_elements:

32548 nobj = getattr(args[0], e)

32549 if nobj._changed() is False:

32550 continue

32551 setmethod = getattr(self, "_set_%s" % e)

32552 if load is None:

32553 setmethod(getattr(args[0], e))

32554 else:

32555 setmethod(getattr(args[0], e), load=load)

32556

32557 def _path(self):

32558 if hasattr(self, "_parent"):

32559 return self._parent._path()+[self._yang_name]

32560 else:

32561 return ['nsd', 'nsd', 'ns-configuration', 'metrics']

32562

32563 def _get_name(self):

32564 """

32565 Getter method for name, mapped from YANG variable /nsd/nsd/ns_configuration/metrics/name (string)

32566

32567 YANG Description: Name of the metric, as defined in the Juju charm.

32568 """

32569 return self.__name

32570

32571 def _set_name(self, v, load=False):

32572 """

32573 Setter method for name, mapped from YANG variable /nsd/nsd/ns_configuration/metrics/name (string)

32574 If this variable is read-only (config: false) in the

32575 source YANG file, then _set_name is considered as a private

32576 method. Backends looking to populate this variable should

32577 do so via calling thisObj._set_name() directly.

32578

32579 YANG Description: Name of the metric, as defined in the Juju charm.

32580 """

32581 parent = getattr(self, "_parent", None)

32582 if parent is not None and load is False:

32583 raise AttributeError("Cannot set keys directly when" +

32584 " within an instantiated list")

32585

32586 if hasattr(v, "_utype"):

32587 v = v._utype(v)

32588 try:

32589 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32590 except (TypeError, ValueError):

32591 raise ValueError({

32592 'error-string': """name must be of a type compatible with string""",

32593 'defined-type': "string",

32594 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

32595 })

32596

32597 self.__name = t

32598 if hasattr(self, '_set'):

32599 self._set()

32600

32601 def _unset_name(self):

32602 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32603

32604 name = __builtin__.property(_get_name, _set_name)

32605

32606

32607 _pyangbind_elements = OrderedDict([('name', name), ])

32608

32609

32610 class yc_provider_etsi_nfv_nsd__nsd_nsd_ns_configuration_relation_provider(PybindBase):

32611 """

32612 This class was auto-generated by the PythonClass plugin for PYANG

32613 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/ns-configuration/relation/provider. Each member element of

32614 the container is represented as a class variable - with a specific

32615 YANG type.

32616

32617 YANG Description: Execution environment that offers an endpoint for a particular service

32618 """

32619 __slots__ = ('_path_helper', '_extmethods', '__vdu_profile_id','__kdu_resource_profile_id','__vnf_profile_id','__execution_environment_ref','__endpoint',)

32620

32621 _yang_name = 'provider'

32622 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

32623

32624 _pybind_generated_by = 'container'

32625

32626 def __init__(self, *args, **kwargs):

32627

32628 self._path_helper = False

32629

32630 self._extmethods = False

32631 self.__vdu_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="vdu-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)

32632 self.__kdu_resource_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="kdu-resource-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32633 self.__vnf_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="vnf-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)

32634 self.__execution_environment_ref = YANGDynClass(base=str, default=str(""), is_leaf=True, yang_name="execution-environment-ref", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32635 self.__endpoint = YANGDynClass(base=str, is_leaf=True, yang_name="endpoint", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32636

32637 load = kwargs.pop("load", None)

32638 if args:

32639 if len(args) > 1:

32640 raise TypeError("cannot create a YANG container with >1 argument")

32641 all_attr = True

32642 for e in self._pyangbind_elements:

32643 if not hasattr(args[0], e):

32644 all_attr = False

32645 break

32646 if not all_attr:

32647 raise ValueError("Supplied object did not have the correct attributes")

32648 for e in self._pyangbind_elements:

32649 nobj = getattr(args[0], e)

32650 if nobj._changed() is False:

32651 continue

32652 setmethod = getattr(self, "_set_%s" % e)

32653 if load is None:

32654 setmethod(getattr(args[0], e))

32655 else:

32656 setmethod(getattr(args[0], e), load=load)

32657

32658 def _path(self):

32659 if hasattr(self, "_parent"):

32660 return self._parent._path()+[self._yang_name]

32661 else:

32662 return ['nsd', 'nsd', 'ns-configuration', 'relation', 'provider']

32663

32664 def _get_vdu_profile_id(self):

32665 """

32666 Getter method for vdu_profile_id, mapped from YANG variable /nsd/nsd/ns_configuration/relation/provider/vdu_profile_id (leafref)

32667

32668 YANG Description: If the execution environment is associated to a vdu object,

32669 this parameter is the reference to the vdu-profile id.

32670 """

32671 return self.__vdu_profile_id

32672

32673 def _set_vdu_profile_id(self, v, load=False):

32674 """

32675 Setter method for vdu_profile_id, mapped from YANG variable /nsd/nsd/ns_configuration/relation/provider/vdu_profile_id (leafref)

32676 If this variable is read-only (config: false) in the

32677 source YANG file, then _set_vdu_profile_id is considered as a private

32678 method. Backends looking to populate this variable should

32679 do so via calling thisObj._set_vdu_profile_id() directly.

32680

32681 YANG Description: If the execution environment is associated to a vdu object,

32682 this parameter is the reference to the vdu-profile id.

32683 """

32684 if hasattr(v, "_utype"):

32685 v = v._utype(v)

32686 try:

32687 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="vdu-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)

32688 except (TypeError, ValueError):

32689 raise ValueError({

32690 'error-string': """vdu_profile_id must be of a type compatible with leafref""",

32691 'defined-type': "leafref",

32692 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="vdu-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)""",

32693 })

32694

32695 self.__vdu_profile_id = t

32696 if hasattr(self, '_set'):

32697 self._set()

32698

32699 def _unset_vdu_profile_id(self):

32700 self.__vdu_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="vdu-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)

32701

32702

32703 def _get_kdu_resource_profile_id(self):

32704 """

32705 Getter method for kdu_resource_profile_id, mapped from YANG variable /nsd/nsd/ns_configuration/relation/provider/kdu_resource_profile_id (string)

32706

32707 YANG Description: If the execution environment is associated to a kdu resource object,

32708 this parameter is the reference to the kdu-resource-profile id.

32709 """

32710 return self.__kdu_resource_profile_id

32711

32712 def _set_kdu_resource_profile_id(self, v, load=False):

32713 """

32714 Setter method for kdu_resource_profile_id, mapped from YANG variable /nsd/nsd/ns_configuration/relation/provider/kdu_resource_profile_id (string)

32715 If this variable is read-only (config: false) in the

32716 source YANG file, then _set_kdu_resource_profile_id is considered as a private

32717 method. Backends looking to populate this variable should

32718 do so via calling thisObj._set_kdu_resource_profile_id() directly.

32719

32720 YANG Description: If the execution environment is associated to a kdu resource object,

32721 this parameter is the reference to the kdu-resource-profile id.

32722 """

32723 if hasattr(v, "_utype"):

32724 v = v._utype(v)

32725 try:

32726 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="kdu-resource-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32727 except (TypeError, ValueError):

32728 raise ValueError({

32729 'error-string': """kdu_resource_profile_id must be of a type compatible with string""",

32730 'defined-type': "string",

32731 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="kdu-resource-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

32732 })

32733

32734 self.__kdu_resource_profile_id = t

32735 if hasattr(self, '_set'):

32736 self._set()

32737

32738 def _unset_kdu_resource_profile_id(self):

32739 self.__kdu_resource_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="kdu-resource-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32740

32741

32742 def _get_vnf_profile_id(self):

32743 """

32744 Getter method for vnf_profile_id, mapped from YANG variable /nsd/nsd/ns_configuration/relation/provider/vnf_profile_id (leafref)

32745

32746 YANG Description: If the execution environment is associated to a vnf object,

32747 this parameter is the reference to the vnf-profile id.

32748 Only valid in the NSd. The value is implicit in a VNFd.

32749 To reference an execution environment associated to a vnf object

32750 from the VNFd, none of the profile ids need to be specified.

32751 """

32752 return self.__vnf_profile_id

32753

32754 def _set_vnf_profile_id(self, v, load=False):

32755 """

32756 Setter method for vnf_profile_id, mapped from YANG variable /nsd/nsd/ns_configuration/relation/provider/vnf_profile_id (leafref)

32757 If this variable is read-only (config: false) in the

32758 source YANG file, then _set_vnf_profile_id is considered as a private

32759 method. Backends looking to populate this variable should

32760 do so via calling thisObj._set_vnf_profile_id() directly.

32761

32762 YANG Description: If the execution environment is associated to a vnf object,

32763 this parameter is the reference to the vnf-profile id.

32764 Only valid in the NSd. The value is implicit in a VNFd.

32765 To reference an execution environment associated to a vnf object

32766 from the VNFd, none of the profile ids need to be specified.

32767 """

32768 if hasattr(v, "_utype"):

32769 v = v._utype(v)

32770 try:

32771 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="vnf-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)

32772 except (TypeError, ValueError):

32773 raise ValueError({

32774 'error-string': """vnf_profile_id must be of a type compatible with leafref""",

32775 'defined-type': "leafref",

32776 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="vnf-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)""",

32777 })

32778

32779 self.__vnf_profile_id = t

32780 if hasattr(self, '_set'):

32781 self._set()

32782

32783 def _unset_vnf_profile_id(self):

32784 self.__vnf_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="vnf-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)

32785

32786

32787 def _get_execution_environment_ref(self):

32788 """

32789 Getter method for execution_environment_ref, mapped from YANG variable /nsd/nsd/ns_configuration/relation/provider/execution_environment_ref (string)

32790

32791 YANG Description: Optional reference to the execution environment id.

32792 Only needed if there is more than one execution environment

32793 in the execution-environment-list of an object.

32794 """

32795 return self.__execution_environment_ref

32796

32797 def _set_execution_environment_ref(self, v, load=False):

32798 """

32799 Setter method for execution_environment_ref, mapped from YANG variable /nsd/nsd/ns_configuration/relation/provider/execution_environment_ref (string)

32800 If this variable is read-only (config: false) in the

32801 source YANG file, then _set_execution_environment_ref is considered as a private

32802 method. Backends looking to populate this variable should

32803 do so via calling thisObj._set_execution_environment_ref() directly.

32804

32805 YANG Description: Optional reference to the execution environment id.

32806 Only needed if there is more than one execution environment

32807 in the execution-environment-list of an object.

32808 """

32809 if hasattr(v, "_utype"):

32810 v = v._utype(v)

32811 try:

32812 t = YANGDynClass(v,base=str, default=str(""), is_leaf=True, yang_name="execution-environment-ref", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32813 except (TypeError, ValueError):

32814 raise ValueError({

32815 'error-string': """execution_environment_ref must be of a type compatible with string""",

32816 'defined-type': "string",

32817 'generated-type': """YANGDynClass(base=str, default=str(""), is_leaf=True, yang_name="execution-environment-ref", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

32818 })

32819

32820 self.__execution_environment_ref = t

32821 if hasattr(self, '_set'):

32822 self._set()

32823

32824 def _unset_execution_environment_ref(self):

32825 self.__execution_environment_ref = YANGDynClass(base=str, default=str(""), is_leaf=True, yang_name="execution-environment-ref", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32826

32827

32828 def _get_endpoint(self):

32829 """

32830 Getter method for endpoint, mapped from YANG variable /nsd/nsd/ns_configuration/relation/provider/endpoint (string)

32831

32832 YANG Description: Endpoint name of the execution environment.

32833 """

32834 return self.__endpoint

32835

32836 def _set_endpoint(self, v, load=False):

32837 """

32838 Setter method for endpoint, mapped from YANG variable /nsd/nsd/ns_configuration/relation/provider/endpoint (string)

32839 If this variable is read-only (config: false) in the

32840 source YANG file, then _set_endpoint is considered as a private

32841 method. Backends looking to populate this variable should

32842 do so via calling thisObj._set_endpoint() directly.

32843

32844 YANG Description: Endpoint name of the execution environment.

32845 """

32846 if hasattr(v, "_utype"):

32847 v = v._utype(v)

32848 try:

32849 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="endpoint", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32850 except (TypeError, ValueError):

32851 raise ValueError({

32852 'error-string': """endpoint must be of a type compatible with string""",

32853 'defined-type': "string",

32854 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="endpoint", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

32855 })

32856

32857 self.__endpoint = t

32858 if hasattr(self, '_set'):

32859 self._set()

32860

32861 def _unset_endpoint(self):

32862 self.__endpoint = YANGDynClass(base=str, is_leaf=True, yang_name="endpoint", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32863

32864 vdu_profile_id = __builtin__.property(_get_vdu_profile_id, _set_vdu_profile_id)

32865 kdu_resource_profile_id = __builtin__.property(_get_kdu_resource_profile_id, _set_kdu_resource_profile_id)

32866 vnf_profile_id = __builtin__.property(_get_vnf_profile_id, _set_vnf_profile_id)

32867 execution_environment_ref = __builtin__.property(_get_execution_environment_ref, _set_execution_environment_ref)

32868 endpoint = __builtin__.property(_get_endpoint, _set_endpoint)

32869

32870

32871 _pyangbind_elements = OrderedDict([('vdu_profile_id', vdu_profile_id), ('kdu_resource_profile_id', kdu_resource_profile_id), ('vnf_profile_id', vnf_profile_id), ('execution_environment_ref', execution_environment_ref), ('endpoint', endpoint), ])

32872

32873

32874 class yc_requirer_etsi_nfv_nsd__nsd_nsd_ns_configuration_relation_requirer(PybindBase):

32875 """

32876 This class was auto-generated by the PythonClass plugin for PYANG

32877 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/ns-configuration/relation/requirer. Each member element of

32878 the container is represented as a class variable - with a specific

32879 YANG type.

32880

32881 YANG Description: Execution environment that uses the service provided by the provider

32882 """

32883 __slots__ = ('_path_helper', '_extmethods', '__vdu_profile_id','__kdu_resource_profile_id','__vnf_profile_id','__execution_environment_ref','__endpoint',)

32884

32885 _yang_name = 'requirer'

32886 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

32887

32888 _pybind_generated_by = 'container'

32889

32890 def __init__(self, *args, **kwargs):

32891

32892 self._path_helper = False

32893

32894 self._extmethods = False

32895 self.__vdu_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="vdu-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)

32896 self.__kdu_resource_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="kdu-resource-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32897 self.__vnf_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="vnf-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)

32898 self.__execution_environment_ref = YANGDynClass(base=str, default=str(""), is_leaf=True, yang_name="execution-environment-ref", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32899 self.__endpoint = YANGDynClass(base=str, is_leaf=True, yang_name="endpoint", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32900

32901 load = kwargs.pop("load", None)

32902 if args:

32903 if len(args) > 1:

32904 raise TypeError("cannot create a YANG container with >1 argument")

32905 all_attr = True

32906 for e in self._pyangbind_elements:

32907 if not hasattr(args[0], e):

32908 all_attr = False

32909 break

32910 if not all_attr:

32911 raise ValueError("Supplied object did not have the correct attributes")

32912 for e in self._pyangbind_elements:

32913 nobj = getattr(args[0], e)

32914 if nobj._changed() is False:

32915 continue

32916 setmethod = getattr(self, "_set_%s" % e)

32917 if load is None:

32918 setmethod(getattr(args[0], e))

32919 else:

32920 setmethod(getattr(args[0], e), load=load)

32921

32922 def _path(self):

32923 if hasattr(self, "_parent"):

32924 return self._parent._path()+[self._yang_name]

32925 else:

32926 return ['nsd', 'nsd', 'ns-configuration', 'relation', 'requirer']

32927

32928 def _get_vdu_profile_id(self):

32929 """

32930 Getter method for vdu_profile_id, mapped from YANG variable /nsd/nsd/ns_configuration/relation/requirer/vdu_profile_id (leafref)

32931

32932 YANG Description: If the execution environment is associated to a vdu object,

32933 this parameter is the reference to the vdu-profile id.

32934 """

32935 return self.__vdu_profile_id

32936

32937 def _set_vdu_profile_id(self, v, load=False):

32938 """

32939 Setter method for vdu_profile_id, mapped from YANG variable /nsd/nsd/ns_configuration/relation/requirer/vdu_profile_id (leafref)

32940 If this variable is read-only (config: false) in the

32941 source YANG file, then _set_vdu_profile_id is considered as a private

32942 method. Backends looking to populate this variable should

32943 do so via calling thisObj._set_vdu_profile_id() directly.

32944

32945 YANG Description: If the execution environment is associated to a vdu object,

32946 this parameter is the reference to the vdu-profile id.

32947 """

32948 if hasattr(v, "_utype"):

32949 v = v._utype(v)

32950 try:

32951 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="vdu-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)

32952 except (TypeError, ValueError):

32953 raise ValueError({

32954 'error-string': """vdu_profile_id must be of a type compatible with leafref""",

32955 'defined-type': "leafref",

32956 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="vdu-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)""",

32957 })

32958

32959 self.__vdu_profile_id = t

32960 if hasattr(self, '_set'):

32961 self._set()

32962

32963 def _unset_vdu_profile_id(self):

32964 self.__vdu_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="vdu-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)

32965

32966

32967 def _get_kdu_resource_profile_id(self):

32968 """

32969 Getter method for kdu_resource_profile_id, mapped from YANG variable /nsd/nsd/ns_configuration/relation/requirer/kdu_resource_profile_id (string)

32970

32971 YANG Description: If the execution environment is associated to a kdu resource object,

32972 this parameter is the reference to the kdu-resource-profile id.

32973 """

32974 return self.__kdu_resource_profile_id

32975

32976 def _set_kdu_resource_profile_id(self, v, load=False):

32977 """

32978 Setter method for kdu_resource_profile_id, mapped from YANG variable /nsd/nsd/ns_configuration/relation/requirer/kdu_resource_profile_id (string)

32979 If this variable is read-only (config: false) in the

32980 source YANG file, then _set_kdu_resource_profile_id is considered as a private

32981 method. Backends looking to populate this variable should

32982 do so via calling thisObj._set_kdu_resource_profile_id() directly.

32983

32984 YANG Description: If the execution environment is associated to a kdu resource object,

32985 this parameter is the reference to the kdu-resource-profile id.

32986 """

32987 if hasattr(v, "_utype"):

32988 v = v._utype(v)

32989 try:

32990 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="kdu-resource-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

32991 except (TypeError, ValueError):

32992 raise ValueError({

32993 'error-string': """kdu_resource_profile_id must be of a type compatible with string""",

32994 'defined-type': "string",

32995 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="kdu-resource-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

32996 })

32997

32998 self.__kdu_resource_profile_id = t

32999 if hasattr(self, '_set'):

33000 self._set()

33001

33002 def _unset_kdu_resource_profile_id(self):

33003 self.__kdu_resource_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="kdu-resource-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

33004

33005

33006 def _get_vnf_profile_id(self):

33007 """

33008 Getter method for vnf_profile_id, mapped from YANG variable /nsd/nsd/ns_configuration/relation/requirer/vnf_profile_id (leafref)

33009

33010 YANG Description: If the execution environment is associated to a vnf object,

33011 this parameter is the reference to the vnf-profile id.

33012 Only valid in the NSd. The value is implicit in a VNFd.

33013 To reference an execution environment associated to a vnf object

33014 from the VNFd, none of the profile ids need to be specified.

33015 """

33016 return self.__vnf_profile_id

33017

33018 def _set_vnf_profile_id(self, v, load=False):

33019 """

33020 Setter method for vnf_profile_id, mapped from YANG variable /nsd/nsd/ns_configuration/relation/requirer/vnf_profile_id (leafref)

33021 If this variable is read-only (config: false) in the

33022 source YANG file, then _set_vnf_profile_id is considered as a private

33023 method. Backends looking to populate this variable should

33024 do so via calling thisObj._set_vnf_profile_id() directly.

33025

33026 YANG Description: If the execution environment is associated to a vnf object,

33027 this parameter is the reference to the vnf-profile id.

33028 Only valid in the NSd. The value is implicit in a VNFd.

33029 To reference an execution environment associated to a vnf object

33030 from the VNFd, none of the profile ids need to be specified.

33031 """

33032 if hasattr(v, "_utype"):

33033 v = v._utype(v)

33034 try:

33035 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="vnf-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)

33036 except (TypeError, ValueError):

33037 raise ValueError({

33038 'error-string': """vnf_profile_id must be of a type compatible with leafref""",

33039 'defined-type': "leafref",

33040 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="vnf-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)""",

33041 })

33042

33043 self.__vnf_profile_id = t

33044 if hasattr(self, '_set'):

33045 self._set()

33046

33047 def _unset_vnf_profile_id(self):

33048 self.__vnf_profile_id = YANGDynClass(base=str, is_leaf=True, yang_name="vnf-profile-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='leafref', is_config=True)

33049

33050

33051 def _get_execution_environment_ref(self):

33052 """

33053 Getter method for execution_environment_ref, mapped from YANG variable /nsd/nsd/ns_configuration/relation/requirer/execution_environment_ref (string)

33054

33055 YANG Description: Optional reference to the execution environment id.

33056 Only needed if there is more than one execution environment

33057 in the execution-environment-list of an object.

33058 """

33059 return self.__execution_environment_ref

33060

33061 def _set_execution_environment_ref(self, v, load=False):

33062 """

33063 Setter method for execution_environment_ref, mapped from YANG variable /nsd/nsd/ns_configuration/relation/requirer/execution_environment_ref (string)

33064 If this variable is read-only (config: false) in the

33065 source YANG file, then _set_execution_environment_ref is considered as a private

33066 method. Backends looking to populate this variable should

33067 do so via calling thisObj._set_execution_environment_ref() directly.

33068

33069 YANG Description: Optional reference to the execution environment id.

33070 Only needed if there is more than one execution environment

33071 in the execution-environment-list of an object.

33072 """

33073 if hasattr(v, "_utype"):

33074 v = v._utype(v)

33075 try:

33076 t = YANGDynClass(v,base=str, default=str(""), is_leaf=True, yang_name="execution-environment-ref", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

33077 except (TypeError, ValueError):

33078 raise ValueError({

33079 'error-string': """execution_environment_ref must be of a type compatible with string""",

33080 'defined-type': "string",

33081 'generated-type': """YANGDynClass(base=str, default=str(""), is_leaf=True, yang_name="execution-environment-ref", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

33082 })

33083

33084 self.__execution_environment_ref = t

33085 if hasattr(self, '_set'):

33086 self._set()

33087

33088 def _unset_execution_environment_ref(self):

33089 self.__execution_environment_ref = YANGDynClass(base=str, default=str(""), is_leaf=True, yang_name="execution-environment-ref", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

33090

33091

33092 def _get_endpoint(self):

33093 """

33094 Getter method for endpoint, mapped from YANG variable /nsd/nsd/ns_configuration/relation/requirer/endpoint (string)

33095

33096 YANG Description: Endpoint name of the execution environment.

33097 """

33098 return self.__endpoint

33099

33100 def _set_endpoint(self, v, load=False):

33101 """

33102 Setter method for endpoint, mapped from YANG variable /nsd/nsd/ns_configuration/relation/requirer/endpoint (string)

33103 If this variable is read-only (config: false) in the

33104 source YANG file, then _set_endpoint is considered as a private

33105 method. Backends looking to populate this variable should

33106 do so via calling thisObj._set_endpoint() directly.

33107

33108 YANG Description: Endpoint name of the execution environment.

33109 """

33110 if hasattr(v, "_utype"):

33111 v = v._utype(v)

33112 try:

33113 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="endpoint", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

33114 except (TypeError, ValueError):

33115 raise ValueError({

33116 'error-string': """endpoint must be of a type compatible with string""",

33117 'defined-type': "string",

33118 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="endpoint", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

33119 })

33120

33121 self.__endpoint = t

33122 if hasattr(self, '_set'):

33123 self._set()

33124

33125 def _unset_endpoint(self):

33126 self.__endpoint = YANGDynClass(base=str, is_leaf=True, yang_name="endpoint", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

33127

33128 vdu_profile_id = __builtin__.property(_get_vdu_profile_id, _set_vdu_profile_id)

33129 kdu_resource_profile_id = __builtin__.property(_get_kdu_resource_profile_id, _set_kdu_resource_profile_id)

33130 vnf_profile_id = __builtin__.property(_get_vnf_profile_id, _set_vnf_profile_id)

33131 execution_environment_ref = __builtin__.property(_get_execution_environment_ref, _set_execution_environment_ref)

33132 endpoint = __builtin__.property(_get_endpoint, _set_endpoint)

33133

33134

33135 _pyangbind_elements = OrderedDict([('vdu_profile_id', vdu_profile_id), ('kdu_resource_profile_id', kdu_resource_profile_id), ('vnf_profile_id', vnf_profile_id), ('execution_environment_ref', execution_environment_ref), ('endpoint', endpoint), ])

33136

33137

33138 class yc_entities_etsi_nfv_nsd__nsd_nsd_ns_configuration_relation_entities(PybindBase):

33139 """

33140 This class was auto-generated by the PythonClass plugin for PYANG

33141 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/ns-configuration/relation/entities. Each member element of

33142 the container is represented as a class variable - with a specific

33143 YANG type.

33144

33145 YANG Description: DEPRECATION NOTICE: use provider and requirer instead.

33146 List of two elements to be related.

33147 Elements to be related are identified by a pair (id, endpoint).

33148 The relation will relate (id1, endpoint1) to (id2, endpoint2).

33149 """

33150 __slots__ = ('_path_helper', '_extmethods', '__id','__endpoint',)

33151

33152 _yang_name = 'entities'

33153 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

33154

33155 _pybind_generated_by = 'container'

33156

33157 def __init__(self, *args, **kwargs):

33158

33159 self._path_helper = False

33160

33161 self._extmethods = False

33162 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

33163 self.__endpoint = YANGDynClass(base=str, is_leaf=True, yang_name="endpoint", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

33164

33165 load = kwargs.pop("load", None)

33166 if args:

33167 if len(args) > 1:

33168 raise TypeError("cannot create a YANG container with >1 argument")

33169 all_attr = True

33170 for e in self._pyangbind_elements:

33171 if not hasattr(args[0], e):

33172 all_attr = False

33173 break

33174 if not all_attr:

33175 raise ValueError("Supplied object did not have the correct attributes")

33176 for e in self._pyangbind_elements:

33177 nobj = getattr(args[0], e)

33178 if nobj._changed() is False:

33179 continue

33180 setmethod = getattr(self, "_set_%s" % e)

33181 if load is None:

33182 setmethod(getattr(args[0], e))

33183 else:

33184 setmethod(getattr(args[0], e), load=load)

33185

33186 def _path(self):

33187 if hasattr(self, "_parent"):

33188 return self._parent._path()+[self._yang_name]

33189 else:

33190 return ['nsd', 'nsd', 'ns-configuration', 'relation', 'entities']

33191

33192 def _get_id(self):

33193 """

33194 Getter method for id, mapped from YANG variable /nsd/nsd/ns_configuration/relation/entities/id (string)

33195

33196 YANG Description: A string, reference to the element id in the descriptor.

33197 It could be a vnfd-id or a vdu-id in a VNFD,

33198 or a nsd-id or member-vnf-index in a NSD.

33199 """

33200 return self.__id

33201

33202 def _set_id(self, v, load=False):

33203 """

33204 Setter method for id, mapped from YANG variable /nsd/nsd/ns_configuration/relation/entities/id (string)

33205 If this variable is read-only (config: false) in the

33206 source YANG file, then _set_id is considered as a private

33207 method. Backends looking to populate this variable should

33208 do so via calling thisObj._set_id() directly.

33209

33210 YANG Description: A string, reference to the element id in the descriptor.

33211 It could be a vnfd-id or a vdu-id in a VNFD,

33212 or a nsd-id or member-vnf-index in a NSD.

33213 """

33214 parent = getattr(self, "_parent", None)

33215 if parent is not None and load is False:

33216 raise AttributeError("Cannot set keys directly when" +

33217 " within an instantiated list")

33218

33219 if hasattr(v, "_utype"):

33220 v = v._utype(v)

33221 try:

33222 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

33223 except (TypeError, ValueError):

33224 raise ValueError({

33225 'error-string': """id must be of a type compatible with string""",

33226 'defined-type': "string",

33227 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

33228 })

33229

33230 self.__id = t

33231 if hasattr(self, '_set'):

33232 self._set()

33233

33234 def _unset_id(self):

33235 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

33236

33237

33238 def _get_endpoint(self):

33239 """

33240 Getter method for endpoint, mapped from YANG variable /nsd/nsd/ns_configuration/relation/entities/endpoint (string)

33241

33242 YANG Description: Endpoint name defining the relation.

33243 """

33244 return self.__endpoint

33245

33246 def _set_endpoint(self, v, load=False):

33247 """

33248 Setter method for endpoint, mapped from YANG variable /nsd/nsd/ns_configuration/relation/entities/endpoint (string)

33249 If this variable is read-only (config: false) in the

33250 source YANG file, then _set_endpoint is considered as a private

33251 method. Backends looking to populate this variable should

33252 do so via calling thisObj._set_endpoint() directly.

33253

33254 YANG Description: Endpoint name defining the relation.

33255 """

33256 if hasattr(v, "_utype"):

33257 v = v._utype(v)

33258 try:

33259 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="endpoint", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

33260 except (TypeError, ValueError):

33261 raise ValueError({

33262 'error-string': """endpoint must be of a type compatible with string""",

33263 'defined-type': "string",

33264 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="endpoint", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

33265 })

33266

33267 self.__endpoint = t

33268 if hasattr(self, '_set'):

33269 self._set()

33270

33271 def _unset_endpoint(self):

33272 self.__endpoint = YANGDynClass(base=str, is_leaf=True, yang_name="endpoint", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

33273

33274 id = __builtin__.property(_get_id, _set_id)

33275 endpoint = __builtin__.property(_get_endpoint, _set_endpoint)

33276

33277

33278 _pyangbind_elements = OrderedDict([('id', id), ('endpoint', endpoint), ])

33279

33280

33281 class yc_relation_etsi_nfv_nsd__nsd_nsd_ns_configuration_relation(PybindBase):

33282 """

33283 This class was auto-generated by the PythonClass plugin for PYANG

33284 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/ns-configuration/relation. Each member element of

33285 the container is represented as a class variable - with a specific

33286 YANG type.

33287

33288 YANG Description: List of relations between elements in this descriptor.

33289 The relations are used to integrate pairs of execution environments,

33290 that are in charge of the configuration and lifecycle management

33291 of VDUs, VNFs, KDUs, or NSs.

33292 Each relation is formed by a provider and a requirer.

33293 The provider is the execution environment that provides a particular service.

33294 The requirer is the execution environment that requires the service provided by the provider

33295 """

33296 __slots__ = ('_path_helper', '_extmethods', '__name','__provider','__requirer','__entities',)

33297

33298 _yang_name = 'relation'

33299 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

33300

33301 _pybind_generated_by = 'container'

33302

33303 def __init__(self, *args, **kwargs):

33304

33305 self._path_helper = False

33306

33307 self._extmethods = False

33308 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

33309 self.__provider = YANGDynClass(base=yc_provider_etsi_nfv_nsd__nsd_nsd_ns_configuration_relation_provider, is_container='container', yang_name="provider", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='container', is_config=True)

33310 self.__requirer = YANGDynClass(base=yc_requirer_etsi_nfv_nsd__nsd_nsd_ns_configuration_relation_requirer, is_container='container', yang_name="requirer", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='container', is_config=True)

33311 self.__entities = YANGDynClass(base=YANGListType("id",yc_entities_etsi_nfv_nsd__nsd_nsd_ns_configuration_relation_entities, yang_name="entities", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="entities", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

33312

33313 load = kwargs.pop("load", None)

33314 if args:

33315 if len(args) > 1:

33316 raise TypeError("cannot create a YANG container with >1 argument")

33317 all_attr = True

33318 for e in self._pyangbind_elements:

33319 if not hasattr(args[0], e):

33320 all_attr = False

33321 break

33322 if not all_attr:

33323 raise ValueError("Supplied object did not have the correct attributes")

33324 for e in self._pyangbind_elements:

33325 nobj = getattr(args[0], e)

33326 if nobj._changed() is False:

33327 continue

33328 setmethod = getattr(self, "_set_%s" % e)

33329 if load is None:

33330 setmethod(getattr(args[0], e))

33331 else:

33332 setmethod(getattr(args[0], e), load=load)

33333

33334 def _path(self):

33335 if hasattr(self, "_parent"):

33336 return self._parent._path()+[self._yang_name]

33337 else:

33338 return ['nsd', 'nsd', 'ns-configuration', 'relation']

33339

33340 def _get_name(self):

33341 """

33342 Getter method for name, mapped from YANG variable /nsd/nsd/ns_configuration/relation/name (string)

33343

33344 YANG Description: Name of the relation.

33345 """

33346 return self.__name

33347

33348 def _set_name(self, v, load=False):

33349 """

33350 Setter method for name, mapped from YANG variable /nsd/nsd/ns_configuration/relation/name (string)

33351 If this variable is read-only (config: false) in the

33352 source YANG file, then _set_name is considered as a private

33353 method. Backends looking to populate this variable should

33354 do so via calling thisObj._set_name() directly.

33355

33356 YANG Description: Name of the relation.

33357 """

33358 parent = getattr(self, "_parent", None)

33359 if parent is not None and load is False:

33360 raise AttributeError("Cannot set keys directly when" +

33361 " within an instantiated list")

33362

33363 if hasattr(v, "_utype"):

33364 v = v._utype(v)

33365 try:

33366 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

33367 except (TypeError, ValueError):

33368 raise ValueError({

33369 'error-string': """name must be of a type compatible with string""",

33370 'defined-type': "string",

33371 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)""",

33372 })

33373

33374 self.__name = t

33375 if hasattr(self, '_set'):

33376 self._set()

33377

33378 def _unset_name(self):

33379 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='string', is_config=True)

33380

33381

33382 def _get_provider(self):

33383 """

33384 Getter method for provider, mapped from YANG variable /nsd/nsd/ns_configuration/relation/provider (container)

33385

33386 YANG Description: Execution environment that offers an endpoint for a particular service

33387 """

33388 return self.__provider

33389

33390 def _set_provider(self, v, load=False):

33391 """

33392 Setter method for provider, mapped from YANG variable /nsd/nsd/ns_configuration/relation/provider (container)

33393 If this variable is read-only (config: false) in the

33394 source YANG file, then _set_provider is considered as a private

33395 method. Backends looking to populate this variable should

33396 do so via calling thisObj._set_provider() directly.

33397

33398 YANG Description: Execution environment that offers an endpoint for a particular service

33399 """

33400 if hasattr(v, "_utype"):

33401 v = v._utype(v)

33402 try:

33403 t = YANGDynClass(v,base=yc_provider_etsi_nfv_nsd__nsd_nsd_ns_configuration_relation_provider, is_container='container', yang_name="provider", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='container', is_config=True)

33404 except (TypeError, ValueError):

33405 raise ValueError({

33406 'error-string': """provider must be of a type compatible with container""",

33407 'defined-type': "container",

33408 'generated-type': """YANGDynClass(base=yc_provider_etsi_nfv_nsd__nsd_nsd_ns_configuration_relation_provider, is_container='container', yang_name="provider", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='container', is_config=True)""",

33409 })

33410

33411 self.__provider = t

33412 if hasattr(self, '_set'):

33413 self._set()

33414

33415 def _unset_provider(self):

33416 self.__provider = YANGDynClass(base=yc_provider_etsi_nfv_nsd__nsd_nsd_ns_configuration_relation_provider, is_container='container', yang_name="provider", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='container', is_config=True)

33417

33418

33419 def _get_requirer(self):

33420 """

33421 Getter method for requirer, mapped from YANG variable /nsd/nsd/ns_configuration/relation/requirer (container)

33422

33423 YANG Description: Execution environment that uses the service provided by the provider

33424 """

33425 return self.__requirer

33426

33427 def _set_requirer(self, v, load=False):

33428 """

33429 Setter method for requirer, mapped from YANG variable /nsd/nsd/ns_configuration/relation/requirer (container)

33430 If this variable is read-only (config: false) in the

33431 source YANG file, then _set_requirer is considered as a private

33432 method. Backends looking to populate this variable should

33433 do so via calling thisObj._set_requirer() directly.

33434

33435 YANG Description: Execution environment that uses the service provided by the provider

33436 """

33437 if hasattr(v, "_utype"):

33438 v = v._utype(v)

33439 try:

33440 t = YANGDynClass(v,base=yc_requirer_etsi_nfv_nsd__nsd_nsd_ns_configuration_relation_requirer, is_container='container', yang_name="requirer", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='container', is_config=True)

33441 except (TypeError, ValueError):

33442 raise ValueError({

33443 'error-string': """requirer must be of a type compatible with container""",

33444 'defined-type': "container",

33445 'generated-type': """YANGDynClass(base=yc_requirer_etsi_nfv_nsd__nsd_nsd_ns_configuration_relation_requirer, is_container='container', yang_name="requirer", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='container', is_config=True)""",

33446 })

33447

33448 self.__requirer = t

33449 if hasattr(self, '_set'):

33450 self._set()

33451

33452 def _unset_requirer(self):

33453 self.__requirer = YANGDynClass(base=yc_requirer_etsi_nfv_nsd__nsd_nsd_ns_configuration_relation_requirer, is_container='container', yang_name="requirer", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='container', is_config=True)

33454

33455

33456 def _get_entities(self):

33457 """

33458 Getter method for entities, mapped from YANG variable /nsd/nsd/ns_configuration/relation/entities (list)

33459

33460 YANG Description: DEPRECATION NOTICE: use provider and requirer instead.

33461 List of two elements to be related.

33462 Elements to be related are identified by a pair (id, endpoint).

33463 The relation will relate (id1, endpoint1) to (id2, endpoint2).

33464 """

33465 return self.__entities

33466

33467 def _set_entities(self, v, load=False):

33468 """

33469 Setter method for entities, mapped from YANG variable /nsd/nsd/ns_configuration/relation/entities (list)

33470 If this variable is read-only (config: false) in the

33471 source YANG file, then _set_entities is considered as a private

33472 method. Backends looking to populate this variable should

33473 do so via calling thisObj._set_entities() directly.

33474

33475 YANG Description: DEPRECATION NOTICE: use provider and requirer instead.

33476 List of two elements to be related.

33477 Elements to be related are identified by a pair (id, endpoint).

33478 The relation will relate (id1, endpoint1) to (id2, endpoint2).

33479 """

33480 if hasattr(v, "_utype"):

33481 v = v._utype(v)

33482 try:

33483 t = YANGDynClass(v,base=YANGListType("id",yc_entities_etsi_nfv_nsd__nsd_nsd_ns_configuration_relation_entities, yang_name="entities", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="entities", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

33484 except (TypeError, ValueError):

33485 raise ValueError({

33486 'error-string': """entities must be of a type compatible with list""",

33487 'defined-type': "list",

33488 'generated-type': """YANGDynClass(base=YANGListType("id",yc_entities_etsi_nfv_nsd__nsd_nsd_ns_configuration_relation_entities, yang_name="entities", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="entities", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)""",

33489 })

33490

33491 self.__entities = t

33492 if hasattr(self, '_set'):

33493 self._set()

33494

33495 def _unset_entities(self):

33496 self.__entities = YANGDynClass(base=YANGListType("id",yc_entities_etsi_nfv_nsd__nsd_nsd_ns_configuration_relation_entities, yang_name="entities", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="entities", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

33497

33498 name = __builtin__.property(_get_name, _set_name)

33499 provider = __builtin__.property(_get_provider, _set_provider)

33500 requirer = __builtin__.property(_get_requirer, _set_requirer)

33501 entities = __builtin__.property(_get_entities, _set_entities)

33502

33503

33504 _pyangbind_elements = OrderedDict([('name', name), ('provider', provider), ('requirer', requirer), ('entities', entities), ])

33505

33506

33507 class yc_ns_configuration_etsi_nfv_nsd__nsd_nsd_ns_configuration(PybindBase):

33508 """

33509 This class was auto-generated by the PythonClass plugin for PYANG

33510 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd/ns-configuration. Each member element of

33511 the container is represented as a class variable - with a specific

33512 YANG type.

33513

33514 YANG Description: Information about NS configuration.

33515 """

33516 __slots__ = ('_path_helper', '_extmethods', '__script','__juju','__execution_environment_list','__config_primitive','__initial_config_primitive','__terminate_config_primitive','__metrics','__relation',)

33517

33518 _yang_name = 'ns-configuration'

33519 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

33520

33521 _pybind_generated_by = 'container'

33522

33523 def __init__(self, *args, **kwargs):

33524

33525 self._path_helper = False

33526

33527 self._extmethods = False

33528 self.__script = YANGDynClass(base=yc_script_etsi_nfv_nsd__nsd_nsd_ns_configuration_script, is_container='container', yang_name="script", parent=self, choice=('config-method', 'script'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='container', is_config=True)

33529 self.__juju = YANGDynClass(base=yc_juju_etsi_nfv_nsd__nsd_nsd_ns_configuration_juju, is_container='container', yang_name="juju", parent=self, choice=('config-method', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='container', is_config=True)

33530 self.__execution_environment_list = YANGDynClass(base=YANGListType("id",yc_execution_environment_list_etsi_nfv_nsd__nsd_nsd_ns_configuration_execution_environment_list, yang_name="execution-environment-list", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None, choice=False), is_container='list', yang_name="execution-environment-list", parent=self, choice=('config-method', 'execution-environment-list'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

33531 self.__config_primitive = YANGDynClass(base=YANGListType("name",yc_config_primitive_etsi_nfv_nsd__nsd_nsd_ns_configuration_config_primitive, yang_name="config-primitive", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="config-primitive", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

33532 self.__initial_config_primitive = YANGDynClass(base=YANGListType("seq",yc_initial_config_primitive_etsi_nfv_nsd__nsd_nsd_ns_configuration_initial_config_primitive, yang_name="initial-config-primitive", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='seq', extensions=None), is_container='list', yang_name="initial-config-primitive", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

33533 self.__terminate_config_primitive = YANGDynClass(base=YANGListType("seq",yc_terminate_config_primitive_etsi_nfv_nsd__nsd_nsd_ns_configuration_terminate_config_primitive, yang_name="terminate-config-primitive", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='seq', extensions=None), is_container='list', yang_name="terminate-config-primitive", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

33534 self.__metrics = YANGDynClass(base=YANGListType("name",yc_metrics_etsi_nfv_nsd__nsd_nsd_ns_configuration_metrics, yang_name="metrics", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="metrics", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

33535 self.__relation = YANGDynClass(base=YANGListType("name",yc_relation_etsi_nfv_nsd__nsd_nsd_ns_configuration_relation, yang_name="relation", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="relation", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

33536

33537 load = kwargs.pop("load", None)

33538 if args:

33539 if len(args) > 1:

33540 raise TypeError("cannot create a YANG container with >1 argument")

33541 all_attr = True

33542 for e in self._pyangbind_elements:

33543 if not hasattr(args[0], e):

33544 all_attr = False

33545 break

33546 if not all_attr:

33547 raise ValueError("Supplied object did not have the correct attributes")

33548 for e in self._pyangbind_elements:

33549 nobj = getattr(args[0], e)

33550 if nobj._changed() is False:

33551 continue

33552 setmethod = getattr(self, "_set_%s" % e)

33553 if load is None:

33554 setmethod(getattr(args[0], e))

33555 else:

33556 setmethod(getattr(args[0], e), load=load)

33557

33558 def _path(self):

33559 if hasattr(self, "_parent"):

33560 return self._parent._path()+[self._yang_name]

33561 else:

33562 return ['nsd', 'nsd', 'ns-configuration']

33563

33564 def _get_script(self):

33565 """

33566 Getter method for script, mapped from YANG variable /nsd/nsd/ns_configuration/script (container)

33567 """

33568 return self.__script

33569

33570 def _set_script(self, v, load=False):

33571 """

33572 Setter method for script, mapped from YANG variable /nsd/nsd/ns_configuration/script (container)

33573 If this variable is read-only (config: false) in the

33574 source YANG file, then _set_script is considered as a private

33575 method. Backends looking to populate this variable should

33576 do so via calling thisObj._set_script() directly.

33577 """

33578 if hasattr(v, "_utype"):

33579 v = v._utype(v)

33580 try:

33581 t = YANGDynClass(v,base=yc_script_etsi_nfv_nsd__nsd_nsd_ns_configuration_script, is_container='container', yang_name="script", parent=self, choice=('config-method', 'script'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='container', is_config=True)

33582 except (TypeError, ValueError):

33583 raise ValueError({

33584 'error-string': """script must be of a type compatible with container""",

33585 'defined-type': "container",

33586 'generated-type': """YANGDynClass(base=yc_script_etsi_nfv_nsd__nsd_nsd_ns_configuration_script, is_container='container', yang_name="script", parent=self, choice=('config-method', 'script'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='container', is_config=True)""",

33587 })

33588

33589 self.__script = t

33590 if hasattr(self, '_set'):

33591 self._set()

33592

33593 def _unset_script(self):

33594 self.__script = YANGDynClass(base=yc_script_etsi_nfv_nsd__nsd_nsd_ns_configuration_script, is_container='container', yang_name="script", parent=self, choice=('config-method', 'script'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='container', is_config=True)

33595

33596

33597 def _get_juju(self):

33598 """

33599 Getter method for juju, mapped from YANG variable /nsd/nsd/ns_configuration/juju (container)

33600 """

33601 return self.__juju

33602

33603 def _set_juju(self, v, load=False):

33604 """

33605 Setter method for juju, mapped from YANG variable /nsd/nsd/ns_configuration/juju (container)

33606 If this variable is read-only (config: false) in the

33607 source YANG file, then _set_juju is considered as a private

33608 method. Backends looking to populate this variable should

33609 do so via calling thisObj._set_juju() directly.

33610 """

33611 if hasattr(v, "_utype"):

33612 v = v._utype(v)

33613 try:

33614 t = YANGDynClass(v,base=yc_juju_etsi_nfv_nsd__nsd_nsd_ns_configuration_juju, is_container='container', yang_name="juju", parent=self, choice=('config-method', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='container', is_config=True)

33615 except (TypeError, ValueError):

33616 raise ValueError({

33617 'error-string': """juju must be of a type compatible with container""",

33618 'defined-type': "container",

33619 'generated-type': """YANGDynClass(base=yc_juju_etsi_nfv_nsd__nsd_nsd_ns_configuration_juju, is_container='container', yang_name="juju", parent=self, choice=('config-method', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='container', is_config=True)""",

33620 })

33621

33622 self.__juju = t

33623 if hasattr(self, '_set'):

33624 self._set()

33625

33626 def _unset_juju(self):

33627 self.__juju = YANGDynClass(base=yc_juju_etsi_nfv_nsd__nsd_nsd_ns_configuration_juju, is_container='container', yang_name="juju", parent=self, choice=('config-method', 'juju'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='container', is_config=True)

33628

33629

33630 def _get_execution_environment_list(self):

33631 """

33632 Getter method for execution_environment_list, mapped from YANG variable /nsd/nsd/ns_configuration/execution_environment_list (list)

33633 """

33634 return self.__execution_environment_list

33635

33636 def _set_execution_environment_list(self, v, load=False):

33637 """

33638 Setter method for execution_environment_list, mapped from YANG variable /nsd/nsd/ns_configuration/execution_environment_list (list)

33639 If this variable is read-only (config: false) in the

33640 source YANG file, then _set_execution_environment_list is considered as a private

33641 method. Backends looking to populate this variable should

33642 do so via calling thisObj._set_execution_environment_list() directly.

33643 """

33644 if hasattr(v, "_utype"):

33645 v = v._utype(v)

33646 try:

33647 t = YANGDynClass(v,base=YANGListType("id",yc_execution_environment_list_etsi_nfv_nsd__nsd_nsd_ns_configuration_execution_environment_list, yang_name="execution-environment-list", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None, choice=False), is_container='list', yang_name="execution-environment-list", parent=self, choice=('config-method', 'execution-environment-list'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

33648 except (TypeError, ValueError):

33649 raise ValueError({

33650 'error-string': """execution_environment_list must be of a type compatible with list""",

33651 'defined-type': "list",

33652 'generated-type': """YANGDynClass(base=YANGListType("id",yc_execution_environment_list_etsi_nfv_nsd__nsd_nsd_ns_configuration_execution_environment_list, yang_name="execution-environment-list", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None, choice=False), is_container='list', yang_name="execution-environment-list", parent=self, choice=('config-method', 'execution-environment-list'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)""",

33653 })

33654

33655 self.__execution_environment_list = t

33656 if hasattr(self, '_set'):

33657 self._set()

33658

33659 def _unset_execution_environment_list(self):

33660 self.__execution_environment_list = YANGDynClass(base=YANGListType("id",yc_execution_environment_list_etsi_nfv_nsd__nsd_nsd_ns_configuration_execution_environment_list, yang_name="execution-environment-list", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None, choice=False), is_container='list', yang_name="execution-environment-list", parent=self, choice=('config-method', 'execution-environment-list'), path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

33661

33662

33663 def _get_config_primitive(self):

33664 """

33665 Getter method for config_primitive, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive (list)

33666

33667 YANG Description: List of config primitives supported by the

33668 configuration agent for this VNF or VDU.

33669 """

33670 return self.__config_primitive

33671

33672 def _set_config_primitive(self, v, load=False):

33673 """

33674 Setter method for config_primitive, mapped from YANG variable /nsd/nsd/ns_configuration/config_primitive (list)

33675 If this variable is read-only (config: false) in the

33676 source YANG file, then _set_config_primitive is considered as a private

33677 method. Backends looking to populate this variable should

33678 do so via calling thisObj._set_config_primitive() directly.

33679

33680 YANG Description: List of config primitives supported by the

33681 configuration agent for this VNF or VDU.

33682 """

33683 if hasattr(v, "_utype"):

33684 v = v._utype(v)

33685 try:

33686 t = YANGDynClass(v,base=YANGListType("name",yc_config_primitive_etsi_nfv_nsd__nsd_nsd_ns_configuration_config_primitive, yang_name="config-primitive", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="config-primitive", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

33687 except (TypeError, ValueError):

33688 raise ValueError({

33689 'error-string': """config_primitive must be of a type compatible with list""",

33690 'defined-type': "list",

33691 'generated-type': """YANGDynClass(base=YANGListType("name",yc_config_primitive_etsi_nfv_nsd__nsd_nsd_ns_configuration_config_primitive, yang_name="config-primitive", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="config-primitive", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)""",

33692 })

33693

33694 self.__config_primitive = t

33695 if hasattr(self, '_set'):

33696 self._set()

33697

33698 def _unset_config_primitive(self):

33699 self.__config_primitive = YANGDynClass(base=YANGListType("name",yc_config_primitive_etsi_nfv_nsd__nsd_nsd_ns_configuration_config_primitive, yang_name="config-primitive", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="config-primitive", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

33700

33701

33702 def _get_initial_config_primitive(self):

33703 """

33704 Getter method for initial_config_primitive, mapped from YANG variable /nsd/nsd/ns_configuration/initial_config_primitive (list)

33705

33706 YANG Description: Initial set of configuration primitives.

33707 """

33708 return self.__initial_config_primitive

33709

33710 def _set_initial_config_primitive(self, v, load=False):

33711 """

33712 Setter method for initial_config_primitive, mapped from YANG variable /nsd/nsd/ns_configuration/initial_config_primitive (list)

33713 If this variable is read-only (config: false) in the

33714 source YANG file, then _set_initial_config_primitive is considered as a private

33715 method. Backends looking to populate this variable should

33716 do so via calling thisObj._set_initial_config_primitive() directly.

33717

33718 YANG Description: Initial set of configuration primitives.

33719 """

33720 if hasattr(v, "_utype"):

33721 v = v._utype(v)

33722 try:

33723 t = YANGDynClass(v,base=YANGListType("seq",yc_initial_config_primitive_etsi_nfv_nsd__nsd_nsd_ns_configuration_initial_config_primitive, yang_name="initial-config-primitive", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='seq', extensions=None), is_container='list', yang_name="initial-config-primitive", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

33724 except (TypeError, ValueError):

33725 raise ValueError({

33726 'error-string': """initial_config_primitive must be of a type compatible with list""",

33727 'defined-type': "list",

33728 'generated-type': """YANGDynClass(base=YANGListType("seq",yc_initial_config_primitive_etsi_nfv_nsd__nsd_nsd_ns_configuration_initial_config_primitive, yang_name="initial-config-primitive", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='seq', extensions=None), is_container='list', yang_name="initial-config-primitive", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)""",

33729 })

33730

33731 self.__initial_config_primitive = t

33732 if hasattr(self, '_set'):

33733 self._set()

33734

33735 def _unset_initial_config_primitive(self):

33736 self.__initial_config_primitive = YANGDynClass(base=YANGListType("seq",yc_initial_config_primitive_etsi_nfv_nsd__nsd_nsd_ns_configuration_initial_config_primitive, yang_name="initial-config-primitive", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='seq', extensions=None), is_container='list', yang_name="initial-config-primitive", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

33737

33738

33739 def _get_terminate_config_primitive(self):

33740 """

33741 Getter method for terminate_config_primitive, mapped from YANG variable /nsd/nsd/ns_configuration/terminate_config_primitive (list)

33742

33743 YANG Description: Terminate set of configuration primitives.

33744 """

33745 return self.__terminate_config_primitive

33746

33747 def _set_terminate_config_primitive(self, v, load=False):

33748 """

33749 Setter method for terminate_config_primitive, mapped from YANG variable /nsd/nsd/ns_configuration/terminate_config_primitive (list)

33750 If this variable is read-only (config: false) in the

33751 source YANG file, then _set_terminate_config_primitive is considered as a private

33752 method. Backends looking to populate this variable should

33753 do so via calling thisObj._set_terminate_config_primitive() directly.

33754

33755 YANG Description: Terminate set of configuration primitives.

33756 """

33757 if hasattr(v, "_utype"):

33758 v = v._utype(v)

33759 try:

33760 t = YANGDynClass(v,base=YANGListType("seq",yc_terminate_config_primitive_etsi_nfv_nsd__nsd_nsd_ns_configuration_terminate_config_primitive, yang_name="terminate-config-primitive", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='seq', extensions=None), is_container='list', yang_name="terminate-config-primitive", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

33761 except (TypeError, ValueError):

33762 raise ValueError({

33763 'error-string': """terminate_config_primitive must be of a type compatible with list""",

33764 'defined-type': "list",

33765 'generated-type': """YANGDynClass(base=YANGListType("seq",yc_terminate_config_primitive_etsi_nfv_nsd__nsd_nsd_ns_configuration_terminate_config_primitive, yang_name="terminate-config-primitive", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='seq', extensions=None), is_container='list', yang_name="terminate-config-primitive", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)""",

33766 })

33767

33768 self.__terminate_config_primitive = t

33769 if hasattr(self, '_set'):

33770 self._set()

33771

33772 def _unset_terminate_config_primitive(self):

33773 self.__terminate_config_primitive = YANGDynClass(base=YANGListType("seq",yc_terminate_config_primitive_etsi_nfv_nsd__nsd_nsd_ns_configuration_terminate_config_primitive, yang_name="terminate-config-primitive", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='seq', extensions=None), is_container='list', yang_name="terminate-config-primitive", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

33774

33775

33776 def _get_metrics(self):

33777 """

33778 Getter method for metrics, mapped from YANG variable /nsd/nsd/ns_configuration/metrics (list)

33779

33780 YANG Description: List of VNFC related metrics

33781 """

33782 return self.__metrics

33783

33784 def _set_metrics(self, v, load=False):

33785 """

33786 Setter method for metrics, mapped from YANG variable /nsd/nsd/ns_configuration/metrics (list)

33787 If this variable is read-only (config: false) in the

33788 source YANG file, then _set_metrics is considered as a private

33789 method. Backends looking to populate this variable should

33790 do so via calling thisObj._set_metrics() directly.

33791

33792 YANG Description: List of VNFC related metrics

33793 """

33794 if hasattr(v, "_utype"):

33795 v = v._utype(v)

33796 try:

33797 t = YANGDynClass(v,base=YANGListType("name",yc_metrics_etsi_nfv_nsd__nsd_nsd_ns_configuration_metrics, yang_name="metrics", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="metrics", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

33798 except (TypeError, ValueError):

33799 raise ValueError({

33800 'error-string': """metrics must be of a type compatible with list""",

33801 'defined-type': "list",

33802 'generated-type': """YANGDynClass(base=YANGListType("name",yc_metrics_etsi_nfv_nsd__nsd_nsd_ns_configuration_metrics, yang_name="metrics", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="metrics", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)""",

33803 })

33804

33805 self.__metrics = t

33806 if hasattr(self, '_set'):

33807 self._set()

33808

33809 def _unset_metrics(self):

33810 self.__metrics = YANGDynClass(base=YANGListType("name",yc_metrics_etsi_nfv_nsd__nsd_nsd_ns_configuration_metrics, yang_name="metrics", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="metrics", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

33811

33812

33813 def _get_relation(self):

33814 """

33815 Getter method for relation, mapped from YANG variable /nsd/nsd/ns_configuration/relation (list)

33816

33817 YANG Description: List of relations between elements in this descriptor.

33818 The relations are used to integrate pairs of execution environments,

33819 that are in charge of the configuration and lifecycle management

33820 of VDUs, VNFs, KDUs, or NSs.

33821 Each relation is formed by a provider and a requirer.

33822 The provider is the execution environment that provides a particular service.

33823 The requirer is the execution environment that requires the service provided by the provider

33824 """

33825 return self.__relation

33826

33827 def _set_relation(self, v, load=False):

33828 """

33829 Setter method for relation, mapped from YANG variable /nsd/nsd/ns_configuration/relation (list)

33830 If this variable is read-only (config: false) in the

33831 source YANG file, then _set_relation is considered as a private

33832 method. Backends looking to populate this variable should

33833 do so via calling thisObj._set_relation() directly.

33834

33835 YANG Description: List of relations between elements in this descriptor.

33836 The relations are used to integrate pairs of execution environments,

33837 that are in charge of the configuration and lifecycle management

33838 of VDUs, VNFs, KDUs, or NSs.

33839 Each relation is formed by a provider and a requirer.

33840 The provider is the execution environment that provides a particular service.

33841 The requirer is the execution environment that requires the service provided by the provider

33842 """

33843 if hasattr(v, "_utype"):

33844 v = v._utype(v)

33845 try:

33846 t = YANGDynClass(v,base=YANGListType("name",yc_relation_etsi_nfv_nsd__nsd_nsd_ns_configuration_relation, yang_name="relation", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="relation", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

33847 except (TypeError, ValueError):

33848 raise ValueError({

33849 'error-string': """relation must be of a type compatible with list""",

33850 'defined-type': "list",

33851 'generated-type': """YANGDynClass(base=YANGListType("name",yc_relation_etsi_nfv_nsd__nsd_nsd_ns_configuration_relation, yang_name="relation", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="relation", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)""",

33852 })

33853

33854 self.__relation = t

33855 if hasattr(self, '_set'):

33856 self._set()

33857

33858 def _unset_relation(self):

33859 self.__relation = YANGDynClass(base=YANGListType("name",yc_relation_etsi_nfv_nsd__nsd_nsd_ns_configuration_relation, yang_name="relation", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='name', extensions=None), is_container='list', yang_name="relation", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='list', is_config=True)

33860

33861 script = __builtin__.property(_get_script, _set_script)

33862 juju = __builtin__.property(_get_juju, _set_juju)

33863 execution_environment_list = __builtin__.property(_get_execution_environment_list, _set_execution_environment_list)

33864 config_primitive = __builtin__.property(_get_config_primitive, _set_config_primitive)

33865 initial_config_primitive = __builtin__.property(_get_initial_config_primitive, _set_initial_config_primitive)

33866 terminate_config_primitive = __builtin__.property(_get_terminate_config_primitive, _set_terminate_config_primitive)

33867 metrics = __builtin__.property(_get_metrics, _set_metrics)

33868 relation = __builtin__.property(_get_relation, _set_relation)

33869

33870 __choices__ = {'config-method': {'script': ['script'], 'juju': ['juju'], 'execution-environment-list': ['execution_environment_list']}}

33871 _pyangbind_elements = OrderedDict([('script', script), ('juju', juju), ('execution_environment_list', execution_environment_list), ('config_primitive', config_primitive), ('initial_config_primitive', initial_config_primitive), ('terminate_config_primitive', terminate_config_primitive), ('metrics', metrics), ('relation', relation), ])

33872

33873

33874 class yc_nsd_etsi_nfv_nsd__nsd_nsd(PybindBase):

33875 """

33876 This class was auto-generated by the PythonClass plugin for PYANG

33877 from YANG module etsi-nfv-nsd - based on the path /nsd/nsd. Each member element of

33878 the container is represented as a class variable - with a specific

33879 YANG type.

33880

33881 YANG Description: The NSD information element is a deployment template whose

33882 instances are used by the NFVO for the lifecycle management

33883 of NSs.

33884 """

33885 __slots__ = ('_path_helper', '_extmethods', '__id','__designer','__version','__name','__invariant_id','__nested_nsd_id','__vnfd_id','__pnfd_id','__sapd','__virtual_link_desc','__vnffgd','__autoscale_rule','__lifecycle_management_script','__df','__signature','__algorithm','__certificate','__ns_configuration','__description',)

33886

33887 _yang_name = 'nsd'

33888 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

33889

33890 _pybind_generated_by = 'container'

33891

33892 def __init__(self, *args, **kwargs):

33893

33894 self._path_helper = False

33895

33896 self._extmethods = False

33897 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

33898 self.__designer = YANGDynClass(base=str, is_leaf=True, yang_name="designer", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

33899 self.__version = YANGDynClass(base=str, is_leaf=True, yang_name="version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

33900 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

33901 self.__invariant_id = YANGDynClass(base=str, is_leaf=True, yang_name="invariant-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

33902 self.__nested_nsd_id = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="nested-nsd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

33903 self.__vnfd_id = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="vnfd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

33904 self.__pnfd_id = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="pnfd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

33905 self.__sapd = YANGDynClass(base=YANGListType("id",yc_sapd_etsi_nfv_nsd__nsd_nsd_sapd, yang_name="sapd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="sapd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

33906 self.__virtual_link_desc = YANGDynClass(base=YANGListType("id",yc_virtual_link_desc_etsi_nfv_nsd__nsd_nsd_virtual_link_desc, yang_name="virtual-link-desc", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="virtual-link-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

33907 self.__vnffgd = YANGDynClass(base=YANGListType("id",yc_vnffgd_etsi_nfv_nsd__nsd_nsd_vnffgd, yang_name="vnffgd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="vnffgd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

33908 self.__autoscale_rule = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="autoscale-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

33909 self.__lifecycle_management_script = YANGDynClass(base=YANGListType("event",yc_lifecycle_management_script_etsi_nfv_nsd__nsd_nsd_lifecycle_management_script, yang_name="lifecycle-management-script", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='event', extensions=None), is_container='list', yang_name="lifecycle-management-script", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

33910 self.__df = YANGDynClass(base=YANGListType("id",yc_df_etsi_nfv_nsd__nsd_nsd_df, yang_name="df", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="df", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

33911 self.__signature = YANGDynClass(base=str, is_leaf=True, yang_name="signature", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

33912 self.__algorithm = YANGDynClass(base=str, is_leaf=True, yang_name="algorithm", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

33913 self.__certificate = YANGDynClass(base=str, is_leaf=True, yang_name="certificate", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

33914 self.__ns_configuration = YANGDynClass(base=yc_ns_configuration_etsi_nfv_nsd__nsd_nsd_ns_configuration, is_container='container', yang_name="ns-configuration", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='container', is_config=True)

33915 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-various', defining_module='ns-various', yang_type='string', is_config=True)

33916

33917 load = kwargs.pop("load", None)

33918 if args:

33919 if len(args) > 1:

33920 raise TypeError("cannot create a YANG container with >1 argument")

33921 all_attr = True

33922 for e in self._pyangbind_elements:

33923 if not hasattr(args[0], e):

33924 all_attr = False

33925 break

33926 if not all_attr:

33927 raise ValueError("Supplied object did not have the correct attributes")

33928 for e in self._pyangbind_elements:

33929 nobj = getattr(args[0], e)

33930 if nobj._changed() is False:

33931 continue

33932 setmethod = getattr(self, "_set_%s" % e)

33933 if load is None:

33934 setmethod(getattr(args[0], e))

33935 else:

33936 setmethod(getattr(args[0], e), load=load)

33937

33938 def _path(self):

33939 if hasattr(self, "_parent"):

33940 return self._parent._path()+[self._yang_name]

33941 else:

33942 return ['nsd', 'nsd']

33943

33944 def _get_id(self):

33945 """

33946 Getter method for id, mapped from YANG variable /nsd/nsd/id (string)

33947

33948 YANG Description: Identifier of this NSD information element. It Globally

33949 uniquely identifies an instance of the NSD.

33950 """

33951 return self.__id

33952

33953 def _set_id(self, v, load=False):

33954 """

33955 Setter method for id, mapped from YANG variable /nsd/nsd/id (string)

33956 If this variable is read-only (config: false) in the

33957 source YANG file, then _set_id is considered as a private

33958 method. Backends looking to populate this variable should

33959 do so via calling thisObj._set_id() directly.

33960

33961 YANG Description: Identifier of this NSD information element. It Globally

33962 uniquely identifies an instance of the NSD.

33963 """

33964 parent = getattr(self, "_parent", None)

33965 if parent is not None and load is False:

33966 raise AttributeError("Cannot set keys directly when" +

33967 " within an instantiated list")

33968

33969 if hasattr(v, "_utype"):

33970 v = v._utype(v)

33971 try:

33972 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

33973 except (TypeError, ValueError):

33974 raise ValueError({

33975 'error-string': """id must be of a type compatible with string""",

33976 'defined-type': "string",

33977 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

33978 })

33979

33980 self.__id = t

33981 if hasattr(self, '_set'):

33982 self._set()

33983

33984 def _unset_id(self):

33985 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

33986

33987

33988 def _get_designer(self):

33989 """

33990 Getter method for designer, mapped from YANG variable /nsd/nsd/designer (string)

33991

33992 YANG Description: Identifies the designer of the NSD.

33993 """

33994 return self.__designer

33995

33996 def _set_designer(self, v, load=False):

33997 """

33998 Setter method for designer, mapped from YANG variable /nsd/nsd/designer (string)

33999 If this variable is read-only (config: false) in the

34000 source YANG file, then _set_designer is considered as a private

34001 method. Backends looking to populate this variable should

34002 do so via calling thisObj._set_designer() directly.

34003

34004 YANG Description: Identifies the designer of the NSD.

34005 """

34006 if hasattr(v, "_utype"):

34007 v = v._utype(v)

34008 try:

34009 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="designer", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

34010 except (TypeError, ValueError):

34011 raise ValueError({

34012 'error-string': """designer must be of a type compatible with string""",

34013 'defined-type': "string",

34014 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="designer", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

34015 })

34016

34017 self.__designer = t

34018 if hasattr(self, '_set'):

34019 self._set()

34020

34021 def _unset_designer(self):

34022 self.__designer = YANGDynClass(base=str, is_leaf=True, yang_name="designer", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

34023

34024

34025 def _get_version(self):

34026 """

34027 Getter method for version, mapped from YANG variable /nsd/nsd/version (string)

34028

34029 YANG Description: Identifies the version of the NSD.

34030 """

34031 return self.__version

34032

34033 def _set_version(self, v, load=False):

34034 """

34035 Setter method for version, mapped from YANG variable /nsd/nsd/version (string)

34036 If this variable is read-only (config: false) in the

34037 source YANG file, then _set_version is considered as a private

34038 method. Backends looking to populate this variable should

34039 do so via calling thisObj._set_version() directly.

34040

34041 YANG Description: Identifies the version of the NSD.

34042 """

34043 if hasattr(v, "_utype"):

34044 v = v._utype(v)

34045 try:

34046 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

34047 except (TypeError, ValueError):

34048 raise ValueError({

34049 'error-string': """version must be of a type compatible with string""",

34050 'defined-type': "string",

34051 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

34052 })

34053

34054 self.__version = t

34055 if hasattr(self, '_set'):

34056 self._set()

34057

34058 def _unset_version(self):

34059 self.__version = YANGDynClass(base=str, is_leaf=True, yang_name="version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

34060

34061

34062 def _get_name(self):

34063 """

34064 Getter method for name, mapped from YANG variable /nsd/nsd/name (string)

34065

34066 YANG Description: Provides the human readable name of the NSD.

34067 """

34068 return self.__name

34069

34070 def _set_name(self, v, load=False):

34071 """

34072 Setter method for name, mapped from YANG variable /nsd/nsd/name (string)

34073 If this variable is read-only (config: false) in the

34074 source YANG file, then _set_name is considered as a private

34075 method. Backends looking to populate this variable should

34076 do so via calling thisObj._set_name() directly.

34077

34078 YANG Description: Provides the human readable name of the NSD.

34079 """

34080 if hasattr(v, "_utype"):

34081 v = v._utype(v)

34082 try:

34083 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

34084 except (TypeError, ValueError):

34085 raise ValueError({

34086 'error-string': """name must be of a type compatible with string""",

34087 'defined-type': "string",

34088 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

34089 })

34090

34091 self.__name = t

34092 if hasattr(self, '_set'):

34093 self._set()

34094

34095 def _unset_name(self):

34096 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

34097

34098

34099 def _get_invariant_id(self):

34100 """

34101 Getter method for invariant_id, mapped from YANG variable /nsd/nsd/invariant_id (string)

34102

34103 YANG Description: Identifies an NSD in a version independent manner. This

34104 attribute is invariant across versions of the network

34105 service descriptor.

34106 """

34107 return self.__invariant_id

34108

34109 def _set_invariant_id(self, v, load=False):

34110 """

34111 Setter method for invariant_id, mapped from YANG variable /nsd/nsd/invariant_id (string)

34112 If this variable is read-only (config: false) in the

34113 source YANG file, then _set_invariant_id is considered as a private

34114 method. Backends looking to populate this variable should

34115 do so via calling thisObj._set_invariant_id() directly.

34116

34117 YANG Description: Identifies an NSD in a version independent manner. This

34118 attribute is invariant across versions of the network

34119 service descriptor.

34120 """

34121 if hasattr(v, "_utype"):

34122 v = v._utype(v)

34123 try:

34124 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="invariant-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

34125 except (TypeError, ValueError):

34126 raise ValueError({

34127 'error-string': """invariant_id must be of a type compatible with string""",

34128 'defined-type': "string",

34129 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="invariant-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

34130 })

34131

34132 self.__invariant_id = t

34133 if hasattr(self, '_set'):

34134 self._set()

34135

34136 def _unset_invariant_id(self):

34137 self.__invariant_id = YANGDynClass(base=str, is_leaf=True, yang_name="invariant-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

34138

34139

34140 def _get_nested_nsd_id(self):

34141 """

34142 Getter method for nested_nsd_id, mapped from YANG variable /nsd/nsd/nested_nsd_id (leafref)

34143

34144 YANG Description: References the NSD of a constituent nested NS.

34145 """

34146 return self.__nested_nsd_id

34147

34148 def _set_nested_nsd_id(self, v, load=False):

34149 """

34150 Setter method for nested_nsd_id, mapped from YANG variable /nsd/nsd/nested_nsd_id (leafref)

34151 If this variable is read-only (config: false) in the

34152 source YANG file, then _set_nested_nsd_id is considered as a private

34153 method. Backends looking to populate this variable should

34154 do so via calling thisObj._set_nested_nsd_id() directly.

34155

34156 YANG Description: References the NSD of a constituent nested NS.

34157 """

34158 if hasattr(v, "_utype"):

34159 v = v._utype(v)

34160 try:

34161 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="nested-nsd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

34162 except (TypeError, ValueError):

34163 raise ValueError({

34164 'error-string': """nested_nsd_id must be of a type compatible with leafref""",

34165 'defined-type': "leafref",

34166 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="nested-nsd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

34167 })

34168

34169 self.__nested_nsd_id = t

34170 if hasattr(self, '_set'):

34171 self._set()

34172

34173 def _unset_nested_nsd_id(self):

34174 self.__nested_nsd_id = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="nested-nsd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

34175

34176

34177 def _get_vnfd_id(self):

34178 """

34179 Getter method for vnfd_id, mapped from YANG variable /nsd/nsd/vnfd_id (leafref)

34180

34181 YANG Description: References the VNFD of a constituent VNF.

34182 """

34183 return self.__vnfd_id

34184

34185 def _set_vnfd_id(self, v, load=False):

34186 """

34187 Setter method for vnfd_id, mapped from YANG variable /nsd/nsd/vnfd_id (leafref)

34188 If this variable is read-only (config: false) in the

34189 source YANG file, then _set_vnfd_id is considered as a private

34190 method. Backends looking to populate this variable should

34191 do so via calling thisObj._set_vnfd_id() directly.

34192

34193 YANG Description: References the VNFD of a constituent VNF.

34194 """

34195 if hasattr(v, "_utype"):

34196 v = v._utype(v)

34197 try:

34198 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="vnfd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

34199 except (TypeError, ValueError):

34200 raise ValueError({

34201 'error-string': """vnfd_id must be of a type compatible with leafref""",

34202 'defined-type': "leafref",

34203 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="vnfd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

34204 })

34205

34206 self.__vnfd_id = t

34207 if hasattr(self, '_set'):

34208 self._set()

34209

34210 def _unset_vnfd_id(self):

34211 self.__vnfd_id = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="vnfd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

34212

34213

34214 def _get_pnfd_id(self):

34215 """

34216 Getter method for pnfd_id, mapped from YANG variable /nsd/nsd/pnfd_id (leafref)

34217

34218 YANG Description: References the PNFD of a constituent PNF.

34219 """

34220 return self.__pnfd_id

34221

34222 def _set_pnfd_id(self, v, load=False):

34223 """

34224 Setter method for pnfd_id, mapped from YANG variable /nsd/nsd/pnfd_id (leafref)

34225 If this variable is read-only (config: false) in the

34226 source YANG file, then _set_pnfd_id is considered as a private

34227 method. Backends looking to populate this variable should

34228 do so via calling thisObj._set_pnfd_id() directly.

34229

34230 YANG Description: References the PNFD of a constituent PNF.

34231 """

34232 if hasattr(v, "_utype"):

34233 v = v._utype(v)

34234 try:

34235 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="pnfd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

34236 except (TypeError, ValueError):

34237 raise ValueError({

34238 'error-string': """pnfd_id must be of a type compatible with leafref""",

34239 'defined-type': "leafref",

34240 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="pnfd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)""",

34241 })

34242

34243 self.__pnfd_id = t

34244 if hasattr(self, '_set'):

34245 self._set()

34246

34247 def _unset_pnfd_id(self):

34248 self.__pnfd_id = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="pnfd-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='leafref', is_config=True)

34249

34250

34251 def _get_sapd(self):

34252 """

34253 Getter method for sapd, mapped from YANG variable /nsd/nsd/sapd (list)

34254

34255 YANG Description: Provides the descriptor of a service access point of the

34256 network service.

34257 """

34258 return self.__sapd

34259

34260 def _set_sapd(self, v, load=False):

34261 """

34262 Setter method for sapd, mapped from YANG variable /nsd/nsd/sapd (list)

34263 If this variable is read-only (config: false) in the

34264 source YANG file, then _set_sapd is considered as a private

34265 method. Backends looking to populate this variable should

34266 do so via calling thisObj._set_sapd() directly.

34267

34268 YANG Description: Provides the descriptor of a service access point of the

34269 network service.

34270 """

34271 if hasattr(v, "_utype"):

34272 v = v._utype(v)

34273 try:

34274 t = YANGDynClass(v,base=YANGListType("id",yc_sapd_etsi_nfv_nsd__nsd_nsd_sapd, yang_name="sapd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="sapd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

34275 except (TypeError, ValueError):

34276 raise ValueError({

34277 'error-string': """sapd must be of a type compatible with list""",

34278 'defined-type': "list",

34279 'generated-type': """YANGDynClass(base=YANGListType("id",yc_sapd_etsi_nfv_nsd__nsd_nsd_sapd, yang_name="sapd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="sapd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

34280 })

34281

34282 self.__sapd = t

34283 if hasattr(self, '_set'):

34284 self._set()

34285

34286 def _unset_sapd(self):

34287 self.__sapd = YANGDynClass(base=YANGListType("id",yc_sapd_etsi_nfv_nsd__nsd_nsd_sapd, yang_name="sapd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="sapd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

34288

34289

34290 def _get_virtual_link_desc(self):

34291 """

34292 Getter method for virtual_link_desc, mapped from YANG variable /nsd/nsd/virtual_link_desc (list)

34293

34294 YANG Description: Provides the constituent VLDs.

34295 """

34296 return self.__virtual_link_desc

34297

34298 def _set_virtual_link_desc(self, v, load=False):

34299 """

34300 Setter method for virtual_link_desc, mapped from YANG variable /nsd/nsd/virtual_link_desc (list)

34301 If this variable is read-only (config: false) in the

34302 source YANG file, then _set_virtual_link_desc is considered as a private

34303 method. Backends looking to populate this variable should

34304 do so via calling thisObj._set_virtual_link_desc() directly.

34305

34306 YANG Description: Provides the constituent VLDs.

34307 """

34308 if hasattr(v, "_utype"):

34309 v = v._utype(v)

34310 try:

34311 t = YANGDynClass(v,base=YANGListType("id",yc_virtual_link_desc_etsi_nfv_nsd__nsd_nsd_virtual_link_desc, yang_name="virtual-link-desc", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="virtual-link-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

34312 except (TypeError, ValueError):

34313 raise ValueError({

34314 'error-string': """virtual_link_desc must be of a type compatible with list""",

34315 'defined-type': "list",

34316 'generated-type': """YANGDynClass(base=YANGListType("id",yc_virtual_link_desc_etsi_nfv_nsd__nsd_nsd_virtual_link_desc, yang_name="virtual-link-desc", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="virtual-link-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

34317 })

34318

34319 self.__virtual_link_desc = t

34320 if hasattr(self, '_set'):

34321 self._set()

34322

34323 def _unset_virtual_link_desc(self):

34324 self.__virtual_link_desc = YANGDynClass(base=YANGListType("id",yc_virtual_link_desc_etsi_nfv_nsd__nsd_nsd_virtual_link_desc, yang_name="virtual-link-desc", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="virtual-link-desc", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

34325

34326

34327 def _get_vnffgd(self):

34328 """

34329 Getter method for vnffgd, mapped from YANG variable /nsd/nsd/vnffgd (list)

34330

34331 YANG Description: Provides the descriptors of the applicable forwarding

34332 graphs.

34333 """

34334 return self.__vnffgd

34335

34336 def _set_vnffgd(self, v, load=False):

34337 """

34338 Setter method for vnffgd, mapped from YANG variable /nsd/nsd/vnffgd (list)

34339 If this variable is read-only (config: false) in the

34340 source YANG file, then _set_vnffgd is considered as a private

34341 method. Backends looking to populate this variable should

34342 do so via calling thisObj._set_vnffgd() directly.

34343

34344 YANG Description: Provides the descriptors of the applicable forwarding

34345 graphs.

34346 """

34347 if hasattr(v, "_utype"):

34348 v = v._utype(v)

34349 try:

34350 t = YANGDynClass(v,base=YANGListType("id",yc_vnffgd_etsi_nfv_nsd__nsd_nsd_vnffgd, yang_name="vnffgd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="vnffgd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

34351 except (TypeError, ValueError):

34352 raise ValueError({

34353 'error-string': """vnffgd must be of a type compatible with list""",

34354 'defined-type': "list",

34355 'generated-type': """YANGDynClass(base=YANGListType("id",yc_vnffgd_etsi_nfv_nsd__nsd_nsd_vnffgd, yang_name="vnffgd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="vnffgd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

34356 })

34357

34358 self.__vnffgd = t

34359 if hasattr(self, '_set'):

34360 self._set()

34361

34362 def _unset_vnffgd(self):

34363 self.__vnffgd = YANGDynClass(base=YANGListType("id",yc_vnffgd_etsi_nfv_nsd__nsd_nsd_vnffgd, yang_name="vnffgd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="vnffgd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

34364

34365

34366 def _get_autoscale_rule(self):

34367 """

34368 Getter method for autoscale_rule, mapped from YANG variable /nsd/nsd/autoscale_rule (string)

34369 """

34370 return self.__autoscale_rule

34371

34372 def _set_autoscale_rule(self, v, load=False):

34373 """

34374 Setter method for autoscale_rule, mapped from YANG variable /nsd/nsd/autoscale_rule (string)

34375 If this variable is read-only (config: false) in the

34376 source YANG file, then _set_autoscale_rule is considered as a private

34377 method. Backends looking to populate this variable should

34378 do so via calling thisObj._set_autoscale_rule() directly.

34379 """

34380 if hasattr(v, "_utype"):

34381 v = v._utype(v)

34382 try:

34383 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="autoscale-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

34384 except (TypeError, ValueError):

34385 raise ValueError({

34386 'error-string': """autoscale_rule must be of a type compatible with string""",

34387 'defined-type': "string",

34388 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="autoscale-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

34389 })

34390

34391 self.__autoscale_rule = t

34392 if hasattr(self, '_set'):

34393 self._set()

34394

34395 def _unset_autoscale_rule(self):

34396 self.__autoscale_rule = YANGDynClass(unique=True, base=TypedListType(allowed_type=str), is_leaf=False, yang_name="autoscale-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

34397

34398

34399 def _get_lifecycle_management_script(self):

34400 """

34401 Getter method for lifecycle_management_script, mapped from YANG variable /nsd/nsd/lifecycle_management_script (list)

34402 """

34403 return self.__lifecycle_management_script

34404

34405 def _set_lifecycle_management_script(self, v, load=False):

34406 """

34407 Setter method for lifecycle_management_script, mapped from YANG variable /nsd/nsd/lifecycle_management_script (list)

34408 If this variable is read-only (config: false) in the

34409 source YANG file, then _set_lifecycle_management_script is considered as a private

34410 method. Backends looking to populate this variable should

34411 do so via calling thisObj._set_lifecycle_management_script() directly.

34412 """

34413 if hasattr(v, "_utype"):

34414 v = v._utype(v)

34415 try:

34416 t = YANGDynClass(v,base=YANGListType("event",yc_lifecycle_management_script_etsi_nfv_nsd__nsd_nsd_lifecycle_management_script, yang_name="lifecycle-management-script", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='event', extensions=None), is_container='list', yang_name="lifecycle-management-script", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

34417 except (TypeError, ValueError):

34418 raise ValueError({

34419 'error-string': """lifecycle_management_script must be of a type compatible with list""",

34420 'defined-type': "list",

34421 'generated-type': """YANGDynClass(base=YANGListType("event",yc_lifecycle_management_script_etsi_nfv_nsd__nsd_nsd_lifecycle_management_script, yang_name="lifecycle-management-script", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='event', extensions=None), is_container='list', yang_name="lifecycle-management-script", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

34422 })

34423

34424 self.__lifecycle_management_script = t

34425 if hasattr(self, '_set'):

34426 self._set()

34427

34428 def _unset_lifecycle_management_script(self):

34429 self.__lifecycle_management_script = YANGDynClass(base=YANGListType("event",yc_lifecycle_management_script_etsi_nfv_nsd__nsd_nsd_lifecycle_management_script, yang_name="lifecycle-management-script", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='event', extensions=None), is_container='list', yang_name="lifecycle-management-script", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

34430

34431

34432 def _get_df(self):

34433 """

34434 Getter method for df, mapped from YANG variable /nsd/nsd/df (list)

34435

34436 YANG Description: Identifies a DF within the scope of an NSD.

34437 """

34438 return self.__df

34439

34440 def _set_df(self, v, load=False):

34441 """

34442 Setter method for df, mapped from YANG variable /nsd/nsd/df (list)

34443 If this variable is read-only (config: false) in the

34444 source YANG file, then _set_df is considered as a private

34445 method. Backends looking to populate this variable should

34446 do so via calling thisObj._set_df() directly.

34447

34448 YANG Description: Identifies a DF within the scope of an NSD.

34449 """

34450 if hasattr(v, "_utype"):

34451 v = v._utype(v)

34452 try:

34453 t = YANGDynClass(v,base=YANGListType("id",yc_df_etsi_nfv_nsd__nsd_nsd_df, yang_name="df", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="df", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

34454 except (TypeError, ValueError):

34455 raise ValueError({

34456 'error-string': """df must be of a type compatible with list""",

34457 'defined-type': "list",

34458 'generated-type': """YANGDynClass(base=YANGListType("id",yc_df_etsi_nfv_nsd__nsd_nsd_df, yang_name="df", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="df", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

34459 })

34460

34461 self.__df = t

34462 if hasattr(self, '_set'):

34463 self._set()

34464

34465 def _unset_df(self):

34466 self.__df = YANGDynClass(base=YANGListType("id",yc_df_etsi_nfv_nsd__nsd_nsd_df, yang_name="df", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="df", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

34467

34468

34469 def _get_signature(self):

34470 """

34471 Getter method for signature, mapped from YANG variable /nsd/nsd/signature (string)

34472

34473 YANG Description: Provides the signature of the signed part of the

34474 descriptor.

34475 """

34476 return self.__signature

34477

34478 def _set_signature(self, v, load=False):

34479 """

34480 Setter method for signature, mapped from YANG variable /nsd/nsd/signature (string)

34481 If this variable is read-only (config: false) in the

34482 source YANG file, then _set_signature is considered as a private

34483 method. Backends looking to populate this variable should

34484 do so via calling thisObj._set_signature() directly.

34485

34486 YANG Description: Provides the signature of the signed part of the

34487 descriptor.

34488 """

34489 if hasattr(v, "_utype"):

34490 v = v._utype(v)

34491 try:

34492 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="signature", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

34493 except (TypeError, ValueError):

34494 raise ValueError({

34495 'error-string': """signature must be of a type compatible with string""",

34496 'defined-type': "string",

34497 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="signature", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

34498 })

34499

34500 self.__signature = t

34501 if hasattr(self, '_set'):

34502 self._set()

34503

34504 def _unset_signature(self):

34505 self.__signature = YANGDynClass(base=str, is_leaf=True, yang_name="signature", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

34506

34507

34508 def _get_algorithm(self):

34509 """

34510 Getter method for algorithm, mapped from YANG variable /nsd/nsd/algorithm (string)

34511

34512 YANG Description: Identifies the algorithm used to compute the signature.

34513 """

34514 return self.__algorithm

34515

34516 def _set_algorithm(self, v, load=False):

34517 """

34518 Setter method for algorithm, mapped from YANG variable /nsd/nsd/algorithm (string)

34519 If this variable is read-only (config: false) in the

34520 source YANG file, then _set_algorithm is considered as a private

34521 method. Backends looking to populate this variable should

34522 do so via calling thisObj._set_algorithm() directly.

34523

34524 YANG Description: Identifies the algorithm used to compute the signature.

34525 """

34526 if hasattr(v, "_utype"):

34527 v = v._utype(v)

34528 try:

34529 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="algorithm", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

34530 except (TypeError, ValueError):

34531 raise ValueError({

34532 'error-string': """algorithm must be of a type compatible with string""",

34533 'defined-type': "string",

34534 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="algorithm", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

34535 })

34536

34537 self.__algorithm = t

34538 if hasattr(self, '_set'):

34539 self._set()

34540

34541 def _unset_algorithm(self):

34542 self.__algorithm = YANGDynClass(base=str, is_leaf=True, yang_name="algorithm", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

34543

34544

34545 def _get_certificate(self):

34546 """

34547 Getter method for certificate, mapped from YANG variable /nsd/nsd/certificate (string)

34548

34549 YANG Description: Provides a certificate or a reference to a certificate to

34550 validate the signature.

34551 """

34552 return self.__certificate

34553

34554 def _set_certificate(self, v, load=False):

34555 """

34556 Setter method for certificate, mapped from YANG variable /nsd/nsd/certificate (string)

34557 If this variable is read-only (config: false) in the

34558 source YANG file, then _set_certificate is considered as a private

34559 method. Backends looking to populate this variable should

34560 do so via calling thisObj._set_certificate() directly.

34561

34562 YANG Description: Provides a certificate or a reference to a certificate to

34563 validate the signature.

34564 """

34565 if hasattr(v, "_utype"):

34566 v = v._utype(v)

34567 try:

34568 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="certificate", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

34569 except (TypeError, ValueError):

34570 raise ValueError({

34571 'error-string': """certificate must be of a type compatible with string""",

34572 'defined-type': "string",

34573 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="certificate", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

34574 })

34575

34576 self.__certificate = t

34577 if hasattr(self, '_set'):

34578 self._set()

34579

34580 def _unset_certificate(self):

34581 self.__certificate = YANGDynClass(base=str, is_leaf=True, yang_name="certificate", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

34582

34583

34584 def _get_ns_configuration(self):

34585 """

34586 Getter method for ns_configuration, mapped from YANG variable /nsd/nsd/ns_configuration (container)

34587

34588 YANG Description: Information about NS configuration.

34589 """

34590 return self.__ns_configuration

34591

34592 def _set_ns_configuration(self, v, load=False):

34593 """

34594 Setter method for ns_configuration, mapped from YANG variable /nsd/nsd/ns_configuration (container)

34595 If this variable is read-only (config: false) in the

34596 source YANG file, then _set_ns_configuration is considered as a private

34597 method. Backends looking to populate this variable should

34598 do so via calling thisObj._set_ns_configuration() directly.

34599

34600 YANG Description: Information about NS configuration.

34601 """

34602 if hasattr(v, "_utype"):

34603 v = v._utype(v)

34604 try:

34605 t = YANGDynClass(v,base=yc_ns_configuration_etsi_nfv_nsd__nsd_nsd_ns_configuration, is_container='container', yang_name="ns-configuration", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='container', is_config=True)

34606 except (TypeError, ValueError):

34607 raise ValueError({

34608 'error-string': """ns_configuration must be of a type compatible with container""",

34609 'defined-type': "container",

34610 'generated-type': """YANGDynClass(base=yc_ns_configuration_etsi_nfv_nsd__nsd_nsd_ns_configuration, is_container='container', yang_name="ns-configuration", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='container', is_config=True)""",

34611 })

34612

34613 self.__ns_configuration = t

34614 if hasattr(self, '_set'):

34615 self._set()

34616

34617 def _unset_ns_configuration(self):

34618 self.__ns_configuration = YANGDynClass(base=yc_ns_configuration_etsi_nfv_nsd__nsd_nsd_ns_configuration, is_container='container', yang_name="ns-configuration", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:osm:yang:augments:ns-configuration', defining_module='ns-configuration', yang_type='container', is_config=True)

34619

34620

34621 def _get_description(self):

34622 """

34623 Getter method for description, mapped from YANG variable /nsd/nsd/description (string)

34624 """

34625 return self.__description

34626

34627 def _set_description(self, v, load=False):

34628 """

34629 Setter method for description, mapped from YANG variable /nsd/nsd/description (string)

34630 If this variable is read-only (config: false) in the

34631 source YANG file, then _set_description is considered as a private

34632 method. Backends looking to populate this variable should

34633 do so via calling thisObj._set_description() directly.

34634 """

34635 if hasattr(v, "_utype"):

34636 v = v._utype(v)

34637 try:

34638 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-various', defining_module='ns-various', yang_type='string', is_config=True)

34639 except (TypeError, ValueError):

34640 raise ValueError({

34641 'error-string': """description must be of a type compatible with string""",

34642 'defined-type': "string",

34643 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-various', defining_module='ns-various', yang_type='string', is_config=True)""",

34644 })

34645

34646 self.__description = t

34647 if hasattr(self, '_set'):

34648 self._set()

34649

34650 def _unset_description(self):

34651 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:osm:yang:augments:ns-various', defining_module='ns-various', yang_type='string', is_config=True)

34652

34653 id = __builtin__.property(_get_id, _set_id)

34654 designer = __builtin__.property(_get_designer, _set_designer)

34655 version = __builtin__.property(_get_version, _set_version)

34656 name = __builtin__.property(_get_name, _set_name)

34657 invariant_id = __builtin__.property(_get_invariant_id, _set_invariant_id)

34658 nested_nsd_id = __builtin__.property(_get_nested_nsd_id, _set_nested_nsd_id)

34659 vnfd_id = __builtin__.property(_get_vnfd_id, _set_vnfd_id)

34660 pnfd_id = __builtin__.property(_get_pnfd_id, _set_pnfd_id)

34661 sapd = __builtin__.property(_get_sapd, _set_sapd)

34662 virtual_link_desc = __builtin__.property(_get_virtual_link_desc, _set_virtual_link_desc)

34663 vnffgd = __builtin__.property(_get_vnffgd, _set_vnffgd)

34664 autoscale_rule = __builtin__.property(_get_autoscale_rule, _set_autoscale_rule)

34665 lifecycle_management_script = __builtin__.property(_get_lifecycle_management_script, _set_lifecycle_management_script)

34666 df = __builtin__.property(_get_df, _set_df)

34667 signature = __builtin__.property(_get_signature, _set_signature)

34668 algorithm = __builtin__.property(_get_algorithm, _set_algorithm)

34669 certificate = __builtin__.property(_get_certificate, _set_certificate)

34670 ns_configuration = __builtin__.property(_get_ns_configuration, _set_ns_configuration)

34671 description = __builtin__.property(_get_description, _set_description)

34672

34673

34674 _pyangbind_elements = OrderedDict([('id', id), ('designer', designer), ('version', version), ('name', name), ('invariant_id', invariant_id), ('nested_nsd_id', nested_nsd_id), ('vnfd_id', vnfd_id), ('pnfd_id', pnfd_id), ('sapd', sapd), ('virtual_link_desc', virtual_link_desc), ('vnffgd', vnffgd), ('autoscale_rule', autoscale_rule), ('lifecycle_management_script', lifecycle_management_script), ('df', df), ('signature', signature), ('algorithm', algorithm), ('certificate', certificate), ('ns_configuration', ns_configuration), ('description', description), ])

34675

34676

34677 class yc_l2_address_data_etsi_nfv_nsd__nsd_pnfd_ext_cpd_protocol_address_data_l2_address_data(PybindBase):

34678 """

34679 This class was auto-generated by the PythonClass plugin for PYANG

34680 from YANG module etsi-nfv-nsd - based on the path /nsd/pnfd/ext-cpd/protocol/address-data/l2-address-data. Each member element of

34681 the container is represented as a class variable - with a specific

34682 YANG type.

34683

34684 YANG Description: Provides the information on the MAC addresses to be

34685 assigned to the CP(s) instantiated from the parent CPD.

34686 Shall be present when the addressType is MAC address.

34687 """

34688 __slots__ = ('_path_helper', '_extmethods', '__mac_address_assignment',)

34689

34690 _yang_name = 'l2-address-data'

34691 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

34692

34693 _pybind_generated_by = 'container'

34694

34695 def __init__(self, *args, **kwargs):

34696

34697 self._path_helper = False

34698

34699 self._extmethods = False

34700 self.__mac_address_assignment = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="mac-address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

34701

34702 load = kwargs.pop("load", None)

34703 if args:

34704 if len(args) > 1:

34705 raise TypeError("cannot create a YANG container with >1 argument")

34706 all_attr = True

34707 for e in self._pyangbind_elements:

34708 if not hasattr(args[0], e):

34709 all_attr = False

34710 break

34711 if not all_attr:

34712 raise ValueError("Supplied object did not have the correct attributes")

34713 for e in self._pyangbind_elements:

34714 nobj = getattr(args[0], e)

34715 if nobj._changed() is False:

34716 continue

34717 setmethod = getattr(self, "_set_%s" % e)

34718 if load is None:

34719 setmethod(getattr(args[0], e))

34720 else:

34721 setmethod(getattr(args[0], e), load=load)

34722

34723 def _path(self):

34724 if hasattr(self, "_parent"):

34725 return self._parent._path()+[self._yang_name]

34726 else:

34727 return ['nsd', 'pnfd', 'ext-cpd', 'protocol', 'address-data', 'l2-address-data']

34728

34729 def _get_mac_address_assignment(self):

34730 """

34731 Getter method for mac_address_assignment, mapped from YANG variable /nsd/pnfd/ext_cpd/protocol/address_data/l2_address_data/mac_address_assignment (boolean)

34732

34733 YANG Description: Specify if the MAC address assignment is the

34734 responsibility of management and orchestration function

34735 or not. If it is set to True, it is the management and

34736 orchestration function responsibility. If it is set to

34737 False, it will be provided by an external entity,

34738 e.g. OSS/BSS.

34739 """

34740 return self.__mac_address_assignment

34741

34742 def _set_mac_address_assignment(self, v, load=False):

34743 """

34744 Setter method for mac_address_assignment, mapped from YANG variable /nsd/pnfd/ext_cpd/protocol/address_data/l2_address_data/mac_address_assignment (boolean)

34745 If this variable is read-only (config: false) in the

34746 source YANG file, then _set_mac_address_assignment is considered as a private

34747 method. Backends looking to populate this variable should

34748 do so via calling thisObj._set_mac_address_assignment() directly.

34749

34750 YANG Description: Specify if the MAC address assignment is the

34751 responsibility of management and orchestration function

34752 or not. If it is set to True, it is the management and

34753 orchestration function responsibility. If it is set to

34754 False, it will be provided by an external entity,

34755 e.g. OSS/BSS.

34756 """

34757 if hasattr(v, "_utype"):

34758 v = v._utype(v)

34759 try:

34760 t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="mac-address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

34761 except (TypeError, ValueError):

34762 raise ValueError({

34763 'error-string': """mac_address_assignment must be of a type compatible with boolean""",

34764 'defined-type': "boolean",

34765 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="mac-address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)""",

34766 })

34767

34768 self.__mac_address_assignment = t

34769 if hasattr(self, '_set'):

34770 self._set()

34771

34772 def _unset_mac_address_assignment(self):

34773 self.__mac_address_assignment = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="mac-address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

34774

34775 mac_address_assignment = __builtin__.property(_get_mac_address_assignment, _set_mac_address_assignment)

34776

34777

34778 _pyangbind_elements = OrderedDict([('mac_address_assignment', mac_address_assignment), ])

34779

34780

34781 class yc_l3_address_data_etsi_nfv_nsd__nsd_pnfd_ext_cpd_protocol_address_data_l3_address_data(PybindBase):

34782 """

34783 This class was auto-generated by the PythonClass plugin for PYANG

34784 from YANG module etsi-nfv-nsd - based on the path /nsd/pnfd/ext-cpd/protocol/address-data/l3-address-data. Each member element of

34785 the container is represented as a class variable - with a specific

34786 YANG type.

34787 """

34788 __slots__ = ('_path_helper', '_extmethods', '__ip_address_assignment','__floating_ip_activated','__ip_address_type','__number_of_ip_addresses',)

34789

34790 _yang_name = 'l3-address-data'

34791 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

34792

34793 _pybind_generated_by = 'container'

34794

34795 def __init__(self, *args, **kwargs):

34796

34797 self._path_helper = False

34798

34799 self._extmethods = False

34800 self.__ip_address_assignment = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="ip-address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

34801 self.__floating_ip_activated = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="floating-ip-activated", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

34802 self.__ip_address_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), is_leaf=True, yang_name="ip-address-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

34803 self.__number_of_ip_addresses = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="number-of-ip-addresses", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

34804

34805 load = kwargs.pop("load", None)

34806 if args:

34807 if len(args) > 1:

34808 raise TypeError("cannot create a YANG container with >1 argument")

34809 all_attr = True

34810 for e in self._pyangbind_elements:

34811 if not hasattr(args[0], e):

34812 all_attr = False

34813 break

34814 if not all_attr:

34815 raise ValueError("Supplied object did not have the correct attributes")

34816 for e in self._pyangbind_elements:

34817 nobj = getattr(args[0], e)

34818 if nobj._changed() is False:

34819 continue

34820 setmethod = getattr(self, "_set_%s" % e)

34821 if load is None:

34822 setmethod(getattr(args[0], e))

34823 else:

34824 setmethod(getattr(args[0], e), load=load)

34825

34826 def _path(self):

34827 if hasattr(self, "_parent"):

34828 return self._parent._path()+[self._yang_name]

34829 else:

34830 return ['nsd', 'pnfd', 'ext-cpd', 'protocol', 'address-data', 'l3-address-data']

34831

34832 def _get_ip_address_assignment(self):

34833 """

34834 Getter method for ip_address_assignment, mapped from YANG variable /nsd/pnfd/ext_cpd/protocol/address_data/l3_address_data/ip_address_assignment (boolean)

34835

34836 YANG Description: Specify if the address assignment is the responsibility

34837 of management and orchestration function or not. If it

34838 is set to True, it is the management and orchestration

34839 function responsibility.

34840 """

34841 return self.__ip_address_assignment

34842

34843 def _set_ip_address_assignment(self, v, load=False):

34844 """

34845 Setter method for ip_address_assignment, mapped from YANG variable /nsd/pnfd/ext_cpd/protocol/address_data/l3_address_data/ip_address_assignment (boolean)

34846 If this variable is read-only (config: false) in the

34847 source YANG file, then _set_ip_address_assignment is considered as a private

34848 method. Backends looking to populate this variable should

34849 do so via calling thisObj._set_ip_address_assignment() directly.

34850

34851 YANG Description: Specify if the address assignment is the responsibility

34852 of management and orchestration function or not. If it

34853 is set to True, it is the management and orchestration

34854 function responsibility.

34855 """

34856 if hasattr(v, "_utype"):

34857 v = v._utype(v)

34858 try:

34859 t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="ip-address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

34860 except (TypeError, ValueError):

34861 raise ValueError({

34862 'error-string': """ip_address_assignment must be of a type compatible with boolean""",

34863 'defined-type': "boolean",

34864 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="ip-address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)""",

34865 })

34866

34867 self.__ip_address_assignment = t

34868 if hasattr(self, '_set'):

34869 self._set()

34870

34871 def _unset_ip_address_assignment(self):

34872 self.__ip_address_assignment = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="ip-address-assignment", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

34873

34874

34875 def _get_floating_ip_activated(self):

34876 """

34877 Getter method for floating_ip_activated, mapped from YANG variable /nsd/pnfd/ext_cpd/protocol/address_data/l3_address_data/floating_ip_activated (boolean)

34878

34879 YANG Description: Specify if the floating IP scheme is activated on the CP

34880 or not.

34881 """

34882 return self.__floating_ip_activated

34883

34884 def _set_floating_ip_activated(self, v, load=False):

34885 """

34886 Setter method for floating_ip_activated, mapped from YANG variable /nsd/pnfd/ext_cpd/protocol/address_data/l3_address_data/floating_ip_activated (boolean)

34887 If this variable is read-only (config: false) in the

34888 source YANG file, then _set_floating_ip_activated is considered as a private

34889 method. Backends looking to populate this variable should

34890 do so via calling thisObj._set_floating_ip_activated() directly.

34891

34892 YANG Description: Specify if the floating IP scheme is activated on the CP

34893 or not.

34894 """

34895 if hasattr(v, "_utype"):

34896 v = v._utype(v)

34897 try:

34898 t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="floating-ip-activated", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

34899 except (TypeError, ValueError):

34900 raise ValueError({

34901 'error-string': """floating_ip_activated must be of a type compatible with boolean""",

34902 'defined-type': "boolean",

34903 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="floating-ip-activated", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)""",

34904 })

34905

34906 self.__floating_ip_activated = t

34907 if hasattr(self, '_set'):

34908 self._set()

34909

34910 def _unset_floating_ip_activated(self):

34911 self.__floating_ip_activated = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="floating-ip-activated", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

34912

34913

34914 def _get_ip_address_type(self):

34915 """

34916 Getter method for ip_address_type, mapped from YANG variable /nsd/pnfd/ext_cpd/protocol/address_data/l3_address_data/ip_address_type (enumeration)

34917

34918 YANG Description: Define address type. The address type should be aligned

34919 with the address type supported by the layerProtocol

34920 attribute of the parent VnfExtCpd.

34921 """

34922 return self.__ip_address_type

34923

34924 def _set_ip_address_type(self, v, load=False):

34925 """

34926 Setter method for ip_address_type, mapped from YANG variable /nsd/pnfd/ext_cpd/protocol/address_data/l3_address_data/ip_address_type (enumeration)

34927 If this variable is read-only (config: false) in the

34928 source YANG file, then _set_ip_address_type is considered as a private

34929 method. Backends looking to populate this variable should

34930 do so via calling thisObj._set_ip_address_type() directly.

34931

34932 YANG Description: Define address type. The address type should be aligned

34933 with the address type supported by the layerProtocol

34934 attribute of the parent VnfExtCpd.

34935 """

34936 if hasattr(v, "_utype"):

34937 v = v._utype(v)

34938 try:

34939 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), is_leaf=True, yang_name="ip-address-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

34940 except (TypeError, ValueError):

34941 raise ValueError({

34942 'error-string': """ip_address_type must be of a type compatible with enumeration""",

34943 'defined-type': "etsi-nfv-nsd:enumeration",

34944 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), is_leaf=True, yang_name="ip-address-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)""",

34945 })

34946

34947 self.__ip_address_type = t

34948 if hasattr(self, '_set'):

34949 self._set()

34950

34951 def _unset_ip_address_type(self):

34952 self.__ip_address_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), is_leaf=True, yang_name="ip-address-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

34953

34954

34955 def _get_number_of_ip_addresses(self):

34956 """

34957 Getter method for number_of_ip_addresses, mapped from YANG variable /nsd/pnfd/ext_cpd/protocol/address_data/l3_address_data/number_of_ip_addresses (uint32)

34958

34959 YANG Description: Minimum number of IP addresses to be assigned based on

34960 this L3AddressData information element.

34961 """

34962 return self.__number_of_ip_addresses

34963

34964 def _set_number_of_ip_addresses(self, v, load=False):

34965 """

34966 Setter method for number_of_ip_addresses, mapped from YANG variable /nsd/pnfd/ext_cpd/protocol/address_data/l3_address_data/number_of_ip_addresses (uint32)

34967 If this variable is read-only (config: false) in the

34968 source YANG file, then _set_number_of_ip_addresses is considered as a private

34969 method. Backends looking to populate this variable should

34970 do so via calling thisObj._set_number_of_ip_addresses() directly.

34971

34972 YANG Description: Minimum number of IP addresses to be assigned based on

34973 this L3AddressData information element.

34974 """

34975 if hasattr(v, "_utype"):

34976 v = v._utype(v)

34977 try:

34978 t = YANGDynClass(v,base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="number-of-ip-addresses", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

34979 except (TypeError, ValueError):

34980 raise ValueError({

34981 'error-string': """number_of_ip_addresses must be of a type compatible with uint32""",

34982 'defined-type': "uint32",

34983 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="number-of-ip-addresses", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)""",

34984 })

34985

34986 self.__number_of_ip_addresses = t

34987 if hasattr(self, '_set'):

34988 self._set()

34989

34990 def _unset_number_of_ip_addresses(self):

34991 self.__number_of_ip_addresses = YANGDynClass(base=RestrictedClassType(base_type=long, restriction_dict={'range': ['0..4294967295']}, int_size=32), is_leaf=True, yang_name="number-of-ip-addresses", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint32', is_config=True)

34992

34993 ip_address_assignment = __builtin__.property(_get_ip_address_assignment, _set_ip_address_assignment)

34994 floating_ip_activated = __builtin__.property(_get_floating_ip_activated, _set_floating_ip_activated)

34995 ip_address_type = __builtin__.property(_get_ip_address_type, _set_ip_address_type)

34996 number_of_ip_addresses = __builtin__.property(_get_number_of_ip_addresses, _set_number_of_ip_addresses)

34997

34998

34999 _pyangbind_elements = OrderedDict([('ip_address_assignment', ip_address_assignment), ('floating_ip_activated', floating_ip_activated), ('ip_address_type', ip_address_type), ('number_of_ip_addresses', number_of_ip_addresses), ])

35000

35001

35002 class yc_address_data_etsi_nfv_nsd__nsd_pnfd_ext_cpd_protocol_address_data(PybindBase):

35003 """

35004 This class was auto-generated by the PythonClass plugin for PYANG

35005 from YANG module etsi-nfv-nsd - based on the path /nsd/pnfd/ext-cpd/protocol/address-data. Each member element of

35006 the container is represented as a class variable - with a specific

35007 YANG type.

35008

35009 YANG Description: Provides information on the addresses to be assigned to the

35010 CP(s) instantiated from the CPD.

35011 """

35012 __slots__ = ('_path_helper', '_extmethods', '__type','__l2_address_data','__l3_address_data',)

35013

35014 _yang_name = 'address-data'

35015 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

35016

35017 _pybind_generated_by = 'container'

35018

35019 def __init__(self, *args, **kwargs):

35020

35021 self._path_helper = False

35022

35023 self._extmethods = False

35024 self.__type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

35025 self.__l2_address_data = YANGDynClass(base=yc_l2_address_data_etsi_nfv_nsd__nsd_pnfd_ext_cpd_protocol_address_data_l2_address_data, is_container='container', yang_name="l2-address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

35026 self.__l3_address_data = YANGDynClass(base=yc_l3_address_data_etsi_nfv_nsd__nsd_pnfd_ext_cpd_protocol_address_data_l3_address_data, is_container='container', yang_name="l3-address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

35027

35028 load = kwargs.pop("load", None)

35029 if args:

35030 if len(args) > 1:

35031 raise TypeError("cannot create a YANG container with >1 argument")

35032 all_attr = True

35033 for e in self._pyangbind_elements:

35034 if not hasattr(args[0], e):

35035 all_attr = False

35036 break

35037 if not all_attr:

35038 raise ValueError("Supplied object did not have the correct attributes")

35039 for e in self._pyangbind_elements:

35040 nobj = getattr(args[0], e)

35041 if nobj._changed() is False:

35042 continue

35043 setmethod = getattr(self, "_set_%s" % e)

35044 if load is None:

35045 setmethod(getattr(args[0], e))

35046 else:

35047 setmethod(getattr(args[0], e), load=load)

35048

35049 def _path(self):

35050 if hasattr(self, "_parent"):

35051 return self._parent._path()+[self._yang_name]

35052 else:

35053 return ['nsd', 'pnfd', 'ext-cpd', 'protocol', 'address-data']

35054

35055 def _get_type(self):

35056 """

35057 Getter method for type, mapped from YANG variable /nsd/pnfd/ext_cpd/protocol/address_data/type (identityref)

35058

35059 YANG Description: Describes the type of the address to be assigned to the

35060 CP instantiated from the parent CPD.

35061 Value:

35062 • MAC address.

35063 • IP address.

35064 • Etc.

35065 The content type shall be aligned with the address type

35066 supported by the layerProtocol attribute of the parent

35067 CPD.

35068 """

35069 return self.__type

35070

35071 def _set_type(self, v, load=False):

35072 """

35073 Setter method for type, mapped from YANG variable /nsd/pnfd/ext_cpd/protocol/address_data/type (identityref)

35074 If this variable is read-only (config: false) in the

35075 source YANG file, then _set_type is considered as a private

35076 method. Backends looking to populate this variable should

35077 do so via calling thisObj._set_type() directly.

35078

35079 YANG Description: Describes the type of the address to be assigned to the

35080 CP instantiated from the parent CPD.

35081 Value:

35082 • MAC address.

35083 • IP address.

35084 • Etc.

35085 The content type shall be aligned with the address type

35086 supported by the layerProtocol attribute of the parent

35087 CPD.

35088 """

35089 parent = getattr(self, "_parent", None)

35090 if parent is not None and load is False:

35091 raise AttributeError("Cannot set keys directly when" +

35092 " within an instantiated list")

35093

35094 if hasattr(v, "_utype"):

35095 v = v._utype(v)

35096 try:

35097 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

35098 except (TypeError, ValueError):

35099 raise ValueError({

35100 'error-string': """type must be of a type compatible with identityref""",

35101 'defined-type': "etsi-nfv-nsd:identityref",

35102 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)""",

35103 })

35104

35105 self.__type = t

35106 if hasattr(self, '_set'):

35107 self._set()

35108

35109 def _unset_type(self):

35110 self.__type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mac-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ip-address': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

35111

35112

35113 def _get_l2_address_data(self):

35114 """

35115 Getter method for l2_address_data, mapped from YANG variable /nsd/pnfd/ext_cpd/protocol/address_data/l2_address_data (container)

35116

35117 YANG Description: Provides the information on the MAC addresses to be

35118 assigned to the CP(s) instantiated from the parent CPD.

35119 Shall be present when the addressType is MAC address.

35120 """

35121 return self.__l2_address_data

35122

35123 def _set_l2_address_data(self, v, load=False):

35124 """

35125 Setter method for l2_address_data, mapped from YANG variable /nsd/pnfd/ext_cpd/protocol/address_data/l2_address_data (container)

35126 If this variable is read-only (config: false) in the

35127 source YANG file, then _set_l2_address_data is considered as a private

35128 method. Backends looking to populate this variable should

35129 do so via calling thisObj._set_l2_address_data() directly.

35130

35131 YANG Description: Provides the information on the MAC addresses to be

35132 assigned to the CP(s) instantiated from the parent CPD.

35133 Shall be present when the addressType is MAC address.

35134 """

35135 if hasattr(v, "_utype"):

35136 v = v._utype(v)

35137 try:

35138 t = YANGDynClass(v,base=yc_l2_address_data_etsi_nfv_nsd__nsd_pnfd_ext_cpd_protocol_address_data_l2_address_data, is_container='container', yang_name="l2-address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

35139 except (TypeError, ValueError):

35140 raise ValueError({

35141 'error-string': """l2_address_data must be of a type compatible with container""",

35142 'defined-type': "container",

35143 'generated-type': """YANGDynClass(base=yc_l2_address_data_etsi_nfv_nsd__nsd_pnfd_ext_cpd_protocol_address_data_l2_address_data, is_container='container', yang_name="l2-address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

35144 })

35145

35146 self.__l2_address_data = t

35147 if hasattr(self, '_set'):

35148 self._set()

35149

35150 def _unset_l2_address_data(self):

35151 self.__l2_address_data = YANGDynClass(base=yc_l2_address_data_etsi_nfv_nsd__nsd_pnfd_ext_cpd_protocol_address_data_l2_address_data, is_container='container', yang_name="l2-address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

35152

35153

35154 def _get_l3_address_data(self):

35155 """

35156 Getter method for l3_address_data, mapped from YANG variable /nsd/pnfd/ext_cpd/protocol/address_data/l3_address_data (container)

35157 """

35158 return self.__l3_address_data

35159

35160 def _set_l3_address_data(self, v, load=False):

35161 """

35162 Setter method for l3_address_data, mapped from YANG variable /nsd/pnfd/ext_cpd/protocol/address_data/l3_address_data (container)

35163 If this variable is read-only (config: false) in the

35164 source YANG file, then _set_l3_address_data is considered as a private

35165 method. Backends looking to populate this variable should

35166 do so via calling thisObj._set_l3_address_data() directly.

35167 """

35168 if hasattr(v, "_utype"):

35169 v = v._utype(v)

35170 try:

35171 t = YANGDynClass(v,base=yc_l3_address_data_etsi_nfv_nsd__nsd_pnfd_ext_cpd_protocol_address_data_l3_address_data, is_container='container', yang_name="l3-address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

35172 except (TypeError, ValueError):

35173 raise ValueError({

35174 'error-string': """l3_address_data must be of a type compatible with container""",

35175 'defined-type': "container",

35176 'generated-type': """YANGDynClass(base=yc_l3_address_data_etsi_nfv_nsd__nsd_pnfd_ext_cpd_protocol_address_data_l3_address_data, is_container='container', yang_name="l3-address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

35177 })

35178

35179 self.__l3_address_data = t

35180 if hasattr(self, '_set'):

35181 self._set()

35182

35183 def _unset_l3_address_data(self):

35184 self.__l3_address_data = YANGDynClass(base=yc_l3_address_data_etsi_nfv_nsd__nsd_pnfd_ext_cpd_protocol_address_data_l3_address_data, is_container='container', yang_name="l3-address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

35185

35186 type = __builtin__.property(_get_type, _set_type)

35187 l2_address_data = __builtin__.property(_get_l2_address_data, _set_l2_address_data)

35188 l3_address_data = __builtin__.property(_get_l3_address_data, _set_l3_address_data)

35189

35190

35191 _pyangbind_elements = OrderedDict([('type', type), ('l2_address_data', l2_address_data), ('l3_address_data', l3_address_data), ])

35192

35193

35194 class yc_protocol_etsi_nfv_nsd__nsd_pnfd_ext_cpd_protocol(PybindBase):

35195 """

35196 This class was auto-generated by the PythonClass plugin for PYANG

35197 from YANG module etsi-nfv-nsd - based on the path /nsd/pnfd/ext-cpd/protocol. Each member element of

35198 the container is represented as a class variable - with a specific

35199 YANG type.

35200

35201 YANG Description: Identifies the protocol layering information the CP uses for

35202 connectivity purposes and associated information. There shall

35203 be one cpProtocol for each layer protocol as indicated by the

35204 attribute layerProtocol. When a PnfExtCpd as defined in ETSI

35205 GS NFV-IFA 014 [i.8] is inherited from this Cpd, the

35206 cardinality is set to 0.

35207 """

35208 __slots__ = ('_path_helper', '_extmethods', '__associated_layer_protocol','__address_data',)

35209

35210 _yang_name = 'protocol'

35211 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

35212

35213 _pybind_generated_by = 'container'

35214

35215 def __init__(self, *args, **kwargs):

35216

35217 self._path_helper = False

35218

35219 self._extmethods = False

35220 self.__associated_layer_protocol = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="associated-layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

35221 self.__address_data = YANGDynClass(base=YANGListType("type",yc_address_data_etsi_nfv_nsd__nsd_pnfd_ext_cpd_protocol_address_data, yang_name="address-data", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='type', extensions=None), is_container='list', yang_name="address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

35222

35223 load = kwargs.pop("load", None)

35224 if args:

35225 if len(args) > 1:

35226 raise TypeError("cannot create a YANG container with >1 argument")

35227 all_attr = True

35228 for e in self._pyangbind_elements:

35229 if not hasattr(args[0], e):

35230 all_attr = False

35231 break

35232 if not all_attr:

35233 raise ValueError("Supplied object did not have the correct attributes")

35234 for e in self._pyangbind_elements:

35235 nobj = getattr(args[0], e)

35236 if nobj._changed() is False:

35237 continue

35238 setmethod = getattr(self, "_set_%s" % e)

35239 if load is None:

35240 setmethod(getattr(args[0], e))

35241 else:

35242 setmethod(getattr(args[0], e), load=load)

35243

35244 def _path(self):

35245 if hasattr(self, "_parent"):

35246 return self._parent._path()+[self._yang_name]

35247 else:

35248 return ['nsd', 'pnfd', 'ext-cpd', 'protocol']

35249

35250 def _get_associated_layer_protocol(self):

35251 """

35252 Getter method for associated_layer_protocol, mapped from YANG variable /nsd/pnfd/ext_cpd/protocol/associated_layer_protocol (identityref)

35253

35254 YANG Description: One of the values of the attribute layerProtocol of the Cpd

35255 IE.

35256 """

35257 return self.__associated_layer_protocol

35258

35259 def _set_associated_layer_protocol(self, v, load=False):

35260 """

35261 Setter method for associated_layer_protocol, mapped from YANG variable /nsd/pnfd/ext_cpd/protocol/associated_layer_protocol (identityref)

35262 If this variable is read-only (config: false) in the

35263 source YANG file, then _set_associated_layer_protocol is considered as a private

35264 method. Backends looking to populate this variable should

35265 do so via calling thisObj._set_associated_layer_protocol() directly.

35266

35267 YANG Description: One of the values of the attribute layerProtocol of the Cpd

35268 IE.

35269 """

35270 parent = getattr(self, "_parent", None)

35271 if parent is not None and load is False:

35272 raise AttributeError("Cannot set keys directly when" +

35273 " within an instantiated list")

35274

35275 if hasattr(v, "_utype"):

35276 v = v._utype(v)

35277 try:

35278 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="associated-layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

35279 except (TypeError, ValueError):

35280 raise ValueError({

35281 'error-string': """associated_layer_protocol must be of a type compatible with identityref""",

35282 'defined-type': "etsi-nfv-nsd:identityref",

35283 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="associated-layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)""",

35284 })

35285

35286 self.__associated_layer_protocol = t

35287 if hasattr(self, '_set'):

35288 self._set()

35289

35290 def _unset_associated_layer_protocol(self):

35291 self.__associated_layer_protocol = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="associated-layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

35292

35293

35294 def _get_address_data(self):

35295 """

35296 Getter method for address_data, mapped from YANG variable /nsd/pnfd/ext_cpd/protocol/address_data (list)

35297

35298 YANG Description: Provides information on the addresses to be assigned to the

35299 CP(s) instantiated from the CPD.

35300 """

35301 return self.__address_data

35302

35303 def _set_address_data(self, v, load=False):

35304 """

35305 Setter method for address_data, mapped from YANG variable /nsd/pnfd/ext_cpd/protocol/address_data (list)

35306 If this variable is read-only (config: false) in the

35307 source YANG file, then _set_address_data is considered as a private

35308 method. Backends looking to populate this variable should

35309 do so via calling thisObj._set_address_data() directly.

35310

35311 YANG Description: Provides information on the addresses to be assigned to the

35312 CP(s) instantiated from the CPD.

35313 """

35314 if hasattr(v, "_utype"):

35315 v = v._utype(v)

35316 try:

35317 t = YANGDynClass(v,base=YANGListType("type",yc_address_data_etsi_nfv_nsd__nsd_pnfd_ext_cpd_protocol_address_data, yang_name="address-data", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='type', extensions=None), is_container='list', yang_name="address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

35318 except (TypeError, ValueError):

35319 raise ValueError({

35320 'error-string': """address_data must be of a type compatible with list""",

35321 'defined-type': "list",

35322 'generated-type': """YANGDynClass(base=YANGListType("type",yc_address_data_etsi_nfv_nsd__nsd_pnfd_ext_cpd_protocol_address_data, yang_name="address-data", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='type', extensions=None), is_container='list', yang_name="address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

35323 })

35324

35325 self.__address_data = t

35326 if hasattr(self, '_set'):

35327 self._set()

35328

35329 def _unset_address_data(self):

35330 self.__address_data = YANGDynClass(base=YANGListType("type",yc_address_data_etsi_nfv_nsd__nsd_pnfd_ext_cpd_protocol_address_data, yang_name="address-data", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='type', extensions=None), is_container='list', yang_name="address-data", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

35331

35332 associated_layer_protocol = __builtin__.property(_get_associated_layer_protocol, _set_associated_layer_protocol)

35333 address_data = __builtin__.property(_get_address_data, _set_address_data)

35334

35335

35336 _pyangbind_elements = OrderedDict([('associated_layer_protocol', associated_layer_protocol), ('address_data', address_data), ])

35337

35338

35339 class yc_ext_cpd_etsi_nfv_nsd__nsd_pnfd_ext_cpd(PybindBase):

35340 """

35341 This class was auto-generated by the PythonClass plugin for PYANG

35342 from YANG module etsi-nfv-nsd - based on the path /nsd/pnfd/ext-cpd. Each member element of

35343 the container is represented as a class variable - with a specific

35344 YANG type.

35345

35346 YANG Description: Specifies the characteristics of one or more connection

35347 points where to connect the PNF to a VL.

35348 """

35349 __slots__ = ('_path_helper', '_extmethods', '__id','__layer_protocol','__role','__description','__protocol','__trunk_mode',)

35350

35351 _yang_name = 'ext-cpd'

35352 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

35353

35354 _pybind_generated_by = 'container'

35355

35356 def __init__(self, *args, **kwargs):

35357

35358 self._path_helper = False

35359

35360 self._extmethods = False

35361 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

35362 self.__layer_protocol = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},)), default=str("ethernet"), is_leaf=False, yang_name="layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

35363 self.__role = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="role", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

35364 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

35365 self.__protocol = YANGDynClass(base=YANGListType("associated_layer_protocol",yc_protocol_etsi_nfv_nsd__nsd_pnfd_ext_cpd_protocol, yang_name="protocol", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='associated-layer-protocol', extensions=None), is_container='list', yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

35366 self.__trunk_mode = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="trunk-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

35367

35368 load = kwargs.pop("load", None)

35369 if args:

35370 if len(args) > 1:

35371 raise TypeError("cannot create a YANG container with >1 argument")

35372 all_attr = True

35373 for e in self._pyangbind_elements:

35374 if not hasattr(args[0], e):

35375 all_attr = False

35376 break

35377 if not all_attr:

35378 raise ValueError("Supplied object did not have the correct attributes")

35379 for e in self._pyangbind_elements:

35380 nobj = getattr(args[0], e)

35381 if nobj._changed() is False:

35382 continue

35383 setmethod = getattr(self, "_set_%s" % e)

35384 if load is None:

35385 setmethod(getattr(args[0], e))

35386 else:

35387 setmethod(getattr(args[0], e), load=load)

35388

35389 def _path(self):

35390 if hasattr(self, "_parent"):

35391 return self._parent._path()+[self._yang_name]

35392 else:

35393 return ['nsd', 'pnfd', 'ext-cpd']

35394

35395 def _get_id(self):

35396 """

35397 Getter method for id, mapped from YANG variable /nsd/pnfd/ext_cpd/id (string)

35398

35399 YANG Description: Identifier of this Cpd information element.

35400 """

35401 return self.__id

35402

35403 def _set_id(self, v, load=False):

35404 """

35405 Setter method for id, mapped from YANG variable /nsd/pnfd/ext_cpd/id (string)

35406 If this variable is read-only (config: false) in the

35407 source YANG file, then _set_id is considered as a private

35408 method. Backends looking to populate this variable should

35409 do so via calling thisObj._set_id() directly.

35410

35411 YANG Description: Identifier of this Cpd information element.

35412 """

35413 parent = getattr(self, "_parent", None)

35414 if parent is not None and load is False:

35415 raise AttributeError("Cannot set keys directly when" +

35416 " within an instantiated list")

35417

35418 if hasattr(v, "_utype"):

35419 v = v._utype(v)

35420 try:

35421 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

35422 except (TypeError, ValueError):

35423 raise ValueError({

35424 'error-string': """id must be of a type compatible with string""",

35425 'defined-type': "string",

35426 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

35427 })

35428

35429 self.__id = t

35430 if hasattr(self, '_set'):

35431 self._set()

35432

35433 def _unset_id(self):

35434 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

35435

35436

35437 def _get_layer_protocol(self):

35438 """

35439 Getter method for layer_protocol, mapped from YANG variable /nsd/pnfd/ext_cpd/layer_protocol (identityref)

35440

35441 YANG Description: Identifies a protocol that the connection points

35442 corresponding to the CPD support for connectivity purposes

35443(e.g. Ethernet, MPLS, ODU2, IPV4, IPV6, Pseudo-Wire, etc.).

35444 """

35445 return self.__layer_protocol

35446

35447 def _set_layer_protocol(self, v, load=False):

35448 """

35449 Setter method for layer_protocol, mapped from YANG variable /nsd/pnfd/ext_cpd/layer_protocol (identityref)

35450 If this variable is read-only (config: false) in the

35451 source YANG file, then _set_layer_protocol is considered as a private

35452 method. Backends looking to populate this variable should

35453 do so via calling thisObj._set_layer_protocol() directly.

35454

35455 YANG Description: Identifies a protocol that the connection points

35456 corresponding to the CPD support for connectivity purposes

35457(e.g. Ethernet, MPLS, ODU2, IPV4, IPV6, Pseudo-Wire, etc.).

35458 """

35459 if hasattr(v, "_utype"):

35460 v = v._utype(v)

35461 try:

35462 t = YANGDynClass(v,unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},)), default=str("ethernet"), is_leaf=False, yang_name="layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

35463 except (TypeError, ValueError):

35464 raise ValueError({

35465 'error-string': """layer_protocol must be of a type compatible with identityref""",

35466 'defined-type': "etsi-nfv-nsd:identityref",

35467 'generated-type': """YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},)), default=str("ethernet"), is_leaf=False, yang_name="layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)""",

35468 })

35469

35470 self.__layer_protocol = t

35471 if hasattr(self, '_set'):

35472 self._set()

35473

35474 def _unset_layer_protocol(self):

35475 self.__layer_protocol = YANGDynClass(unique=True, base=TypedListType(allowed_type=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ethernet': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:mpls': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:odu2': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv4': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:ipv6': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:pseudo-wire': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},)), default=str("ethernet"), is_leaf=False, yang_name="layer-protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

35476

35477

35478 def _get_role(self):

35479 """

35480 Getter method for role, mapped from YANG variable /nsd/pnfd/ext_cpd/role (identityref)

35481

35482 YANG Description: Identifies the role of the connection points

35483 corresponding to the CPD in the context of the traffic

35484 flow patterns in the VNF, PNF or NS. For example an NS with

35485 a tree flow pattern within the NS will have legal cpRoles

35486 of ROOT and LEAF.

35487 """

35488 return self.__role

35489

35490 def _set_role(self, v, load=False):

35491 """

35492 Setter method for role, mapped from YANG variable /nsd/pnfd/ext_cpd/role (identityref)

35493 If this variable is read-only (config: false) in the

35494 source YANG file, then _set_role is considered as a private

35495 method. Backends looking to populate this variable should

35496 do so via calling thisObj._set_role() directly.

35497

35498 YANG Description: Identifies the role of the connection points

35499 corresponding to the CPD in the context of the traffic

35500 flow patterns in the VNF, PNF or NS. For example an NS with

35501 a tree flow pattern within the NS will have legal cpRoles

35502 of ROOT and LEAF.

35503 """

35504 if hasattr(v, "_utype"):

35505 v = v._utype(v)

35506 try:

35507 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="role", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

35508 except (TypeError, ValueError):

35509 raise ValueError({

35510 'error-string': """role must be of a type compatible with identityref""",

35511 'defined-type': "etsi-nfv-nsd:identityref",

35512 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="role", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)""",

35513 })

35514

35515 self.__role = t

35516 if hasattr(self, '_set'):

35517 self._set()

35518

35519 def _unset_role(self):

35520 self.__role = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:root': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'etsi-nfv-descriptors:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'nfv:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'descriptors:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}, 'vnf:leaf': {'@module': 'etsi-nfv-descriptors', '@namespace': 'urn:etsi:nfv:yang:etsi-nfv-descriptors'}},), is_leaf=True, yang_name="role", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='identityref', is_config=True)

35521

35522

35523 def _get_description(self):

35524 """

35525 Getter method for description, mapped from YANG variable /nsd/pnfd/ext_cpd/description (string)

35526

35527 YANG Description: Provides human-readable information on the purpose of the

35528 connection point (e.g. connection point for control plane

35529 traffic).

35530 """

35531 return self.__description

35532

35533 def _set_description(self, v, load=False):

35534 """

35535 Setter method for description, mapped from YANG variable /nsd/pnfd/ext_cpd/description (string)

35536 If this variable is read-only (config: false) in the

35537 source YANG file, then _set_description is considered as a private

35538 method. Backends looking to populate this variable should

35539 do so via calling thisObj._set_description() directly.

35540

35541 YANG Description: Provides human-readable information on the purpose of the

35542 connection point (e.g. connection point for control plane

35543 traffic).

35544 """

35545 if hasattr(v, "_utype"):

35546 v = v._utype(v)

35547 try:

35548 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

35549 except (TypeError, ValueError):

35550 raise ValueError({

35551 'error-string': """description must be of a type compatible with string""",

35552 'defined-type': "string",

35553 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

35554 })

35555

35556 self.__description = t

35557 if hasattr(self, '_set'):

35558 self._set()

35559

35560 def _unset_description(self):

35561 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

35562

35563

35564 def _get_protocol(self):

35565 """

35566 Getter method for protocol, mapped from YANG variable /nsd/pnfd/ext_cpd/protocol (list)

35567

35568 YANG Description: Identifies the protocol layering information the CP uses for

35569 connectivity purposes and associated information. There shall

35570 be one cpProtocol for each layer protocol as indicated by the

35571 attribute layerProtocol. When a PnfExtCpd as defined in ETSI

35572 GS NFV-IFA 014 [i.8] is inherited from this Cpd, the

35573 cardinality is set to 0.

35574 """

35575 return self.__protocol

35576

35577 def _set_protocol(self, v, load=False):

35578 """

35579 Setter method for protocol, mapped from YANG variable /nsd/pnfd/ext_cpd/protocol (list)

35580 If this variable is read-only (config: false) in the

35581 source YANG file, then _set_protocol is considered as a private

35582 method. Backends looking to populate this variable should

35583 do so via calling thisObj._set_protocol() directly.

35584

35585 YANG Description: Identifies the protocol layering information the CP uses for

35586 connectivity purposes and associated information. There shall

35587 be one cpProtocol for each layer protocol as indicated by the

35588 attribute layerProtocol. When a PnfExtCpd as defined in ETSI

35589 GS NFV-IFA 014 [i.8] is inherited from this Cpd, the

35590 cardinality is set to 0.

35591 """

35592 if hasattr(v, "_utype"):

35593 v = v._utype(v)

35594 try:

35595 t = YANGDynClass(v,base=YANGListType("associated_layer_protocol",yc_protocol_etsi_nfv_nsd__nsd_pnfd_ext_cpd_protocol, yang_name="protocol", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='associated-layer-protocol', extensions=None), is_container='list', yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

35596 except (TypeError, ValueError):

35597 raise ValueError({

35598 'error-string': """protocol must be of a type compatible with list""",

35599 'defined-type': "list",

35600 'generated-type': """YANGDynClass(base=YANGListType("associated_layer_protocol",yc_protocol_etsi_nfv_nsd__nsd_pnfd_ext_cpd_protocol, yang_name="protocol", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='associated-layer-protocol', extensions=None), is_container='list', yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

35601 })

35602

35603 self.__protocol = t

35604 if hasattr(self, '_set'):

35605 self._set()

35606

35607 def _unset_protocol(self):

35608 self.__protocol = YANGDynClass(base=YANGListType("associated_layer_protocol",yc_protocol_etsi_nfv_nsd__nsd_pnfd_ext_cpd_protocol, yang_name="protocol", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='associated-layer-protocol', extensions=None), is_container='list', yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

35609

35610

35611 def _get_trunk_mode(self):

35612 """

35613 Getter method for trunk_mode, mapped from YANG variable /nsd/pnfd/ext_cpd/trunk_mode (boolean)

35614

35615 YANG Description: Information about whether the Cp instantiated from this CPD

35616 is in Trunk mode (802.1Q or other). When operating in

35617'trunk mode', the Cp is capable of carrying traffic for

35618 several VLANs. A cardinality of 0 implies that trunkMode

35619 is not configured for the Cp i.e. It is equivalent to

35620 Boolean value 'false'.

35621 """

35622 return self.__trunk_mode

35623

35624 def _set_trunk_mode(self, v, load=False):

35625 """

35626 Setter method for trunk_mode, mapped from YANG variable /nsd/pnfd/ext_cpd/trunk_mode (boolean)

35627 If this variable is read-only (config: false) in the

35628 source YANG file, then _set_trunk_mode is considered as a private

35629 method. Backends looking to populate this variable should

35630 do so via calling thisObj._set_trunk_mode() directly.

35631

35632 YANG Description: Information about whether the Cp instantiated from this CPD

35633 is in Trunk mode (802.1Q or other). When operating in

35634'trunk mode', the Cp is capable of carrying traffic for

35635 several VLANs. A cardinality of 0 implies that trunkMode

35636 is not configured for the Cp i.e. It is equivalent to

35637 Boolean value 'false'.

35638 """

35639 if hasattr(v, "_utype"):

35640 v = v._utype(v)

35641 try:

35642 t = YANGDynClass(v,base=YANGBool, is_leaf=True, yang_name="trunk-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

35643 except (TypeError, ValueError):

35644 raise ValueError({

35645 'error-string': """trunk_mode must be of a type compatible with boolean""",

35646 'defined-type': "boolean",

35647 'generated-type': """YANGDynClass(base=YANGBool, is_leaf=True, yang_name="trunk-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)""",

35648 })

35649

35650 self.__trunk_mode = t

35651 if hasattr(self, '_set'):

35652 self._set()

35653

35654 def _unset_trunk_mode(self):

35655 self.__trunk_mode = YANGDynClass(base=YANGBool, is_leaf=True, yang_name="trunk-mode", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='boolean', is_config=True)

35656

35657 id = __builtin__.property(_get_id, _set_id)

35658 layer_protocol = __builtin__.property(_get_layer_protocol, _set_layer_protocol)

35659 role = __builtin__.property(_get_role, _set_role)

35660 description = __builtin__.property(_get_description, _set_description)

35661 protocol = __builtin__.property(_get_protocol, _set_protocol)

35662 trunk_mode = __builtin__.property(_get_trunk_mode, _set_trunk_mode)

35663

35664

35665 _pyangbind_elements = OrderedDict([('id', id), ('layer_protocol', layer_protocol), ('role', role), ('description', description), ('protocol', protocol), ('trunk_mode', trunk_mode), ])

35666

35667

35668 class yc_security_etsi_nfv_nsd__nsd_pnfd_security(PybindBase):

35669 """

35670 This class was auto-generated by the PythonClass plugin for PYANG

35671 from YANG module etsi-nfv-nsd - based on the path /nsd/pnfd/security. Each member element of

35672 the container is represented as a class variable - with a specific

35673 YANG type.

35674

35675 YANG Description: Provides a signature to prevent tampering.

35676 Editor's Note: While IFA014 does specify that the PNFD

35677 includes a security parameter. SOL001 does not have one.

35678 We need to harmonize SOL001 & SOL006 on this point.

35679 """

35680 __slots__ = ('_path_helper', '_extmethods', '__signature','__algorithm','__certificate',)

35681

35682 _yang_name = 'security'

35683 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

35684

35685 _pybind_generated_by = 'container'

35686

35687 def __init__(self, *args, **kwargs):

35688

35689 self._path_helper = False

35690

35691 self._extmethods = False

35692 self.__signature = YANGDynClass(base=str, is_leaf=True, yang_name="signature", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

35693 self.__algorithm = YANGDynClass(base=str, is_leaf=True, yang_name="algorithm", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

35694 self.__certificate = YANGDynClass(base=str, is_leaf=True, yang_name="certificate", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

35695

35696 load = kwargs.pop("load", None)

35697 if args:

35698 if len(args) > 1:

35699 raise TypeError("cannot create a YANG container with >1 argument")

35700 all_attr = True

35701 for e in self._pyangbind_elements:

35702 if not hasattr(args[0], e):

35703 all_attr = False

35704 break

35705 if not all_attr:

35706 raise ValueError("Supplied object did not have the correct attributes")

35707 for e in self._pyangbind_elements:

35708 nobj = getattr(args[0], e)

35709 if nobj._changed() is False:

35710 continue

35711 setmethod = getattr(self, "_set_%s" % e)

35712 if load is None:

35713 setmethod(getattr(args[0], e))

35714 else:

35715 setmethod(getattr(args[0], e), load=load)

35716

35717 def _path(self):

35718 if hasattr(self, "_parent"):

35719 return self._parent._path()+[self._yang_name]

35720 else:

35721 return ['nsd', 'pnfd', 'security']

35722

35723 def _get_signature(self):

35724 """

35725 Getter method for signature, mapped from YANG variable /nsd/pnfd/security/signature (string)

35726

35727 YANG Description: Provides the signature of the signed part of the

35728 descriptor.

35729 """

35730 return self.__signature

35731

35732 def _set_signature(self, v, load=False):

35733 """

35734 Setter method for signature, mapped from YANG variable /nsd/pnfd/security/signature (string)

35735 If this variable is read-only (config: false) in the

35736 source YANG file, then _set_signature is considered as a private

35737 method. Backends looking to populate this variable should

35738 do so via calling thisObj._set_signature() directly.

35739

35740 YANG Description: Provides the signature of the signed part of the

35741 descriptor.

35742 """

35743 parent = getattr(self, "_parent", None)

35744 if parent is not None and load is False:

35745 raise AttributeError("Cannot set keys directly when" +

35746 " within an instantiated list")

35747

35748 if hasattr(v, "_utype"):

35749 v = v._utype(v)

35750 try:

35751 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="signature", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

35752 except (TypeError, ValueError):

35753 raise ValueError({

35754 'error-string': """signature must be of a type compatible with string""",

35755 'defined-type': "string",

35756 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="signature", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

35757 })

35758

35759 self.__signature = t

35760 if hasattr(self, '_set'):

35761 self._set()

35762

35763 def _unset_signature(self):

35764 self.__signature = YANGDynClass(base=str, is_leaf=True, yang_name="signature", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

35765

35766

35767 def _get_algorithm(self):

35768 """

35769 Getter method for algorithm, mapped from YANG variable /nsd/pnfd/security/algorithm (string)

35770

35771 YANG Description: Identifies the algorithm used to compute the signature.

35772 """

35773 return self.__algorithm

35774

35775 def _set_algorithm(self, v, load=False):

35776 """

35777 Setter method for algorithm, mapped from YANG variable /nsd/pnfd/security/algorithm (string)

35778 If this variable is read-only (config: false) in the

35779 source YANG file, then _set_algorithm is considered as a private

35780 method. Backends looking to populate this variable should

35781 do so via calling thisObj._set_algorithm() directly.

35782

35783 YANG Description: Identifies the algorithm used to compute the signature.

35784 """

35785 if hasattr(v, "_utype"):

35786 v = v._utype(v)

35787 try:

35788 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="algorithm", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

35789 except (TypeError, ValueError):

35790 raise ValueError({

35791 'error-string': """algorithm must be of a type compatible with string""",

35792 'defined-type': "string",

35793 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="algorithm", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

35794 })

35795

35796 self.__algorithm = t

35797 if hasattr(self, '_set'):

35798 self._set()

35799

35800 def _unset_algorithm(self):

35801 self.__algorithm = YANGDynClass(base=str, is_leaf=True, yang_name="algorithm", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

35802

35803

35804 def _get_certificate(self):

35805 """

35806 Getter method for certificate, mapped from YANG variable /nsd/pnfd/security/certificate (string)

35807

35808 YANG Description: Provides a certificate or a reference to a certificate to

35809 validate the signature.

35810 """

35811 return self.__certificate

35812

35813 def _set_certificate(self, v, load=False):

35814 """

35815 Setter method for certificate, mapped from YANG variable /nsd/pnfd/security/certificate (string)

35816 If this variable is read-only (config: false) in the

35817 source YANG file, then _set_certificate is considered as a private

35818 method. Backends looking to populate this variable should

35819 do so via calling thisObj._set_certificate() directly.

35820

35821 YANG Description: Provides a certificate or a reference to a certificate to

35822 validate the signature.

35823 """

35824 if hasattr(v, "_utype"):

35825 v = v._utype(v)

35826 try:

35827 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="certificate", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

35828 except (TypeError, ValueError):

35829 raise ValueError({

35830 'error-string': """certificate must be of a type compatible with string""",

35831 'defined-type': "string",

35832 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="certificate", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

35833 })

35834

35835 self.__certificate = t

35836 if hasattr(self, '_set'):

35837 self._set()

35838

35839 def _unset_certificate(self):

35840 self.__certificate = YANGDynClass(base=str, is_leaf=True, yang_name="certificate", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

35841

35842 signature = __builtin__.property(_get_signature, _set_signature)

35843 algorithm = __builtin__.property(_get_algorithm, _set_algorithm)

35844 certificate = __builtin__.property(_get_certificate, _set_certificate)

35845

35846

35847 _pyangbind_elements = OrderedDict([('signature', signature), ('algorithm', algorithm), ('certificate', certificate), ])

35848

35849

35850 class yc_security_group_rule_etsi_nfv_nsd__nsd_pnfd_security_group_rule(PybindBase):

35851 """

35852 This class was auto-generated by the PythonClass plugin for PYANG

35853 from YANG module etsi-nfv-nsd - based on the path /nsd/pnfd/security-group-rule. Each member element of

35854 the container is represented as a class variable - with a specific

35855 YANG type.

35856

35857 YANG Description: Defines security group rules to be used by the VNF.

35858 """

35859 __slots__ = ('_path_helper', '_extmethods', '__id','__description','__direction','__ether_type','__protocol','__port_range_min','__port_range_max',)

35860

35861 _yang_name = 'security-group-rule'

35862 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

35863

35864 _pybind_generated_by = 'container'

35865

35866 def __init__(self, *args, **kwargs):

35867

35868 self._path_helper = False

35869

35870 self._extmethods = False

35871 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

35872 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

35873 self.__direction = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ingress': {}, 'egress': {}},), default=str("ingress"), is_leaf=True, yang_name="direction", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

35874 self.__ether_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), default=str("ipv4"), is_leaf=True, yang_name="ether-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

35875 self.__protocol = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'tcp': {}, 'udp': {}, 'icmp': {}},), default=str("tcp"), is_leaf=True, yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

35876 self.__port_range_min = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(0), is_leaf=True, yang_name="port-range-min", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

35877 self.__port_range_max = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(65535), is_leaf=True, yang_name="port-range-max", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

35878

35879 load = kwargs.pop("load", None)

35880 if args:

35881 if len(args) > 1:

35882 raise TypeError("cannot create a YANG container with >1 argument")

35883 all_attr = True

35884 for e in self._pyangbind_elements:

35885 if not hasattr(args[0], e):

35886 all_attr = False

35887 break

35888 if not all_attr:

35889 raise ValueError("Supplied object did not have the correct attributes")

35890 for e in self._pyangbind_elements:

35891 nobj = getattr(args[0], e)

35892 if nobj._changed() is False:

35893 continue

35894 setmethod = getattr(self, "_set_%s" % e)

35895 if load is None:

35896 setmethod(getattr(args[0], e))

35897 else:

35898 setmethod(getattr(args[0], e), load=load)

35899

35900 def _path(self):

35901 if hasattr(self, "_parent"):

35902 return self._parent._path()+[self._yang_name]

35903 else:

35904 return ['nsd', 'pnfd', 'security-group-rule']

35905

35906 def _get_id(self):

35907 """

35908 Getter method for id, mapped from YANG variable /nsd/pnfd/security_group_rule/id (string)

35909

35910 YANG Description: Identifier of this SecurityGroupRule information

35911 element.

35912 """

35913 return self.__id

35914

35915 def _set_id(self, v, load=False):

35916 """

35917 Setter method for id, mapped from YANG variable /nsd/pnfd/security_group_rule/id (string)

35918 If this variable is read-only (config: false) in the

35919 source YANG file, then _set_id is considered as a private

35920 method. Backends looking to populate this variable should

35921 do so via calling thisObj._set_id() directly.

35922

35923 YANG Description: Identifier of this SecurityGroupRule information

35924 element.

35925 """

35926 parent = getattr(self, "_parent", None)

35927 if parent is not None and load is False:

35928 raise AttributeError("Cannot set keys directly when" +

35929 " within an instantiated list")

35930

35931 if hasattr(v, "_utype"):

35932 v = v._utype(v)

35933 try:

35934 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

35935 except (TypeError, ValueError):

35936 raise ValueError({

35937 'error-string': """id must be of a type compatible with string""",

35938 'defined-type': "string",

35939 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

35940 })

35941

35942 self.__id = t

35943 if hasattr(self, '_set'):

35944 self._set()

35945

35946 def _unset_id(self):

35947 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

35948

35949

35950 def _get_description(self):

35951 """

35952 Getter method for description, mapped from YANG variable /nsd/pnfd/security_group_rule/description (string)

35953

35954 YANG Description: Human readable description of the security group rule.

35955 """

35956 return self.__description

35957

35958 def _set_description(self, v, load=False):

35959 """

35960 Setter method for description, mapped from YANG variable /nsd/pnfd/security_group_rule/description (string)

35961 If this variable is read-only (config: false) in the

35962 source YANG file, then _set_description is considered as a private

35963 method. Backends looking to populate this variable should

35964 do so via calling thisObj._set_description() directly.

35965

35966 YANG Description: Human readable description of the security group rule.

35967 """

35968 if hasattr(v, "_utype"):

35969 v = v._utype(v)

35970 try:

35971 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

35972 except (TypeError, ValueError):

35973 raise ValueError({

35974 'error-string': """description must be of a type compatible with string""",

35975 'defined-type': "string",

35976 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

35977 })

35978

35979 self.__description = t

35980 if hasattr(self, '_set'):

35981 self._set()

35982

35983 def _unset_description(self):

35984 self.__description = YANGDynClass(base=str, is_leaf=True, yang_name="description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

35985

35986

35987 def _get_direction(self):

35988 """

35989 Getter method for direction, mapped from YANG variable /nsd/pnfd/security_group_rule/direction (enumeration)

35990

35991 YANG Description: The direction in which the security group rule is applied.

35992 Permitted values: INGRESS, EGRESS. Defaults to INGRESS.

35993 """

35994 return self.__direction

35995

35996 def _set_direction(self, v, load=False):

35997 """

35998 Setter method for direction, mapped from YANG variable /nsd/pnfd/security_group_rule/direction (enumeration)

35999 If this variable is read-only (config: false) in the

36000 source YANG file, then _set_direction is considered as a private

36001 method. Backends looking to populate this variable should

36002 do so via calling thisObj._set_direction() directly.

36003

36004 YANG Description: The direction in which the security group rule is applied.

36005 Permitted values: INGRESS, EGRESS. Defaults to INGRESS.

36006 """

36007 if hasattr(v, "_utype"):

36008 v = v._utype(v)

36009 try:

36010 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ingress': {}, 'egress': {}},), default=str("ingress"), is_leaf=True, yang_name="direction", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

36011 except (TypeError, ValueError):

36012 raise ValueError({

36013 'error-string': """direction must be of a type compatible with enumeration""",

36014 'defined-type': "etsi-nfv-nsd:enumeration",

36015 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ingress': {}, 'egress': {}},), default=str("ingress"), is_leaf=True, yang_name="direction", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)""",

36016 })

36017

36018 self.__direction = t

36019 if hasattr(self, '_set'):

36020 self._set()

36021

36022 def _unset_direction(self):

36023 self.__direction = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ingress': {}, 'egress': {}},), default=str("ingress"), is_leaf=True, yang_name="direction", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

36024

36025

36026 def _get_ether_type(self):

36027 """

36028 Getter method for ether_type, mapped from YANG variable /nsd/pnfd/security_group_rule/ether_type (enumeration)

36029

36030 YANG Description: Indicates the protocol carried over the Ethernet layer.

36031 Permitted values: IPV4, IPV6. Defaults to IPV4.

36032 """

36033 return self.__ether_type

36034

36035 def _set_ether_type(self, v, load=False):

36036 """

36037 Setter method for ether_type, mapped from YANG variable /nsd/pnfd/security_group_rule/ether_type (enumeration)

36038 If this variable is read-only (config: false) in the

36039 source YANG file, then _set_ether_type is considered as a private

36040 method. Backends looking to populate this variable should

36041 do so via calling thisObj._set_ether_type() directly.

36042

36043 YANG Description: Indicates the protocol carried over the Ethernet layer.

36044 Permitted values: IPV4, IPV6. Defaults to IPV4.

36045 """

36046 if hasattr(v, "_utype"):

36047 v = v._utype(v)

36048 try:

36049 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), default=str("ipv4"), is_leaf=True, yang_name="ether-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

36050 except (TypeError, ValueError):

36051 raise ValueError({

36052 'error-string': """ether_type must be of a type compatible with enumeration""",

36053 'defined-type': "etsi-nfv-nsd:enumeration",

36054 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), default=str("ipv4"), is_leaf=True, yang_name="ether-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)""",

36055 })

36056

36057 self.__ether_type = t

36058 if hasattr(self, '_set'):

36059 self._set()

36060

36061 def _unset_ether_type(self):

36062 self.__ether_type = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'ipv4': {}, 'ipv6': {}},), default=str("ipv4"), is_leaf=True, yang_name="ether-type", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

36063

36064

36065 def _get_protocol(self):

36066 """

36067 Getter method for protocol, mapped from YANG variable /nsd/pnfd/security_group_rule/protocol (enumeration)

36068

36069 YANG Description: Indicates the protocol carried over the IP layer.

36070 Permitted values: any protocol defined in the IANA

36071 protocol registry, e.g. TCP, UDP, ICMP, etc. Defaults

36072 to TCP.

36073 """

36074 return self.__protocol

36075

36076 def _set_protocol(self, v, load=False):

36077 """

36078 Setter method for protocol, mapped from YANG variable /nsd/pnfd/security_group_rule/protocol (enumeration)

36079 If this variable is read-only (config: false) in the

36080 source YANG file, then _set_protocol is considered as a private

36081 method. Backends looking to populate this variable should

36082 do so via calling thisObj._set_protocol() directly.

36083

36084 YANG Description: Indicates the protocol carried over the IP layer.

36085 Permitted values: any protocol defined in the IANA

36086 protocol registry, e.g. TCP, UDP, ICMP, etc. Defaults

36087 to TCP.

36088 """

36089 if hasattr(v, "_utype"):

36090 v = v._utype(v)

36091 try:

36092 t = YANGDynClass(v,base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'tcp': {}, 'udp': {}, 'icmp': {}},), default=str("tcp"), is_leaf=True, yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

36093 except (TypeError, ValueError):

36094 raise ValueError({

36095 'error-string': """protocol must be of a type compatible with enumeration""",

36096 'defined-type': "etsi-nfv-nsd:enumeration",

36097 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'tcp': {}, 'udp': {}, 'icmp': {}},), default=str("tcp"), is_leaf=True, yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)""",

36098 })

36099

36100 self.__protocol = t

36101 if hasattr(self, '_set'):

36102 self._set()

36103

36104 def _unset_protocol(self):

36105 self.__protocol = YANGDynClass(base=RestrictedClassType(base_type=str, restriction_type="dict_key", restriction_arg={'tcp': {}, 'udp': {}, 'icmp': {}},), default=str("tcp"), is_leaf=True, yang_name="protocol", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='enumeration', is_config=True)

36106

36107

36108 def _get_port_range_min(self):

36109 """

36110 Getter method for port_range_min, mapped from YANG variable /nsd/pnfd/security_group_rule/port_range_min (uint16)

36111

36112 YANG Description: Indicates minimum port number in the range that is

36113 matched by the security group rule. Defaults to 0.

36114 """

36115 return self.__port_range_min

36116

36117 def _set_port_range_min(self, v, load=False):

36118 """

36119 Setter method for port_range_min, mapped from YANG variable /nsd/pnfd/security_group_rule/port_range_min (uint16)

36120 If this variable is read-only (config: false) in the

36121 source YANG file, then _set_port_range_min is considered as a private

36122 method. Backends looking to populate this variable should

36123 do so via calling thisObj._set_port_range_min() directly.

36124

36125 YANG Description: Indicates minimum port number in the range that is

36126 matched by the security group rule. Defaults to 0.

36127 """

36128 if hasattr(v, "_utype"):

36129 v = v._utype(v)

36130 try:

36131 t = YANGDynClass(v,base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(0), is_leaf=True, yang_name="port-range-min", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

36132 except (TypeError, ValueError):

36133 raise ValueError({

36134 'error-string': """port_range_min must be of a type compatible with uint16""",

36135 'defined-type': "uint16",

36136 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(0), is_leaf=True, yang_name="port-range-min", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)""",

36137 })

36138

36139 self.__port_range_min = t

36140 if hasattr(self, '_set'):

36141 self._set()

36142

36143 def _unset_port_range_min(self):

36144 self.__port_range_min = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(0), is_leaf=True, yang_name="port-range-min", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

36145

36146

36147 def _get_port_range_max(self):

36148 """

36149 Getter method for port_range_max, mapped from YANG variable /nsd/pnfd/security_group_rule/port_range_max (uint16)

36150

36151 YANG Description: Indicates maximum port number in the range that is

36152 matched by the security group rule. Defaults to 65535.

36153 """

36154 return self.__port_range_max

36155

36156 def _set_port_range_max(self, v, load=False):

36157 """

36158 Setter method for port_range_max, mapped from YANG variable /nsd/pnfd/security_group_rule/port_range_max (uint16)

36159 If this variable is read-only (config: false) in the

36160 source YANG file, then _set_port_range_max is considered as a private

36161 method. Backends looking to populate this variable should

36162 do so via calling thisObj._set_port_range_max() directly.

36163

36164 YANG Description: Indicates maximum port number in the range that is

36165 matched by the security group rule. Defaults to 65535.

36166 """

36167 if hasattr(v, "_utype"):

36168 v = v._utype(v)

36169 try:

36170 t = YANGDynClass(v,base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(65535), is_leaf=True, yang_name="port-range-max", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

36171 except (TypeError, ValueError):

36172 raise ValueError({

36173 'error-string': """port_range_max must be of a type compatible with uint16""",

36174 'defined-type': "uint16",

36175 'generated-type': """YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(65535), is_leaf=True, yang_name="port-range-max", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)""",

36176 })

36177

36178 self.__port_range_max = t

36179 if hasattr(self, '_set'):

36180 self._set()

36181

36182 def _unset_port_range_max(self):

36183 self.__port_range_max = YANGDynClass(base=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16), default=RestrictedClassType(base_type=int, restriction_dict={'range': ['0..65535']},int_size=16)(65535), is_leaf=True, yang_name="port-range-max", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='uint16', is_config=True)

36184

36185 id = __builtin__.property(_get_id, _set_id)

36186 description = __builtin__.property(_get_description, _set_description)

36187 direction = __builtin__.property(_get_direction, _set_direction)

36188 ether_type = __builtin__.property(_get_ether_type, _set_ether_type)

36189 protocol = __builtin__.property(_get_protocol, _set_protocol)

36190 port_range_min = __builtin__.property(_get_port_range_min, _set_port_range_min)

36191 port_range_max = __builtin__.property(_get_port_range_max, _set_port_range_max)

36192

36193

36194 _pyangbind_elements = OrderedDict([('id', id), ('description', description), ('direction', direction), ('ether_type', ether_type), ('protocol', protocol), ('port_range_min', port_range_min), ('port_range_max', port_range_max), ])

36195

36196

36197 class yc_pnfd_etsi_nfv_nsd__nsd_pnfd(PybindBase):

36198 """

36199 This class was auto-generated by the PythonClass plugin for PYANG

36200 from YANG module etsi-nfv-nsd - based on the path /nsd/pnfd. Each member element of

36201 the container is represented as a class variable - with a specific

36202 YANG type.

36203

36204 YANG Description: The Pnfd information element is a deployment template

36205 enabling on-boarding PNFs and referencing them from an

36206 NSD. It focuses on connectivity aspects only.

36207 """

36208 __slots__ = ('_path_helper', '_extmethods', '__id','__function_description','__provider','__version','__invariant_id','__name','__ext_cpd','__security','__geographical_location_info','__security_group_rule',)

36209

36210 _yang_name = 'pnfd'

36211 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

36212

36213 _pybind_generated_by = 'container'

36214

36215 def __init__(self, *args, **kwargs):

36216

36217 self._path_helper = False

36218

36219 self._extmethods = False

36220 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

36221 self.__function_description = YANGDynClass(base=str, is_leaf=True, yang_name="function-description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

36222 self.__provider = YANGDynClass(base=str, is_leaf=True, yang_name="provider", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

36223 self.__version = YANGDynClass(base=str, is_leaf=True, yang_name="version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

36224 self.__invariant_id = YANGDynClass(base=str, is_leaf=True, yang_name="invariant-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

36225 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

36226 self.__ext_cpd = YANGDynClass(base=YANGListType("id",yc_ext_cpd_etsi_nfv_nsd__nsd_pnfd_ext_cpd, yang_name="ext-cpd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="ext-cpd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

36227 self.__security = YANGDynClass(base=YANGListType("signature",yc_security_etsi_nfv_nsd__nsd_pnfd_security, yang_name="security", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='signature', extensions=None), is_container='list', yang_name="security", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

36228 self.__geographical_location_info = YANGDynClass(base=str, is_leaf=True, yang_name="geographical-location-info", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

36229 self.__security_group_rule = YANGDynClass(base=YANGListType("id",yc_security_group_rule_etsi_nfv_nsd__nsd_pnfd_security_group_rule, yang_name="security-group-rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="security-group-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

36230

36231 load = kwargs.pop("load", None)

36232 if args:

36233 if len(args) > 1:

36234 raise TypeError("cannot create a YANG container with >1 argument")

36235 all_attr = True

36236 for e in self._pyangbind_elements:

36237 if not hasattr(args[0], e):

36238 all_attr = False

36239 break

36240 if not all_attr:

36241 raise ValueError("Supplied object did not have the correct attributes")

36242 for e in self._pyangbind_elements:

36243 nobj = getattr(args[0], e)

36244 if nobj._changed() is False:

36245 continue

36246 setmethod = getattr(self, "_set_%s" % e)

36247 if load is None:

36248 setmethod(getattr(args[0], e))

36249 else:

36250 setmethod(getattr(args[0], e), load=load)

36251

36252 def _path(self):

36253 if hasattr(self, "_parent"):

36254 return self._parent._path()+[self._yang_name]

36255 else:

36256 return ['nsd', 'pnfd']

36257

36258 def _get_id(self):

36259 """

36260 Getter method for id, mapped from YANG variable /nsd/pnfd/id (string)

36261

36262 YANG Description: Identifier of this Pnfd information element. It uniquely

36263 identifies the PNFD.

36264 """

36265 return self.__id

36266

36267 def _set_id(self, v, load=False):

36268 """

36269 Setter method for id, mapped from YANG variable /nsd/pnfd/id (string)

36270 If this variable is read-only (config: false) in the

36271 source YANG file, then _set_id is considered as a private

36272 method. Backends looking to populate this variable should

36273 do so via calling thisObj._set_id() directly.

36274

36275 YANG Description: Identifier of this Pnfd information element. It uniquely

36276 identifies the PNFD.

36277 """

36278 parent = getattr(self, "_parent", None)

36279 if parent is not None and load is False:

36280 raise AttributeError("Cannot set keys directly when" +

36281 " within an instantiated list")

36282

36283 if hasattr(v, "_utype"):

36284 v = v._utype(v)

36285 try:

36286 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

36287 except (TypeError, ValueError):

36288 raise ValueError({

36289 'error-string': """id must be of a type compatible with string""",

36290 'defined-type': "string",

36291 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

36292 })

36293

36294 self.__id = t

36295 if hasattr(self, '_set'):

36296 self._set()

36297

36298 def _unset_id(self):

36299 self.__id = YANGDynClass(base=str, is_leaf=True, yang_name="id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, is_keyval=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

36300

36301

36302 def _get_function_description(self):

36303 """

36304 Getter method for function_description, mapped from YANG variable /nsd/pnfd/function_description (string)

36305

36306 YANG Description: Describes the PNF function.

36307 """

36308 return self.__function_description

36309

36310 def _set_function_description(self, v, load=False):

36311 """

36312 Setter method for function_description, mapped from YANG variable /nsd/pnfd/function_description (string)

36313 If this variable is read-only (config: false) in the

36314 source YANG file, then _set_function_description is considered as a private

36315 method. Backends looking to populate this variable should

36316 do so via calling thisObj._set_function_description() directly.

36317

36318 YANG Description: Describes the PNF function.

36319 """

36320 if hasattr(v, "_utype"):

36321 v = v._utype(v)

36322 try:

36323 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="function-description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

36324 except (TypeError, ValueError):

36325 raise ValueError({

36326 'error-string': """function_description must be of a type compatible with string""",

36327 'defined-type': "string",

36328 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="function-description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

36329 })

36330

36331 self.__function_description = t

36332 if hasattr(self, '_set'):

36333 self._set()

36334

36335 def _unset_function_description(self):

36336 self.__function_description = YANGDynClass(base=str, is_leaf=True, yang_name="function-description", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

36337

36338

36339 def _get_provider(self):

36340 """

36341 Getter method for provider, mapped from YANG variable /nsd/pnfd/provider (string)

36342

36343 YANG Description: Identifies the provider of the PNFD.

36344 """

36345 return self.__provider

36346

36347 def _set_provider(self, v, load=False):

36348 """

36349 Setter method for provider, mapped from YANG variable /nsd/pnfd/provider (string)

36350 If this variable is read-only (config: false) in the

36351 source YANG file, then _set_provider is considered as a private

36352 method. Backends looking to populate this variable should

36353 do so via calling thisObj._set_provider() directly.

36354

36355 YANG Description: Identifies the provider of the PNFD.

36356 """

36357 if hasattr(v, "_utype"):

36358 v = v._utype(v)

36359 try:

36360 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="provider", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

36361 except (TypeError, ValueError):

36362 raise ValueError({

36363 'error-string': """provider must be of a type compatible with string""",

36364 'defined-type': "string",

36365 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="provider", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

36366 })

36367

36368 self.__provider = t

36369 if hasattr(self, '_set'):

36370 self._set()

36371

36372 def _unset_provider(self):

36373 self.__provider = YANGDynClass(base=str, is_leaf=True, yang_name="provider", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

36374

36375

36376 def _get_version(self):

36377 """

36378 Getter method for version, mapped from YANG variable /nsd/pnfd/version (string)

36379

36380 YANG Description: Identifies the version of the PNFD.

36381 """

36382 return self.__version

36383

36384 def _set_version(self, v, load=False):

36385 """

36386 Setter method for version, mapped from YANG variable /nsd/pnfd/version (string)

36387 If this variable is read-only (config: false) in the

36388 source YANG file, then _set_version is considered as a private

36389 method. Backends looking to populate this variable should

36390 do so via calling thisObj._set_version() directly.

36391

36392 YANG Description: Identifies the version of the PNFD.

36393 """

36394 if hasattr(v, "_utype"):

36395 v = v._utype(v)

36396 try:

36397 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

36398 except (TypeError, ValueError):

36399 raise ValueError({

36400 'error-string': """version must be of a type compatible with string""",

36401 'defined-type': "string",

36402 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

36403 })

36404

36405 self.__version = t

36406 if hasattr(self, '_set'):

36407 self._set()

36408

36409 def _unset_version(self):

36410 self.__version = YANGDynClass(base=str, is_leaf=True, yang_name="version", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

36411

36412

36413 def _get_invariant_id(self):

36414 """

36415 Getter method for invariant_id, mapped from YANG variable /nsd/pnfd/invariant_id (string)

36416

36417 YANG Description: Identifies a PNFD in a version independent manner. This

36418 attribute is invariant across versions of PNFD.

36419 """

36420 return self.__invariant_id

36421

36422 def _set_invariant_id(self, v, load=False):

36423 """

36424 Setter method for invariant_id, mapped from YANG variable /nsd/pnfd/invariant_id (string)

36425 If this variable is read-only (config: false) in the

36426 source YANG file, then _set_invariant_id is considered as a private

36427 method. Backends looking to populate this variable should

36428 do so via calling thisObj._set_invariant_id() directly.

36429

36430 YANG Description: Identifies a PNFD in a version independent manner. This

36431 attribute is invariant across versions of PNFD.

36432 """

36433 if hasattr(v, "_utype"):

36434 v = v._utype(v)

36435 try:

36436 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="invariant-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

36437 except (TypeError, ValueError):

36438 raise ValueError({

36439 'error-string': """invariant_id must be of a type compatible with string""",

36440 'defined-type': "string",

36441 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="invariant-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

36442 })

36443

36444 self.__invariant_id = t

36445 if hasattr(self, '_set'):

36446 self._set()

36447

36448 def _unset_invariant_id(self):

36449 self.__invariant_id = YANGDynClass(base=str, is_leaf=True, yang_name="invariant-id", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

36450

36451

36452 def _get_name(self):

36453 """

36454 Getter method for name, mapped from YANG variable /nsd/pnfd/name (string)

36455

36456 YANG Description: Provides the human readable name of the PNFD.

36457 """

36458 return self.__name

36459

36460 def _set_name(self, v, load=False):

36461 """

36462 Setter method for name, mapped from YANG variable /nsd/pnfd/name (string)

36463 If this variable is read-only (config: false) in the

36464 source YANG file, then _set_name is considered as a private

36465 method. Backends looking to populate this variable should

36466 do so via calling thisObj._set_name() directly.

36467

36468 YANG Description: Provides the human readable name of the PNFD.

36469 """

36470 if hasattr(v, "_utype"):

36471 v = v._utype(v)

36472 try:

36473 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

36474 except (TypeError, ValueError):

36475 raise ValueError({

36476 'error-string': """name must be of a type compatible with string""",

36477 'defined-type': "string",

36478 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

36479 })

36480

36481 self.__name = t

36482 if hasattr(self, '_set'):

36483 self._set()

36484

36485 def _unset_name(self):

36486 self.__name = YANGDynClass(base=str, is_leaf=True, yang_name="name", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

36487

36488

36489 def _get_ext_cpd(self):

36490 """

36491 Getter method for ext_cpd, mapped from YANG variable /nsd/pnfd/ext_cpd (list)

36492

36493 YANG Description: Specifies the characteristics of one or more connection

36494 points where to connect the PNF to a VL.

36495 """

36496 return self.__ext_cpd

36497

36498 def _set_ext_cpd(self, v, load=False):

36499 """

36500 Setter method for ext_cpd, mapped from YANG variable /nsd/pnfd/ext_cpd (list)

36501 If this variable is read-only (config: false) in the

36502 source YANG file, then _set_ext_cpd is considered as a private

36503 method. Backends looking to populate this variable should

36504 do so via calling thisObj._set_ext_cpd() directly.

36505

36506 YANG Description: Specifies the characteristics of one or more connection

36507 points where to connect the PNF to a VL.

36508 """

36509 if hasattr(v, "_utype"):

36510 v = v._utype(v)

36511 try:

36512 t = YANGDynClass(v,base=YANGListType("id",yc_ext_cpd_etsi_nfv_nsd__nsd_pnfd_ext_cpd, yang_name="ext-cpd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="ext-cpd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

36513 except (TypeError, ValueError):

36514 raise ValueError({

36515 'error-string': """ext_cpd must be of a type compatible with list""",

36516 'defined-type': "list",

36517 'generated-type': """YANGDynClass(base=YANGListType("id",yc_ext_cpd_etsi_nfv_nsd__nsd_pnfd_ext_cpd, yang_name="ext-cpd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="ext-cpd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

36518 })

36519

36520 self.__ext_cpd = t

36521 if hasattr(self, '_set'):

36522 self._set()

36523

36524 def _unset_ext_cpd(self):

36525 self.__ext_cpd = YANGDynClass(base=YANGListType("id",yc_ext_cpd_etsi_nfv_nsd__nsd_pnfd_ext_cpd, yang_name="ext-cpd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="ext-cpd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

36526

36527

36528 def _get_security(self):

36529 """

36530 Getter method for security, mapped from YANG variable /nsd/pnfd/security (list)

36531

36532 YANG Description: Provides a signature to prevent tampering.

36533 Editor's Note: While IFA014 does specify that the PNFD

36534 includes a security parameter. SOL001 does not have one.

36535 We need to harmonize SOL001 & SOL006 on this point.

36536 """

36537 return self.__security

36538

36539 def _set_security(self, v, load=False):

36540 """

36541 Setter method for security, mapped from YANG variable /nsd/pnfd/security (list)

36542 If this variable is read-only (config: false) in the

36543 source YANG file, then _set_security is considered as a private

36544 method. Backends looking to populate this variable should

36545 do so via calling thisObj._set_security() directly.

36546

36547 YANG Description: Provides a signature to prevent tampering.

36548 Editor's Note: While IFA014 does specify that the PNFD

36549 includes a security parameter. SOL001 does not have one.

36550 We need to harmonize SOL001 & SOL006 on this point.

36551 """

36552 if hasattr(v, "_utype"):

36553 v = v._utype(v)

36554 try:

36555 t = YANGDynClass(v,base=YANGListType("signature",yc_security_etsi_nfv_nsd__nsd_pnfd_security, yang_name="security", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='signature', extensions=None), is_container='list', yang_name="security", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

36556 except (TypeError, ValueError):

36557 raise ValueError({

36558 'error-string': """security must be of a type compatible with list""",

36559 'defined-type': "list",

36560 'generated-type': """YANGDynClass(base=YANGListType("signature",yc_security_etsi_nfv_nsd__nsd_pnfd_security, yang_name="security", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='signature', extensions=None), is_container='list', yang_name="security", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

36561 })

36562

36563 self.__security = t

36564 if hasattr(self, '_set'):

36565 self._set()

36566

36567 def _unset_security(self):

36568 self.__security = YANGDynClass(base=YANGListType("signature",yc_security_etsi_nfv_nsd__nsd_pnfd_security, yang_name="security", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='signature', extensions=None), is_container='list', yang_name="security", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

36569

36570

36571 def _get_geographical_location_info(self):

36572 """

36573 Getter method for geographical_location_info, mapped from YANG variable /nsd/pnfd/geographical_location_info (string)

36574

36575 YANG Description: It provides information about the geographical location

36576(e.g. geographic coordinates or address of the building,

36577 etc.) of the PNF. The cardinality 0 is used when the

36578 location is unknown.

36579 Editor's Note: The type is TBD in SOL001. We need to make

36580 a common SOL001/SOL006 decision.

36581 """

36582 return self.__geographical_location_info

36583

36584 def _set_geographical_location_info(self, v, load=False):

36585 """

36586 Setter method for geographical_location_info, mapped from YANG variable /nsd/pnfd/geographical_location_info (string)

36587 If this variable is read-only (config: false) in the

36588 source YANG file, then _set_geographical_location_info is considered as a private

36589 method. Backends looking to populate this variable should

36590 do so via calling thisObj._set_geographical_location_info() directly.

36591

36592 YANG Description: It provides information about the geographical location

36593(e.g. geographic coordinates or address of the building,

36594 etc.) of the PNF. The cardinality 0 is used when the

36595 location is unknown.

36596 Editor's Note: The type is TBD in SOL001. We need to make

36597 a common SOL001/SOL006 decision.

36598 """

36599 if hasattr(v, "_utype"):

36600 v = v._utype(v)

36601 try:

36602 t = YANGDynClass(v,base=str, is_leaf=True, yang_name="geographical-location-info", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

36603 except (TypeError, ValueError):

36604 raise ValueError({

36605 'error-string': """geographical_location_info must be of a type compatible with string""",

36606 'defined-type': "string",

36607 'generated-type': """YANGDynClass(base=str, is_leaf=True, yang_name="geographical-location-info", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)""",

36608 })

36609

36610 self.__geographical_location_info = t

36611 if hasattr(self, '_set'):

36612 self._set()

36613

36614 def _unset_geographical_location_info(self):

36615 self.__geographical_location_info = YANGDynClass(base=str, is_leaf=True, yang_name="geographical-location-info", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='string', is_config=True)

36616

36617

36618 def _get_security_group_rule(self):

36619 """

36620 Getter method for security_group_rule, mapped from YANG variable /nsd/pnfd/security_group_rule (list)

36621

36622 YANG Description: Defines security group rules to be used by the VNF.

36623 """

36624 return self.__security_group_rule

36625

36626 def _set_security_group_rule(self, v, load=False):

36627 """

36628 Setter method for security_group_rule, mapped from YANG variable /nsd/pnfd/security_group_rule (list)

36629 If this variable is read-only (config: false) in the

36630 source YANG file, then _set_security_group_rule is considered as a private

36631 method. Backends looking to populate this variable should

36632 do so via calling thisObj._set_security_group_rule() directly.

36633

36634 YANG Description: Defines security group rules to be used by the VNF.

36635 """

36636 if hasattr(v, "_utype"):

36637 v = v._utype(v)

36638 try:

36639 t = YANGDynClass(v,base=YANGListType("id",yc_security_group_rule_etsi_nfv_nsd__nsd_pnfd_security_group_rule, yang_name="security-group-rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="security-group-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

36640 except (TypeError, ValueError):

36641 raise ValueError({

36642 'error-string': """security_group_rule must be of a type compatible with list""",

36643 'defined-type': "list",

36644 'generated-type': """YANGDynClass(base=YANGListType("id",yc_security_group_rule_etsi_nfv_nsd__nsd_pnfd_security_group_rule, yang_name="security-group-rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="security-group-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

36645 })

36646

36647 self.__security_group_rule = t

36648 if hasattr(self, '_set'):

36649 self._set()

36650

36651 def _unset_security_group_rule(self):

36652 self.__security_group_rule = YANGDynClass(base=YANGListType("id",yc_security_group_rule_etsi_nfv_nsd__nsd_pnfd_security_group_rule, yang_name="security-group-rule", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="security-group-rule", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

36653

36654 id = __builtin__.property(_get_id, _set_id)

36655 function_description = __builtin__.property(_get_function_description, _set_function_description)

36656 provider = __builtin__.property(_get_provider, _set_provider)

36657 version = __builtin__.property(_get_version, _set_version)

36658 invariant_id = __builtin__.property(_get_invariant_id, _set_invariant_id)

36659 name = __builtin__.property(_get_name, _set_name)

36660 ext_cpd = __builtin__.property(_get_ext_cpd, _set_ext_cpd)

36661 security = __builtin__.property(_get_security, _set_security)

36662 geographical_location_info = __builtin__.property(_get_geographical_location_info, _set_geographical_location_info)

36663 security_group_rule = __builtin__.property(_get_security_group_rule, _set_security_group_rule)

36664

36665

36666 _pyangbind_elements = OrderedDict([('id', id), ('function_description', function_description), ('provider', provider), ('version', version), ('invariant_id', invariant_id), ('name', name), ('ext_cpd', ext_cpd), ('security', security), ('geographical_location_info', geographical_location_info), ('security_group_rule', security_group_rule), ])

36667

36668

36669 class yc_nsd_etsi_nfv_nsd__nsd(PybindBase):

36670 """

36671 This class was auto-generated by the PythonClass plugin for PYANG

36672 from YANG module etsi-nfv-nsd - based on the path /nsd. Each member element of

36673 the container is represented as a class variable - with a specific

36674 YANG type.

36675 """

36676 __slots__ = ('_path_helper', '_extmethods', '__vnfd','__nsd','__pnfd',)

36677

36678 _yang_name = 'nsd'

36679 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

36680

36681 _pybind_generated_by = 'container'

36682

36683 def __init__(self, *args, **kwargs):

36684

36685 self._path_helper = False

36686

36687 self._extmethods = False

36688 self.__vnfd = YANGDynClass(base=YANGListType("id",yc_vnfd_etsi_nfv_nsd__nsd_vnfd, yang_name="vnfd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="vnfd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

36689 self.__nsd = YANGDynClass(base=YANGListType("id",yc_nsd_etsi_nfv_nsd__nsd_nsd, yang_name="nsd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="nsd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

36690 self.__pnfd = YANGDynClass(base=YANGListType("id",yc_pnfd_etsi_nfv_nsd__nsd_pnfd, yang_name="pnfd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="pnfd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

36691

36692 load = kwargs.pop("load", None)

36693 if args:

36694 if len(args) > 1:

36695 raise TypeError("cannot create a YANG container with >1 argument")

36696 all_attr = True

36697 for e in self._pyangbind_elements:

36698 if not hasattr(args[0], e):

36699 all_attr = False

36700 break

36701 if not all_attr:

36702 raise ValueError("Supplied object did not have the correct attributes")

36703 for e in self._pyangbind_elements:

36704 nobj = getattr(args[0], e)

36705 if nobj._changed() is False:

36706 continue

36707 setmethod = getattr(self, "_set_%s" % e)

36708 if load is None:

36709 setmethod(getattr(args[0], e))

36710 else:

36711 setmethod(getattr(args[0], e), load=load)

36712

36713 def _path(self):

36714 if hasattr(self, "_parent"):

36715 return self._parent._path()+[self._yang_name]

36716 else:

36717 return ['nsd']

36718

36719 def _get_vnfd(self):

36720 """

36721 Getter method for vnfd, mapped from YANG variable /nsd/vnfd (list)

36722

36723 YANG Description: A VNF Descriptor (VNFD) is a deployment template which

36724 describes a VNF in terms of deployment and operational

36725 behaviour requirements. It also contains connectivity,

36726 interface and virtualised resource requirements

36727 """

36728 return self.__vnfd

36729

36730 def _set_vnfd(self, v, load=False):

36731 """

36732 Setter method for vnfd, mapped from YANG variable /nsd/vnfd (list)

36733 If this variable is read-only (config: false) in the

36734 source YANG file, then _set_vnfd is considered as a private

36735 method. Backends looking to populate this variable should

36736 do so via calling thisObj._set_vnfd() directly.

36737

36738 YANG Description: A VNF Descriptor (VNFD) is a deployment template which

36739 describes a VNF in terms of deployment and operational

36740 behaviour requirements. It also contains connectivity,

36741 interface and virtualised resource requirements

36742 """

36743 if hasattr(v, "_utype"):

36744 v = v._utype(v)

36745 try:

36746 t = YANGDynClass(v,base=YANGListType("id",yc_vnfd_etsi_nfv_nsd__nsd_vnfd, yang_name="vnfd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="vnfd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

36747 except (TypeError, ValueError):

36748 raise ValueError({

36749 'error-string': """vnfd must be of a type compatible with list""",

36750 'defined-type': "list",

36751 'generated-type': """YANGDynClass(base=YANGListType("id",yc_vnfd_etsi_nfv_nsd__nsd_vnfd, yang_name="vnfd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="vnfd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

36752 })

36753

36754 self.__vnfd = t

36755 if hasattr(self, '_set'):

36756 self._set()

36757

36758 def _unset_vnfd(self):

36759 self.__vnfd = YANGDynClass(base=YANGListType("id",yc_vnfd_etsi_nfv_nsd__nsd_vnfd, yang_name="vnfd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="vnfd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

36760

36761

36762 def _get_nsd(self):

36763 """

36764 Getter method for nsd, mapped from YANG variable /nsd/nsd (list)

36765

36766 YANG Description: The NSD information element is a deployment template whose

36767 instances are used by the NFVO for the lifecycle management

36768 of NSs.

36769 """

36770 return self.__nsd

36771

36772 def _set_nsd(self, v, load=False):

36773 """

36774 Setter method for nsd, mapped from YANG variable /nsd/nsd (list)

36775 If this variable is read-only (config: false) in the

36776 source YANG file, then _set_nsd is considered as a private

36777 method. Backends looking to populate this variable should

36778 do so via calling thisObj._set_nsd() directly.

36779

36780 YANG Description: The NSD information element is a deployment template whose

36781 instances are used by the NFVO for the lifecycle management

36782 of NSs.

36783 """

36784 if hasattr(v, "_utype"):

36785 v = v._utype(v)

36786 try:

36787 t = YANGDynClass(v,base=YANGListType("id",yc_nsd_etsi_nfv_nsd__nsd_nsd, yang_name="nsd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="nsd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

36788 except (TypeError, ValueError):

36789 raise ValueError({

36790 'error-string': """nsd must be of a type compatible with list""",

36791 'defined-type': "list",

36792 'generated-type': """YANGDynClass(base=YANGListType("id",yc_nsd_etsi_nfv_nsd__nsd_nsd, yang_name="nsd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="nsd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

36793 })

36794

36795 self.__nsd = t

36796 if hasattr(self, '_set'):

36797 self._set()

36798

36799 def _unset_nsd(self):

36800 self.__nsd = YANGDynClass(base=YANGListType("id",yc_nsd_etsi_nfv_nsd__nsd_nsd, yang_name="nsd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="nsd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

36801

36802

36803 def _get_pnfd(self):

36804 """

36805 Getter method for pnfd, mapped from YANG variable /nsd/pnfd (list)

36806

36807 YANG Description: The Pnfd information element is a deployment template

36808 enabling on-boarding PNFs and referencing them from an

36809 NSD. It focuses on connectivity aspects only.

36810 """

36811 return self.__pnfd

36812

36813 def _set_pnfd(self, v, load=False):

36814 """

36815 Setter method for pnfd, mapped from YANG variable /nsd/pnfd (list)

36816 If this variable is read-only (config: false) in the

36817 source YANG file, then _set_pnfd is considered as a private

36818 method. Backends looking to populate this variable should

36819 do so via calling thisObj._set_pnfd() directly.

36820

36821 YANG Description: The Pnfd information element is a deployment template

36822 enabling on-boarding PNFs and referencing them from an

36823 NSD. It focuses on connectivity aspects only.

36824 """

36825 if hasattr(v, "_utype"):

36826 v = v._utype(v)

36827 try:

36828 t = YANGDynClass(v,base=YANGListType("id",yc_pnfd_etsi_nfv_nsd__nsd_pnfd, yang_name="pnfd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="pnfd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

36829 except (TypeError, ValueError):

36830 raise ValueError({

36831 'error-string': """pnfd must be of a type compatible with list""",

36832 'defined-type': "list",

36833 'generated-type': """YANGDynClass(base=YANGListType("id",yc_pnfd_etsi_nfv_nsd__nsd_pnfd, yang_name="pnfd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="pnfd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)""",

36834 })

36835

36836 self.__pnfd = t

36837 if hasattr(self, '_set'):

36838 self._set()

36839

36840 def _unset_pnfd(self):

36841 self.__pnfd = YANGDynClass(base=YANGListType("id",yc_pnfd_etsi_nfv_nsd__nsd_pnfd, yang_name="pnfd", parent=self, is_container='list', user_ordered=False, path_helper=self._path_helper, yang_keys='id', extensions=None), is_container='list', yang_name="pnfd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='list', is_config=True)

36842

36843 vnfd = __builtin__.property(_get_vnfd, _set_vnfd)

36844 nsd = __builtin__.property(_get_nsd, _set_nsd)

36845 pnfd = __builtin__.property(_get_pnfd, _set_pnfd)

36846

36847

36848 _pyangbind_elements = OrderedDict([('vnfd', vnfd), ('nsd', nsd), ('pnfd', pnfd), ])

36849

36850

36851 class etsi_nfv_nsd(PybindBase):

36852 """

36853 This class was auto-generated by the PythonClass plugin for PYANG

36854 from YANG module etsi-nfv-nsd - based on the path /etsi-nfv-nsd. Each member element of

36855 the container is represented as a class variable - with a specific

36856 YANG type.

36857

36858 YANG Description: Network Services Descriptors

36859 """

36860 __slots__ = ('_path_helper', '_extmethods', '__nsd',)

36861

36862 _yang_name = 'etsi-nfv-nsd'

36863 _yang_namespace = 'urn:etsi:nfv:yang:etsi-nfv-nsd'

36864

36865 _pybind_generated_by = 'container'

36866

36867 def __init__(self, *args, **kwargs):

36868

36869 self._path_helper = False

36870

36871 self._extmethods = False

36872 self.__nsd = YANGDynClass(base=yc_nsd_etsi_nfv_nsd__nsd, is_container='container', yang_name="nsd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

36873

36874 load = kwargs.pop("load", None)

36875 if args:

36876 if len(args) > 1:

36877 raise TypeError("cannot create a YANG container with >1 argument")

36878 all_attr = True

36879 for e in self._pyangbind_elements:

36880 if not hasattr(args[0], e):

36881 all_attr = False

36882 break

36883 if not all_attr:

36884 raise ValueError("Supplied object did not have the correct attributes")

36885 for e in self._pyangbind_elements:

36886 nobj = getattr(args[0], e)

36887 if nobj._changed() is False:

36888 continue

36889 setmethod = getattr(self, "_set_%s" % e)

36890 if load is None:

36891 setmethod(getattr(args[0], e))

36892 else:

36893 setmethod(getattr(args[0], e), load=load)

36894

36895 def _path(self):

36896 if hasattr(self, "_parent"):

36897 return self._parent._path()+[self._yang_name]

36898 else:

36899 return []

36900

36901 def _get_nsd(self):

36902 """

36903 Getter method for nsd, mapped from YANG variable /nsd (container)

36904 """

36905 return self.__nsd

36906

36907 def _set_nsd(self, v, load=False):

36908 """

36909 Setter method for nsd, mapped from YANG variable /nsd (container)

36910 If this variable is read-only (config: false) in the

36911 source YANG file, then _set_nsd is considered as a private

36912 method. Backends looking to populate this variable should

36913 do so via calling thisObj._set_nsd() directly.

36914 """

36915 if hasattr(v, "_utype"):

36916 v = v._utype(v)

36917 try:

36918 t = YANGDynClass(v,base=yc_nsd_etsi_nfv_nsd__nsd, is_container='container', yang_name="nsd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

36919 except (TypeError, ValueError):

36920 raise ValueError({

36921 'error-string': """nsd must be of a type compatible with container""",

36922 'defined-type': "container",

36923 'generated-type': """YANGDynClass(base=yc_nsd_etsi_nfv_nsd__nsd, is_container='container', yang_name="nsd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)""",

36924 })

36925

36926 self.__nsd = t

36927 if hasattr(self, '_set'):

36928 self._set()

36929

36930 def _unset_nsd(self):

36931 self.__nsd = YANGDynClass(base=yc_nsd_etsi_nfv_nsd__nsd, is_container='container', yang_name="nsd", parent=self, path_helper=self._path_helper, extmethods=self._extmethods, register_paths=True, extensions=None, namespace='urn:etsi:nfv:yang:etsi-nfv-nsd', defining_module='etsi-nfv-nsd', yang_type='container', is_config=True)

36932

36933 nsd = __builtin__.property(_get_nsd, _set_nsd)

36934

36935

36936 _pyangbind_elements = OrderedDict([('nsd', nsd), ])

36937

36938