modelgbp Generated OpFlex Model  1.7.0
FloodDomain.hpp
1 
10 #pragma once
11 #ifndef GI_GBP_FLOODDOMAIN_HPP
12 #define GI_GBP_FLOODDOMAIN_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/FloodContext)
19  */
20 #include "modelgbp/gbpe/FloodContext.hpp"
21 /*
22  * contains: item:mclass(gbp/EpGroupFromNetworkRTgt)
23  */
24 #include "modelgbp/gbp/EpGroupFromNetworkRTgt.hpp"
25 /*
26  * contains: item:mclass(gbp/FloodDomainToNetworkRSrc)
27  */
28 #include "modelgbp/gbp/FloodDomainToNetworkRSrc.hpp"
29 /*
30  * contains: item:mclass(gbp/ForwardingBehavioralGroupToSubnetsRSrc)
31  */
32 #include "modelgbp/gbp/ForwardingBehavioralGroupToSubnetsRSrc.hpp"
33 
34 namespace modelgbp {
35 namespace gbp {
36 
38  : public opflex::modb::mointernal::MO
39 {
40 public:
41 
45  static const opflex::modb::class_id_t CLASS_ID = 185;
46 
51  bool isArpModeSet()
52  {
53  return getObjectInstance().isSet(6062082ul, opflex::modb::PropertyInfo::ENUM8);
54  }
55 
60  boost::optional<const uint8_t> getArpMode()
61  {
62  if (isArpModeSet())
63  return (const uint8_t)getObjectInstance().getUInt64(6062082ul);
64  return boost::none;
65  }
66 
72  const uint8_t getArpMode(const uint8_t defaultValue)
73  {
74  return getArpMode().get_value_or(defaultValue);
75  }
76 
85  modelgbp::gbp::FloodDomain& setArpMode(const uint8_t newValue)
86  {
87  getTLMutator().modify(getClassId(), getURI())->setUInt64(6062082ul, newValue);
88  return *this;
89  }
90 
98  {
99  getTLMutator().modify(getClassId(), getURI())->unset(6062082ul, opflex::modb::PropertyInfo::ENUM8, opflex::modb::PropertyInfo::SCALAR);
100  return *this;
101  }
102 
108  {
109  return getObjectInstance().isSet(6062085ul, opflex::modb::PropertyInfo::ENUM8);
110  }
111 
116  boost::optional<const uint8_t> getBcastFloodMode()
117  {
118  if (isBcastFloodModeSet())
119  return (const uint8_t)getObjectInstance().getUInt64(6062085ul);
120  return boost::none;
121  }
122 
128  const uint8_t getBcastFloodMode(const uint8_t defaultValue)
129  {
130  return getBcastFloodMode().get_value_or(defaultValue);
131  }
132 
142  {
143  getTLMutator().modify(getClassId(), getURI())->setUInt64(6062085ul, newValue);
144  return *this;
145  }
146 
154  {
155  getTLMutator().modify(getClassId(), getURI())->unset(6062085ul, opflex::modb::PropertyInfo::ENUM8, opflex::modb::PropertyInfo::SCALAR);
156  return *this;
157  }
158 
163  bool isNameSet()
164  {
165  return getObjectInstance().isSet(6062081ul, opflex::modb::PropertyInfo::STRING);
166  }
167 
172  boost::optional<const std::string&> getName()
173  {
174  if (isNameSet())
175  return getObjectInstance().getString(6062081ul);
176  return boost::none;
177  }
178 
184  const std::string& getName(const std::string& defaultValue)
185  {
186  return getName().get_value_or(defaultValue);
187  }
188 
197  modelgbp::gbp::FloodDomain& setName(const std::string& newValue)
198  {
199  getTLMutator().modify(getClassId(), getURI())->setString(6062081ul, newValue);
200  return *this;
201  }
202 
210  {
211  getTLMutator().modify(getClassId(), getURI())->unset(6062081ul, opflex::modb::PropertyInfo::STRING, opflex::modb::PropertyInfo::SCALAR);
212  return *this;
213  }
214 
220  {
221  return getObjectInstance().isSet(6062083ul, opflex::modb::PropertyInfo::ENUM8);
222  }
223 
228  boost::optional<const uint8_t> getNeighborDiscMode()
229  {
230  if (isNeighborDiscModeSet())
231  return (const uint8_t)getObjectInstance().getUInt64(6062083ul);
232  return boost::none;
233  }
234 
240  const uint8_t getNeighborDiscMode(const uint8_t defaultValue)
241  {
242  return getNeighborDiscMode().get_value_or(defaultValue);
243  }
244 
254  {
255  getTLMutator().modify(getClassId(), getURI())->setUInt64(6062083ul, newValue);
256  return *this;
257  }
258 
266  {
267  getTLMutator().modify(getClassId(), getURI())->unset(6062083ul, opflex::modb::PropertyInfo::ENUM8, opflex::modb::PropertyInfo::SCALAR);
268  return *this;
269  }
270 
276  {
277  return getObjectInstance().isSet(6062084ul, opflex::modb::PropertyInfo::ENUM8);
278  }
279 
284  boost::optional<const uint8_t> getUnknownFloodMode()
285  {
286  if (isUnknownFloodModeSet())
287  return (const uint8_t)getObjectInstance().getUInt64(6062084ul);
288  return boost::none;
289  }
290 
296  const uint8_t getUnknownFloodMode(const uint8_t defaultValue)
297  {
298  return getUnknownFloodMode().get_value_or(defaultValue);
299  }
300 
310  {
311  getTLMutator().modify(getClassId(), getURI())->setUInt64(6062084ul, newValue);
312  return *this;
313  }
314 
322  {
323  getTLMutator().modify(getClassId(), getURI())->unset(6062084ul, opflex::modb::PropertyInfo::ENUM8, opflex::modb::PropertyInfo::SCALAR);
324  return *this;
325  }
326 
338  static boost::optional<OF_SHARED_PTR<modelgbp::gbp::FloodDomain> > resolve(
339  opflex::ofcore::OFFramework& framework,
340  const opflex::modb::URI& uri)
341  {
342  return opflex::modb::mointernal::MO::resolve<modelgbp::gbp::FloodDomain>(framework, CLASS_ID, uri);
343  }
344 
356  static boost::optional<OF_SHARED_PTR<modelgbp::gbp::FloodDomain> > resolve(
357  const opflex::modb::URI& uri)
358  {
359  return opflex::modb::mointernal::MO::resolve<modelgbp::gbp::FloodDomain>(opflex::ofcore::OFFramework::defaultInstance(), CLASS_ID, uri);
360  }
361 
380  static boost::optional<OF_SHARED_PTR<modelgbp::gbp::FloodDomain> > resolve(
381  opflex::ofcore::OFFramework& framework,
382  const std::string& policySpaceName,
383  const std::string& gbpFloodDomainName)
384  {
385  return resolve(framework,opflex::modb::URIBuilder().addElement("PolicyUniverse").addElement("PolicySpace").addElement(policySpaceName).addElement("GbpFloodDomain").addElement(gbpFloodDomainName).build());
386  }
387 
405  static boost::optional<OF_SHARED_PTR<modelgbp::gbp::FloodDomain> > resolve(
406  const std::string& policySpaceName,
407  const std::string& gbpFloodDomainName)
408  {
409  return resolve(opflex::ofcore::OFFramework::defaultInstance(),policySpaceName,gbpFloodDomainName);
410  }
411 
421  boost::optional<OF_SHARED_PTR<modelgbp::gbpe::FloodContext> > resolveGbpeFloodContext(
422  )
423  {
424  return modelgbp::gbpe::FloodContext::resolve(getFramework(), opflex::modb::URIBuilder(getURI()).addElement("GbpeFloodContext").build());
425  }
426 
437  OF_SHARED_PTR<modelgbp::gbpe::FloodContext> addGbpeFloodContext(
438  )
439  {
440  OF_SHARED_PTR<modelgbp::gbpe::FloodContext> result = addChild<modelgbp::gbpe::FloodContext>(
441  CLASS_ID, getURI(), 2153545769ul, 41,
442  opflex::modb::URIBuilder(getURI()).addElement("GbpeFloodContext").build()
443  );
444  return result;
445  }
446 
458  boost::optional<OF_SHARED_PTR<modelgbp::gbp::EpGroupFromNetworkRTgt> > resolveGbpEpGroupFromNetworkRTgt(
459  const std::string& gbpEpGroupFromNetworkRTgtSource)
460  {
461  return modelgbp::gbp::EpGroupFromNetworkRTgt::resolve(getFramework(), opflex::modb::URIBuilder(getURI()).addElement("GbpEpGroupFromNetworkRTgt").addElement(gbpEpGroupFromNetworkRTgtSource).build());
462  }
463 
476  OF_SHARED_PTR<modelgbp::gbp::EpGroupFromNetworkRTgt> addGbpEpGroupFromNetworkRTgt(
477  const std::string& gbpEpGroupFromNetworkRTgtSource)
478  {
479  OF_SHARED_PTR<modelgbp::gbp::EpGroupFromNetworkRTgt> result = addChild<modelgbp::gbp::EpGroupFromNetworkRTgt>(
480  CLASS_ID, getURI(), 2153545882ul, 154,
481  opflex::modb::URIBuilder(getURI()).addElement("GbpEpGroupFromNetworkRTgt").addElement(gbpEpGroupFromNetworkRTgtSource).build()
482  );
483  result->setSource(gbpEpGroupFromNetworkRTgtSource);
484  return result;
485  }
486 
501  void resolveGbpEpGroupFromNetworkRTgt(/* out */ std::vector<OF_SHARED_PTR<modelgbp::gbp::EpGroupFromNetworkRTgt> >& out)
502  {
503  opflex::modb::mointernal::MO::resolveChildren<modelgbp::gbp::EpGroupFromNetworkRTgt>(
504  getFramework(), CLASS_ID, getURI(), 2153545882ul, 154, out);
505  }
506 
516  boost::optional<OF_SHARED_PTR<modelgbp::gbp::FloodDomainToNetworkRSrc> > resolveGbpFloodDomainToNetworkRSrc(
517  )
518  {
519  return modelgbp::gbp::FloodDomainToNetworkRSrc::resolve(getFramework(), opflex::modb::URIBuilder(getURI()).addElement("GbpFloodDomainToNetworkRSrc").build());
520  }
521 
532  OF_SHARED_PTR<modelgbp::gbp::FloodDomainToNetworkRSrc> addGbpFloodDomainToNetworkRSrc(
533  )
534  {
535  OF_SHARED_PTR<modelgbp::gbp::FloodDomainToNetworkRSrc> result = addChild<modelgbp::gbp::FloodDomainToNetworkRSrc>(
536  CLASS_ID, getURI(), 2153545914ul, 186,
537  opflex::modb::URIBuilder(getURI()).addElement("GbpFloodDomainToNetworkRSrc").build()
538  );
539  return result;
540  }
541 
551  boost::optional<OF_SHARED_PTR<modelgbp::gbp::ForwardingBehavioralGroupToSubnetsRSrc> > resolveGbpForwardingBehavioralGroupToSubnetsRSrc(
552  )
553  {
554  return modelgbp::gbp::ForwardingBehavioralGroupToSubnetsRSrc::resolve(getFramework(), opflex::modb::URIBuilder(getURI()).addElement("GbpForwardingBehavioralGroupToSubnetsRSrc").build());
555  }
556 
567  OF_SHARED_PTR<modelgbp::gbp::ForwardingBehavioralGroupToSubnetsRSrc> addGbpForwardingBehavioralGroupToSubnetsRSrc(
568  )
569  {
570  OF_SHARED_PTR<modelgbp::gbp::ForwardingBehavioralGroupToSubnetsRSrc> result = addChild<modelgbp::gbp::ForwardingBehavioralGroupToSubnetsRSrc>(
571  CLASS_ID, getURI(), 2153545927ul, 199,
572  opflex::modb::URIBuilder(getURI()).addElement("GbpForwardingBehavioralGroupToSubnetsRSrc").build()
573  );
574  return result;
575  }
576 
585  void remove()
586  {
587  getTLMutator().remove(CLASS_ID, getURI());
588  }
589 
600  static void remove(opflex::ofcore::OFFramework& framework,
601  const opflex::modb::URI& uri)
602  {
603  MO::remove(framework, CLASS_ID, uri);
604  }
605 
616  static void remove(const opflex::modb::URI& uri)
617  {
618  remove(opflex::ofcore::OFFramework::defaultInstance(), uri);
619  }
620 
637  static void remove(
638  opflex::ofcore::OFFramework& framework,
639  const std::string& policySpaceName,
640  const std::string& gbpFloodDomainName)
641  {
642  MO::remove(framework, CLASS_ID, opflex::modb::URIBuilder().addElement("PolicyUniverse").addElement("PolicySpace").addElement(policySpaceName).addElement("GbpFloodDomain").addElement(gbpFloodDomainName).build());
643  }
644 
661  static void remove(
662  const std::string& policySpaceName,
663  const std::string& gbpFloodDomainName)
664  {
665  remove(opflex::ofcore::OFFramework::defaultInstance(),policySpaceName,gbpFloodDomainName);
666  }
667 
679  static void registerListener(
680  opflex::ofcore::OFFramework& framework,
681  opflex::modb::ObjectListener* listener)
682  {
683  opflex::modb::mointernal
684  ::MO::registerListener(framework, listener, CLASS_ID);
685  }
686 
698  static void registerListener(
699  opflex::modb::ObjectListener* listener)
700  {
701  registerListener(opflex::ofcore::OFFramework::defaultInstance(), listener);
702  }
703 
710  static void unregisterListener(
711  opflex::ofcore::OFFramework& framework,
712  opflex::modb::ObjectListener* listener)
713  {
714  opflex::modb::mointernal
715  ::MO::unregisterListener(framework, listener, CLASS_ID);
716  }
717 
724  static void unregisterListener(
725  opflex::modb::ObjectListener* listener)
726  {
727  unregisterListener(opflex::ofcore::OFFramework::defaultInstance(), listener);
728  }
729 
735  opflex::ofcore::OFFramework& framework,
736  const opflex::modb::URI& uri,
737  const OF_SHARED_PTR<const opflex::modb::mointernal::ObjectInstance>& oi)
738  : MO(framework, CLASS_ID, uri, oi) { }
739 }; // class FloodDomain
740 
741 } // namespace gbp
742 } // namespace modelgbp
743 #endif // GI_GBP_FLOODDOMAIN_HPP
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: FloodDomain.hpp:567
modelgbp::gbp::FloodDomain & unsetArpMode()
Unset arpMode in the currently-active mutator.
Definition: FloodDomain.hpp:97
static const opflex::modb::class_id_t CLASS_ID
The unique class ID for FloodDomain.
Definition: FloodDomain.hpp:45
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: FloodDomain.hpp:698
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: FloodDomain.hpp:679
boost::optional< const uint8_t > getNeighborDiscMode()
Get the value of neighborDiscMode if it has been set.
Definition: FloodDomain.hpp:228
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
boost::optional< OF_SHARED_PTR< modelgbp::gbp::ForwardingBehavioralGroupToSubnetsRSrc > > resolveGbpForwardingBehavioralGroupToSubnetsRSrc()
Retrieve the child object with the specified naming properties.
Definition: FloodDomain.hpp:551
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 void unregisterListener(opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class from the default framework instance.
Definition: FloodDomain.hpp:724
modelgbp::gbp::FloodDomain & setBcastFloodMode(const uint8_t newValue)
Set bcastFloodMode to the specified value in the currently-active mutator.
Definition: FloodDomain.hpp:141
const std::string & getName(const std::string &defaultValue)
Get the value of name if set, otherwise the value of default passed in.
Definition: FloodDomain.hpp:184
modelgbp::gbp::FloodDomain & setUnknownFloodMode(const uint8_t newValue)
Set unknownFloodMode to the specified value in the currently-active mutator.
Definition: FloodDomain.hpp:309
boost::optional< const uint8_t > getBcastFloodMode()
Get the value of bcastFloodMode if it has been set.
Definition: FloodDomain.hpp:116
modelgbp::gbp::FloodDomain & unsetBcastFloodMode()
Unset bcastFloodMode in the currently-active mutator.
Definition: FloodDomain.hpp:153
modelgbp::gbp::FloodDomain & unsetName()
Unset name in the currently-active mutator.
Definition: FloodDomain.hpp:209
static boost::optional< OF_SHARED_PTR< modelgbp::gbpe::FloodContext > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of FloodContext from the managed object store.
Definition: FloodContext.hpp:98
modelgbp::gbp::FloodDomain & setArpMode(const uint8_t newValue)
Set arpMode to the specified value in the currently-active mutator.
Definition: FloodDomain.hpp:85
const uint8_t getUnknownFloodMode(const uint8_t defaultValue)
Get the value of unknownFloodMode if set, otherwise the value of default passed in.
Definition: FloodDomain.hpp:296
modelgbp::gbp::FloodDomain & setName(const std::string &newValue)
Set name to the specified value in the currently-active mutator.
Definition: FloodDomain.hpp:197
modelgbp::gbp::FloodDomain & setNeighborDiscMode(const uint8_t newValue)
Set neighborDiscMode to the specified value in the currently-active mutator.
Definition: FloodDomain.hpp:253
const uint8_t getArpMode(const uint8_t defaultValue)
Get the value of arpMode if set, otherwise the value of default passed in.
Definition: FloodDomain.hpp:72
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: FloodDomain.hpp:501
Definition: FloodDomain.hpp:37
bool isArpModeSet()
Check whether arpMode has been set.
Definition: FloodDomain.hpp:51
FloodDomain(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri, const OF_SHARED_PTR< const opflex::modb::mointernal::ObjectInstance > &oi)
Construct an instance of FloodDomain.
Definition: FloodDomain.hpp:734
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::FloodDomainToNetworkRSrc > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of FloodDomainToNetworkRSrc from the managed object store.
Definition: FloodDomainToNetworkRSrc.hpp:257
modelgbp::gbp::FloodDomain & unsetNeighborDiscMode()
Unset neighborDiscMode in the currently-active mutator.
Definition: FloodDomain.hpp:265
boost::optional< OF_SHARED_PTR< modelgbp::gbpe::FloodContext > > resolveGbpeFloodContext()
Retrieve the child object with the specified naming properties.
Definition: FloodDomain.hpp:421
boost::optional< OF_SHARED_PTR< modelgbp::gbp::EpGroupFromNetworkRTgt > > resolveGbpEpGroupFromNetworkRTgt(const std::string &gbpEpGroupFromNetworkRTgtSource)
Retrieve the child object with the specified naming properties.
Definition: FloodDomain.hpp:458
const uint8_t getBcastFloodMode(const uint8_t defaultValue)
Get the value of bcastFloodMode if set, otherwise the value of default passed in. ...
Definition: FloodDomain.hpp:128
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::FloodDomain > > resolve(const std::string &policySpaceName, const std::string &gbpFloodDomainName)
Retrieve an instance of FloodDomain from the default managed object store by constructing its URI fro...
Definition: FloodDomain.hpp:405
bool isNeighborDiscModeSet()
Check whether neighborDiscMode has been set.
Definition: FloodDomain.hpp:219
boost::optional< const uint8_t > getUnknownFloodMode()
Get the value of unknownFloodMode if it has been set.
Definition: FloodDomain.hpp:284
OF_SHARED_PTR< modelgbp::gbpe::FloodContext > addGbpeFloodContext()
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition: FloodDomain.hpp:437
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::FloodDomain > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of FloodDomain from the managed object store.
Definition: FloodDomain.hpp:338
boost::optional< OF_SHARED_PTR< modelgbp::gbp::FloodDomainToNetworkRSrc > > resolveGbpFloodDomainToNetworkRSrc()
Retrieve the child object with the specified naming properties.
Definition: FloodDomain.hpp:516
boost::optional< const uint8_t > getArpMode()
Get the value of arpMode if it has been set.
Definition: FloodDomain.hpp:60
bool isUnknownFloodModeSet()
Check whether unknownFloodMode has been set.
Definition: FloodDomain.hpp:275
static void unregisterListener(opflex::ofcore::OFFramework &framework, opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class.
Definition: FloodDomain.hpp:710
modelgbp::gbp::FloodDomain & unsetUnknownFloodMode()
Unset unknownFloodMode in the currently-active mutator.
Definition: FloodDomain.hpp:321
const uint8_t getNeighborDiscMode(const uint8_t defaultValue)
Get the value of neighborDiscMode if set, otherwise the value of default passed in.
Definition: FloodDomain.hpp:240
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::FloodDomain > > resolve(opflex::ofcore::OFFramework &framework, const std::string &policySpaceName, const std::string &gbpFloodDomainName)
Retrieve an instance of FloodDomain from the managed object store by constructing its URI from the pa...
Definition: FloodDomain.hpp:380
OF_SHARED_PTR< modelgbp::gbp::FloodDomainToNetworkRSrc > addGbpFloodDomainToNetworkRSrc()
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition: FloodDomain.hpp:532
bool isBcastFloodModeSet()
Check whether bcastFloodMode has been set.
Definition: FloodDomain.hpp:107
bool isNameSet()
Check whether name has been set.
Definition: FloodDomain.hpp:163
boost::optional< const std::string & > getName()
Get the value of name if it has been set.
Definition: FloodDomain.hpp:172
SOME COPYRIGHT.
Definition: OpcodeEnumT.hpp:12
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: FloodDomain.hpp:476
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::FloodDomain > > resolve(const opflex::modb::URI &uri)
Retrieve an instance of FloodDomain from the managed object store using the default framework instanc...
Definition: FloodDomain.hpp:356