modelgbp Generated OpFlex Model 1.7.0
BridgeDomain.hpp
1
10#pragma once
11#ifndef GI_GBP_BRIDGEDOMAIN_HPP
12#define GI_GBP_BRIDGEDOMAIN_HPP
13
14#include <boost/optional.hpp>
15#include "opflex/modb/URIBuilder.h"
16#include "opflex/modb/mo-internal/MO.h"
17/*
18 * contains: item:mclass(gbpe/InstContext)
19 */
20#include "modelgbp/gbpe/InstContext.hpp"
21/*
22 * contains: item:mclass(gbp/EpGroupFromNetworkRTgt)
23 */
24#include "modelgbp/gbp/EpGroupFromNetworkRTgt.hpp"
25/*
26 * contains: item:mclass(gbp/BridgeDomainToNetworkRSrc)
27 */
28#include "modelgbp/gbp/BridgeDomainToNetworkRSrc.hpp"
29/*
30 * contains: item:mclass(gbp/FloodDomainFromNetworkRTgt)
31 */
32#include "modelgbp/gbp/FloodDomainFromNetworkRTgt.hpp"
33/*
34 * contains: item:mclass(gbp/ForwardingBehavioralGroupToSubnetsRSrc)
35 */
36#include "modelgbp/gbp/ForwardingBehavioralGroupToSubnetsRSrc.hpp"
37
38namespace modelgbp {
39namespace gbp {
40
42 : public opflex::modb::mointernal::MO
43{
44public:
45
49 static const opflex::modb::class_id_t CLASS_ID = 181;
50
55 bool isNameSet()
56 {
57 return getObjectInstance().isSet(5931009ul, opflex::modb::PropertyInfo::STRING);
58 }
59
64 boost::optional<const std::string&> getName()
65 {
66 if (isNameSet())
67 return getObjectInstance().getString(5931009ul);
68 return boost::none;
69 }
70
76 const std::string& getName(const std::string& defaultValue)
77 {
78 return getName().get_value_or(defaultValue);
79 }
80
89 modelgbp::gbp::BridgeDomain& setName(const std::string& newValue)
90 {
91 getTLMutator().modify(getClassId(), getURI())->setString(5931009ul, newValue);
92 return *this;
93 }
94
102 {
103 getTLMutator().modify(getClassId(), getURI())->unset(5931009ul, opflex::modb::PropertyInfo::STRING, opflex::modb::PropertyInfo::SCALAR);
104 return *this;
105 }
106
112 {
113 return getObjectInstance().isSet(5931010ul, opflex::modb::PropertyInfo::ENUM8);
114 }
115
120 boost::optional<const uint8_t> getRoutingMode()
121 {
122 if (isRoutingModeSet())
123 return (const uint8_t)getObjectInstance().getUInt64(5931010ul);
124 return boost::none;
125 }
126
132 const uint8_t getRoutingMode(const uint8_t defaultValue)
133 {
134 return getRoutingMode().get_value_or(defaultValue);
135 }
136
146 {
147 getTLMutator().modify(getClassId(), getURI())->setUInt64(5931010ul, newValue);
148 return *this;
149 }
150
158 {
159 getTLMutator().modify(getClassId(), getURI())->unset(5931010ul, opflex::modb::PropertyInfo::ENUM8, opflex::modb::PropertyInfo::SCALAR);
160 return *this;
161 }
162
174 static boost::optional<OF_SHARED_PTR<modelgbp::gbp::BridgeDomain> > resolve(
175 opflex::ofcore::OFFramework& framework,
176 const opflex::modb::URI& uri)
177 {
178 return opflex::modb::mointernal::MO::resolve<modelgbp::gbp::BridgeDomain>(framework, CLASS_ID, uri);
179 }
180
192 static boost::optional<OF_SHARED_PTR<modelgbp::gbp::BridgeDomain> > resolve(
193 const opflex::modb::URI& uri)
194 {
195 return opflex::modb::mointernal::MO::resolve<modelgbp::gbp::BridgeDomain>(opflex::ofcore::OFFramework::defaultInstance(), CLASS_ID, uri);
196 }
197
216 static boost::optional<OF_SHARED_PTR<modelgbp::gbp::BridgeDomain> > resolve(
217 opflex::ofcore::OFFramework& framework,
218 const std::string& policySpaceName,
219 const std::string& gbpBridgeDomainName)
220 {
221 return resolve(framework,opflex::modb::URIBuilder().addElement("PolicyUniverse").addElement("PolicySpace").addElement(policySpaceName).addElement("GbpBridgeDomain").addElement(gbpBridgeDomainName).build());
222 }
223
241 static boost::optional<OF_SHARED_PTR<modelgbp::gbp::BridgeDomain> > resolve(
242 const std::string& policySpaceName,
243 const std::string& gbpBridgeDomainName)
244 {
245 return resolve(opflex::ofcore::OFFramework::defaultInstance(),policySpaceName,gbpBridgeDomainName);
246 }
247
257 boost::optional<OF_SHARED_PTR<modelgbp::gbpe::InstContext> > resolveGbpeInstContext(
258 )
259 {
260 return modelgbp::gbpe::InstContext::resolve(getFramework(), opflex::modb::URIBuilder(getURI()).addElement("GbpeInstContext").build());
261 }
262
273 OF_SHARED_PTR<modelgbp::gbpe::InstContext> addGbpeInstContext(
274 )
275 {
276 OF_SHARED_PTR<modelgbp::gbpe::InstContext> result = addChild<modelgbp::gbpe::InstContext>(
277 CLASS_ID, getURI(), 2153414696ul, 40,
278 opflex::modb::URIBuilder(getURI()).addElement("GbpeInstContext").build()
279 );
280 return result;
281 }
282
294 boost::optional<OF_SHARED_PTR<modelgbp::gbp::EpGroupFromNetworkRTgt> > resolveGbpEpGroupFromNetworkRTgt(
295 const std::string& gbpEpGroupFromNetworkRTgtSource)
296 {
297 return modelgbp::gbp::EpGroupFromNetworkRTgt::resolve(getFramework(), opflex::modb::URIBuilder(getURI()).addElement("GbpEpGroupFromNetworkRTgt").addElement(gbpEpGroupFromNetworkRTgtSource).build());
298 }
299
312 OF_SHARED_PTR<modelgbp::gbp::EpGroupFromNetworkRTgt> addGbpEpGroupFromNetworkRTgt(
313 const std::string& gbpEpGroupFromNetworkRTgtSource)
314 {
315 OF_SHARED_PTR<modelgbp::gbp::EpGroupFromNetworkRTgt> result = addChild<modelgbp::gbp::EpGroupFromNetworkRTgt>(
316 CLASS_ID, getURI(), 2153414810ul, 154,
317 opflex::modb::URIBuilder(getURI()).addElement("GbpEpGroupFromNetworkRTgt").addElement(gbpEpGroupFromNetworkRTgtSource).build()
318 );
319 result->setSource(gbpEpGroupFromNetworkRTgtSource);
320 return result;
321 }
322
337 void resolveGbpEpGroupFromNetworkRTgt(/* out */ std::vector<OF_SHARED_PTR<modelgbp::gbp::EpGroupFromNetworkRTgt> >& out)
338 {
339 opflex::modb::mointernal::MO::resolveChildren<modelgbp::gbp::EpGroupFromNetworkRTgt>(
340 getFramework(), CLASS_ID, getURI(), 2153414810ul, 154, out);
341 }
342
352 boost::optional<OF_SHARED_PTR<modelgbp::gbp::BridgeDomainToNetworkRSrc> > resolveGbpBridgeDomainToNetworkRSrc(
353 )
354 {
355 return modelgbp::gbp::BridgeDomainToNetworkRSrc::resolve(getFramework(), opflex::modb::URIBuilder(getURI()).addElement("GbpBridgeDomainToNetworkRSrc").build());
356 }
357
368 OF_SHARED_PTR<modelgbp::gbp::BridgeDomainToNetworkRSrc> addGbpBridgeDomainToNetworkRSrc(
369 )
370 {
371 OF_SHARED_PTR<modelgbp::gbp::BridgeDomainToNetworkRSrc> result = addChild<modelgbp::gbp::BridgeDomainToNetworkRSrc>(
372 CLASS_ID, getURI(), 2153414838ul, 182,
373 opflex::modb::URIBuilder(getURI()).addElement("GbpBridgeDomainToNetworkRSrc").build()
374 );
375 return result;
376 }
377
389 boost::optional<OF_SHARED_PTR<modelgbp::gbp::FloodDomainFromNetworkRTgt> > resolveGbpFloodDomainFromNetworkRTgt(
390 const std::string& gbpFloodDomainFromNetworkRTgtSource)
391 {
392 return modelgbp::gbp::FloodDomainFromNetworkRTgt::resolve(getFramework(), opflex::modb::URIBuilder(getURI()).addElement("GbpFloodDomainFromNetworkRTgt").addElement(gbpFloodDomainFromNetworkRTgtSource).build());
393 }
394
407 OF_SHARED_PTR<modelgbp::gbp::FloodDomainFromNetworkRTgt> addGbpFloodDomainFromNetworkRTgt(
408 const std::string& gbpFloodDomainFromNetworkRTgtSource)
409 {
410 OF_SHARED_PTR<modelgbp::gbp::FloodDomainFromNetworkRTgt> result = addChild<modelgbp::gbp::FloodDomainFromNetworkRTgt>(
411 CLASS_ID, getURI(), 2153414843ul, 187,
412 opflex::modb::URIBuilder(getURI()).addElement("GbpFloodDomainFromNetworkRTgt").addElement(gbpFloodDomainFromNetworkRTgtSource).build()
413 );
414 result->setSource(gbpFloodDomainFromNetworkRTgtSource);
415 return result;
416 }
417
432 void resolveGbpFloodDomainFromNetworkRTgt(/* out */ std::vector<OF_SHARED_PTR<modelgbp::gbp::FloodDomainFromNetworkRTgt> >& out)
433 {
434 opflex::modb::mointernal::MO::resolveChildren<modelgbp::gbp::FloodDomainFromNetworkRTgt>(
435 getFramework(), CLASS_ID, getURI(), 2153414843ul, 187, out);
436 }
437
447 boost::optional<OF_SHARED_PTR<modelgbp::gbp::ForwardingBehavioralGroupToSubnetsRSrc> > resolveGbpForwardingBehavioralGroupToSubnetsRSrc(
448 )
449 {
450 return modelgbp::gbp::ForwardingBehavioralGroupToSubnetsRSrc::resolve(getFramework(), opflex::modb::URIBuilder(getURI()).addElement("GbpForwardingBehavioralGroupToSubnetsRSrc").build());
451 }
452
463 OF_SHARED_PTR<modelgbp::gbp::ForwardingBehavioralGroupToSubnetsRSrc> addGbpForwardingBehavioralGroupToSubnetsRSrc(
464 )
465 {
466 OF_SHARED_PTR<modelgbp::gbp::ForwardingBehavioralGroupToSubnetsRSrc> result = addChild<modelgbp::gbp::ForwardingBehavioralGroupToSubnetsRSrc>(
467 CLASS_ID, getURI(), 2153414855ul, 199,
468 opflex::modb::URIBuilder(getURI()).addElement("GbpForwardingBehavioralGroupToSubnetsRSrc").build()
469 );
470 return result;
471 }
472
481 void remove()
482 {
483 getTLMutator().remove(CLASS_ID, getURI());
484 }
485
496 static void remove(opflex::ofcore::OFFramework& framework,
497 const opflex::modb::URI& uri)
498 {
499 MO::remove(framework, CLASS_ID, uri);
500 }
501
512 static void remove(const opflex::modb::URI& uri)
513 {
514 remove(opflex::ofcore::OFFramework::defaultInstance(), uri);
515 }
516
533 static void remove(
534 opflex::ofcore::OFFramework& framework,
535 const std::string& policySpaceName,
536 const std::string& gbpBridgeDomainName)
537 {
538 MO::remove(framework, CLASS_ID, opflex::modb::URIBuilder().addElement("PolicyUniverse").addElement("PolicySpace").addElement(policySpaceName).addElement("GbpBridgeDomain").addElement(gbpBridgeDomainName).build());
539 }
540
557 static void remove(
558 const std::string& policySpaceName,
559 const std::string& gbpBridgeDomainName)
560 {
561 remove(opflex::ofcore::OFFramework::defaultInstance(),policySpaceName,gbpBridgeDomainName);
562 }
563
575 static void registerListener(
576 opflex::ofcore::OFFramework& framework,
577 opflex::modb::ObjectListener* listener)
578 {
579 opflex::modb::mointernal
580 ::MO::registerListener(framework, listener, CLASS_ID);
581 }
582
594 static void registerListener(
595 opflex::modb::ObjectListener* listener)
596 {
597 registerListener(opflex::ofcore::OFFramework::defaultInstance(), listener);
598 }
599
607 opflex::ofcore::OFFramework& framework,
608 opflex::modb::ObjectListener* listener)
609 {
610 opflex::modb::mointernal
611 ::MO::unregisterListener(framework, listener, CLASS_ID);
612 }
613
621 opflex::modb::ObjectListener* listener)
622 {
623 unregisterListener(opflex::ofcore::OFFramework::defaultInstance(), listener);
624 }
625
631 opflex::ofcore::OFFramework& framework,
632 const opflex::modb::URI& uri,
633 const OF_SHARED_PTR<const opflex::modb::mointernal::ObjectInstance>& oi)
634 : MO(framework, CLASS_ID, uri, oi) { }
635}; // class BridgeDomain
636
637} // namespace gbp
638} // namespace modelgbp
639#endif // GI_GBP_BRIDGEDOMAIN_HPP
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::BridgeDomainToNetworkRSrc > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of BridgeDomainToNetworkRSrc from the managed object store.
Definition BridgeDomainToNetworkRSrc.hpp:257
Definition BridgeDomain.hpp:43
static void registerListener(opflex::ofcore::OFFramework &framework, opflex::modb::ObjectListener *listener)
Register a listener that will get called for changes related to this class.
Definition BridgeDomain.hpp:575
static void remove(const std::string &policySpaceName, const std::string &gbpBridgeDomainName)
Remove the BridgeDomain object with the specified path elements from the managed object store using t...
Definition BridgeDomain.hpp:557
modelgbp::gbp::BridgeDomain & setName(const std::string &newValue)
Set name to the specified value in the currently-active mutator.
Definition BridgeDomain.hpp:89
bool isNameSet()
Check whether name has been set.
Definition BridgeDomain.hpp:55
static const opflex::modb::class_id_t CLASS_ID
The unique class ID for BridgeDomain.
Definition BridgeDomain.hpp:49
OF_SHARED_PTR< modelgbp::gbpe::InstContext > addGbpeInstContext()
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition BridgeDomain.hpp:273
static void unregisterListener(opflex::ofcore::OFFramework &framework, opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class.
Definition BridgeDomain.hpp:606
bool isRoutingModeSet()
Check whether routingMode has been set.
Definition BridgeDomain.hpp:111
modelgbp::gbp::BridgeDomain & unsetRoutingMode()
Unset routingMode in the currently-active mutator.
Definition BridgeDomain.hpp:157
OF_SHARED_PTR< modelgbp::gbp::EpGroupFromNetworkRTgt > addGbpEpGroupFromNetworkRTgt(const std::string &gbpEpGroupFromNetworkRTgtSource)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition BridgeDomain.hpp:312
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::BridgeDomain > > resolve(const opflex::modb::URI &uri)
Retrieve an instance of BridgeDomain from the managed object store using the default framework instan...
Definition BridgeDomain.hpp:192
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::BridgeDomain > > resolve(opflex::ofcore::OFFramework &framework, const std::string &policySpaceName, const std::string &gbpBridgeDomainName)
Retrieve an instance of BridgeDomain from the managed object store by constructing its URI from the p...
Definition BridgeDomain.hpp:216
boost::optional< OF_SHARED_PTR< modelgbp::gbp::EpGroupFromNetworkRTgt > > resolveGbpEpGroupFromNetworkRTgt(const std::string &gbpEpGroupFromNetworkRTgtSource)
Retrieve the child object with the specified naming properties.
Definition BridgeDomain.hpp:294
static void remove(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Remove the BridgeDomain object with the specified URI using the currently-active mutator.
Definition BridgeDomain.hpp:496
OF_SHARED_PTR< modelgbp::gbp::FloodDomainFromNetworkRTgt > addGbpFloodDomainFromNetworkRTgt(const std::string &gbpFloodDomainFromNetworkRTgtSource)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition BridgeDomain.hpp:407
static void remove(const opflex::modb::URI &uri)
Remove the BridgeDomain object with the specified URI using the currently-active mutator and the defa...
Definition BridgeDomain.hpp:512
void remove()
Remove this instance using the currently-active mutator.
Definition BridgeDomain.hpp:481
modelgbp::gbp::BridgeDomain & setRoutingMode(const uint8_t newValue)
Set routingMode to the specified value in the currently-active mutator.
Definition BridgeDomain.hpp:145
boost::optional< OF_SHARED_PTR< modelgbp::gbp::FloodDomainFromNetworkRTgt > > resolveGbpFloodDomainFromNetworkRTgt(const std::string &gbpFloodDomainFromNetworkRTgtSource)
Retrieve the child object with the specified naming properties.
Definition BridgeDomain.hpp:389
void resolveGbpFloodDomainFromNetworkRTgt(std::vector< OF_SHARED_PTR< modelgbp::gbp::FloodDomainFromNetworkRTgt > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::gbp::FloodDomainFromNetworkRTgt.
Definition BridgeDomain.hpp:432
const uint8_t getRoutingMode(const uint8_t defaultValue)
Get the value of routingMode if set, otherwise the value of default passed in.
Definition BridgeDomain.hpp:132
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::BridgeDomain > > resolve(const std::string &policySpaceName, const std::string &gbpBridgeDomainName)
Retrieve an instance of BridgeDomain from the default managed object store by constructing its URI fr...
Definition BridgeDomain.hpp:241
boost::optional< OF_SHARED_PTR< modelgbp::gbpe::InstContext > > resolveGbpeInstContext()
Retrieve the child object with the specified naming properties.
Definition BridgeDomain.hpp:257
OF_SHARED_PTR< modelgbp::gbp::BridgeDomainToNetworkRSrc > addGbpBridgeDomainToNetworkRSrc()
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition BridgeDomain.hpp:368
static void registerListener(opflex::modb::ObjectListener *listener)
Register a listener that will get called for changes related to this class with the default framework...
Definition BridgeDomain.hpp:594
modelgbp::gbp::BridgeDomain & unsetName()
Unset name in the currently-active mutator.
Definition BridgeDomain.hpp:101
const std::string & getName(const std::string &defaultValue)
Get the value of name if set, otherwise the value of default passed in.
Definition BridgeDomain.hpp:76
OF_SHARED_PTR< modelgbp::gbp::ForwardingBehavioralGroupToSubnetsRSrc > addGbpForwardingBehavioralGroupToSubnetsRSrc()
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition BridgeDomain.hpp:463
BridgeDomain(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri, const OF_SHARED_PTR< const opflex::modb::mointernal::ObjectInstance > &oi)
Construct an instance of BridgeDomain.
Definition BridgeDomain.hpp:630
boost::optional< const std::string & > getName()
Get the value of name if it has been set.
Definition BridgeDomain.hpp:64
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::BridgeDomain > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of BridgeDomain from the managed object store.
Definition BridgeDomain.hpp:174
boost::optional< OF_SHARED_PTR< modelgbp::gbp::ForwardingBehavioralGroupToSubnetsRSrc > > resolveGbpForwardingBehavioralGroupToSubnetsRSrc()
Retrieve the child object with the specified naming properties.
Definition BridgeDomain.hpp:447
static void remove(opflex::ofcore::OFFramework &framework, const std::string &policySpaceName, const std::string &gbpBridgeDomainName)
Remove the BridgeDomain object with the specified path elements from the managed object store.
Definition BridgeDomain.hpp:533
void resolveGbpEpGroupFromNetworkRTgt(std::vector< OF_SHARED_PTR< modelgbp::gbp::EpGroupFromNetworkRTgt > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::gbp::EpGroupFromNetworkRTgt.
Definition BridgeDomain.hpp:337
boost::optional< OF_SHARED_PTR< modelgbp::gbp::BridgeDomainToNetworkRSrc > > resolveGbpBridgeDomainToNetworkRSrc()
Retrieve the child object with the specified naming properties.
Definition BridgeDomain.hpp:352
static void unregisterListener(opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class from the default framework instance.
Definition BridgeDomain.hpp:620
boost::optional< const uint8_t > getRoutingMode()
Get the value of routingMode if it has been set.
Definition BridgeDomain.hpp:120
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::EpGroupFromNetworkRTgt > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of EpGroupFromNetworkRTgt from the managed object store.
Definition EpGroupFromNetworkRTgt.hpp:210
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::FloodDomainFromNetworkRTgt > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of FloodDomainFromNetworkRTgt from the managed object store.
Definition FloodDomainFromNetworkRTgt.hpp:210
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::ForwardingBehavioralGroupToSubnetsRSrc > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of ForwardingBehavioralGroupToSubnetsRSrc from the managed object store.
Definition ForwardingBehavioralGroupToSubnetsRSrc.hpp:257
static boost::optional< OF_SHARED_PTR< modelgbp::gbpe::InstContext > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of InstContext from the managed object store.
Definition InstContext.hpp:210
SOME COPYRIGHT.
Definition OpcodeEnumT.hpp:12