modelgbp Generated OpFlex Model  1.7.0
Subnets.hpp
1 
10 #pragma once
11 #ifndef GI_GBP_SUBNETS_HPP
12 #define GI_GBP_SUBNETS_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(gbp/EpGroupFromSubnetsRTgt)
19  */
20 #include "modelgbp/gbp/EpGroupFromSubnetsRTgt.hpp"
21 /*
22  * contains: item:mclass(gbp/RoutingDomainFromIntSubnetsRTgt)
23  */
24 #include "modelgbp/gbp/RoutingDomainFromIntSubnetsRTgt.hpp"
25 /*
26  * contains: item:mclass(gbp/Subnet)
27  */
28 #include "modelgbp/gbp/Subnet.hpp"
29 /*
30  * contains: item:mclass(gbp/ForwardingBehavioralGroupFromSubnetsRTgt)
31  */
32 #include "modelgbp/gbp/ForwardingBehavioralGroupFromSubnetsRTgt.hpp"
33 /*
34  * contains: item:mclass(gbp/SecGroupRuleFromRemoteAddressRTgt)
35  */
36 #include "modelgbp/gbp/SecGroupRuleFromRemoteAddressRTgt.hpp"
37 
38 namespace modelgbp {
39 namespace gbp {
40 
41 class Subnets
42  : public opflex::modb::mointernal::MO
43 {
44 public:
45 
49  static const opflex::modb::class_id_t CLASS_ID = 196;
50 
55  bool isNameSet()
56  {
57  return getObjectInstance().isSet(6422529ul, opflex::modb::PropertyInfo::STRING);
58  }
59 
64  boost::optional<const std::string&> getName()
65  {
66  if (isNameSet())
67  return getObjectInstance().getString(6422529ul);
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::Subnets& setName(const std::string& newValue)
90  {
91  getTLMutator().modify(getClassId(), getURI())->setString(6422529ul, newValue);
92  return *this;
93  }
94 
102  {
103  getTLMutator().modify(getClassId(), getURI())->unset(6422529ul, opflex::modb::PropertyInfo::STRING, opflex::modb::PropertyInfo::SCALAR);
104  return *this;
105  }
106 
118  static boost::optional<OF_SHARED_PTR<modelgbp::gbp::Subnets> > resolve(
119  opflex::ofcore::OFFramework& framework,
120  const opflex::modb::URI& uri)
121  {
122  return opflex::modb::mointernal::MO::resolve<modelgbp::gbp::Subnets>(framework, CLASS_ID, uri);
123  }
124 
136  static boost::optional<OF_SHARED_PTR<modelgbp::gbp::Subnets> > resolve(
137  const opflex::modb::URI& uri)
138  {
139  return opflex::modb::mointernal::MO::resolve<modelgbp::gbp::Subnets>(opflex::ofcore::OFFramework::defaultInstance(), CLASS_ID, uri);
140  }
141 
160  static boost::optional<OF_SHARED_PTR<modelgbp::gbp::Subnets> > resolve(
161  opflex::ofcore::OFFramework& framework,
162  const std::string& policySpaceName,
163  const std::string& gbpSubnetsName)
164  {
165  return resolve(framework,opflex::modb::URIBuilder().addElement("PolicyUniverse").addElement("PolicySpace").addElement(policySpaceName).addElement("GbpSubnets").addElement(gbpSubnetsName).build());
166  }
167 
185  static boost::optional<OF_SHARED_PTR<modelgbp::gbp::Subnets> > resolve(
186  const std::string& policySpaceName,
187  const std::string& gbpSubnetsName)
188  {
189  return resolve(opflex::ofcore::OFFramework::defaultInstance(),policySpaceName,gbpSubnetsName);
190  }
191 
203  boost::optional<OF_SHARED_PTR<modelgbp::gbp::EpGroupFromSubnetsRTgt> > resolveGbpEpGroupFromSubnetsRTgt(
204  const std::string& gbpEpGroupFromSubnetsRTgtSource)
205  {
206  return modelgbp::gbp::EpGroupFromSubnetsRTgt::resolve(getFramework(), opflex::modb::URIBuilder(getURI()).addElement("GbpEpGroupFromSubnetsRTgt").addElement(gbpEpGroupFromSubnetsRTgtSource).build());
207  }
208 
221  OF_SHARED_PTR<modelgbp::gbp::EpGroupFromSubnetsRTgt> addGbpEpGroupFromSubnetsRTgt(
222  const std::string& gbpEpGroupFromSubnetsRTgtSource)
223  {
224  OF_SHARED_PTR<modelgbp::gbp::EpGroupFromSubnetsRTgt> result = addChild<modelgbp::gbp::EpGroupFromSubnetsRTgt>(
225  CLASS_ID, getURI(), 2153906342ul, 166,
226  opflex::modb::URIBuilder(getURI()).addElement("GbpEpGroupFromSubnetsRTgt").addElement(gbpEpGroupFromSubnetsRTgtSource).build()
227  );
228  result->setSource(gbpEpGroupFromSubnetsRTgtSource);
229  return result;
230  }
231 
246  void resolveGbpEpGroupFromSubnetsRTgt(/* out */ std::vector<OF_SHARED_PTR<modelgbp::gbp::EpGroupFromSubnetsRTgt> >& out)
247  {
248  opflex::modb::mointernal::MO::resolveChildren<modelgbp::gbp::EpGroupFromSubnetsRTgt>(
249  getFramework(), CLASS_ID, getURI(), 2153906342ul, 166, out);
250  }
251 
263  boost::optional<OF_SHARED_PTR<modelgbp::gbp::RoutingDomainFromIntSubnetsRTgt> > resolveGbpRoutingDomainFromIntSubnetsRTgt(
264  const std::string& gbpRoutingDomainFromIntSubnetsRTgtSource)
265  {
266  return modelgbp::gbp::RoutingDomainFromIntSubnetsRTgt::resolve(getFramework(), opflex::modb::URIBuilder(getURI()).addElement("GbpRoutingDomainFromIntSubnetsRTgt").addElement(gbpRoutingDomainFromIntSubnetsRTgtSource).build());
267  }
268 
281  OF_SHARED_PTR<modelgbp::gbp::RoutingDomainFromIntSubnetsRTgt> addGbpRoutingDomainFromIntSubnetsRTgt(
282  const std::string& gbpRoutingDomainFromIntSubnetsRTgtSource)
283  {
284  OF_SHARED_PTR<modelgbp::gbp::RoutingDomainFromIntSubnetsRTgt> result = addChild<modelgbp::gbp::RoutingDomainFromIntSubnetsRTgt>(
285  CLASS_ID, getURI(), 2153906368ul, 192,
286  opflex::modb::URIBuilder(getURI()).addElement("GbpRoutingDomainFromIntSubnetsRTgt").addElement(gbpRoutingDomainFromIntSubnetsRTgtSource).build()
287  );
288  result->setSource(gbpRoutingDomainFromIntSubnetsRTgtSource);
289  return result;
290  }
291 
306  void resolveGbpRoutingDomainFromIntSubnetsRTgt(/* out */ std::vector<OF_SHARED_PTR<modelgbp::gbp::RoutingDomainFromIntSubnetsRTgt> >& out)
307  {
308  opflex::modb::mointernal::MO::resolveChildren<modelgbp::gbp::RoutingDomainFromIntSubnetsRTgt>(
309  getFramework(), CLASS_ID, getURI(), 2153906368ul, 192, out);
310  }
311 
323  boost::optional<OF_SHARED_PTR<modelgbp::gbp::Subnet> > resolveGbpSubnet(
324  const std::string& gbpSubnetName)
325  {
326  return modelgbp::gbp::Subnet::resolve(getFramework(), opflex::modb::URIBuilder(getURI()).addElement("GbpSubnet").addElement(gbpSubnetName).build());
327  }
328 
341  OF_SHARED_PTR<modelgbp::gbp::Subnet> addGbpSubnet(
342  const std::string& gbpSubnetName)
343  {
344  OF_SHARED_PTR<modelgbp::gbp::Subnet> result = addChild<modelgbp::gbp::Subnet>(
345  CLASS_ID, getURI(), 2153906371ul, 195,
346  opflex::modb::URIBuilder(getURI()).addElement("GbpSubnet").addElement(gbpSubnetName).build()
347  );
348  result->setName(gbpSubnetName);
349  return result;
350  }
351 
366  void resolveGbpSubnet(/* out */ std::vector<OF_SHARED_PTR<modelgbp::gbp::Subnet> >& out)
367  {
368  opflex::modb::mointernal::MO::resolveChildren<modelgbp::gbp::Subnet>(
369  getFramework(), CLASS_ID, getURI(), 2153906371ul, 195, out);
370  }
371 
383  boost::optional<OF_SHARED_PTR<modelgbp::gbp::ForwardingBehavioralGroupFromSubnetsRTgt> > resolveGbpForwardingBehavioralGroupFromSubnetsRTgt(
384  const std::string& gbpForwardingBehavioralGroupFromSubnetsRTgtSource)
385  {
386  return modelgbp::gbp::ForwardingBehavioralGroupFromSubnetsRTgt::resolve(getFramework(), opflex::modb::URIBuilder(getURI()).addElement("GbpForwardingBehavioralGroupFromSubnetsRTgt").addElement(gbpForwardingBehavioralGroupFromSubnetsRTgtSource).build());
387  }
388 
401  OF_SHARED_PTR<modelgbp::gbp::ForwardingBehavioralGroupFromSubnetsRTgt> addGbpForwardingBehavioralGroupFromSubnetsRTgt(
402  const std::string& gbpForwardingBehavioralGroupFromSubnetsRTgtSource)
403  {
404  OF_SHARED_PTR<modelgbp::gbp::ForwardingBehavioralGroupFromSubnetsRTgt> result = addChild<modelgbp::gbp::ForwardingBehavioralGroupFromSubnetsRTgt>(
405  CLASS_ID, getURI(), 2153906376ul, 200,
406  opflex::modb::URIBuilder(getURI()).addElement("GbpForwardingBehavioralGroupFromSubnetsRTgt").addElement(gbpForwardingBehavioralGroupFromSubnetsRTgtSource).build()
407  );
408  result->setSource(gbpForwardingBehavioralGroupFromSubnetsRTgtSource);
409  return result;
410  }
411 
426  void resolveGbpForwardingBehavioralGroupFromSubnetsRTgt(/* out */ std::vector<OF_SHARED_PTR<modelgbp::gbp::ForwardingBehavioralGroupFromSubnetsRTgt> >& out)
427  {
428  opflex::modb::mointernal::MO::resolveChildren<modelgbp::gbp::ForwardingBehavioralGroupFromSubnetsRTgt>(
429  getFramework(), CLASS_ID, getURI(), 2153906376ul, 200, out);
430  }
431 
443  boost::optional<OF_SHARED_PTR<modelgbp::gbp::SecGroupRuleFromRemoteAddressRTgt> > resolveGbpSecGroupRuleFromRemoteAddressRTgt(
444  const std::string& gbpSecGroupRuleFromRemoteAddressRTgtSource)
445  {
446  return modelgbp::gbp::SecGroupRuleFromRemoteAddressRTgt::resolve(getFramework(), opflex::modb::URIBuilder(getURI()).addElement("GbpSecGroupRuleFromRemoteAddressRTgt").addElement(gbpSecGroupRuleFromRemoteAddressRTgtSource).build());
447  }
448 
461  OF_SHARED_PTR<modelgbp::gbp::SecGroupRuleFromRemoteAddressRTgt> addGbpSecGroupRuleFromRemoteAddressRTgt(
462  const std::string& gbpSecGroupRuleFromRemoteAddressRTgtSource)
463  {
464  OF_SHARED_PTR<modelgbp::gbp::SecGroupRuleFromRemoteAddressRTgt> result = addChild<modelgbp::gbp::SecGroupRuleFromRemoteAddressRTgt>(
465  CLASS_ID, getURI(), 2153906383ul, 207,
466  opflex::modb::URIBuilder(getURI()).addElement("GbpSecGroupRuleFromRemoteAddressRTgt").addElement(gbpSecGroupRuleFromRemoteAddressRTgtSource).build()
467  );
468  result->setSource(gbpSecGroupRuleFromRemoteAddressRTgtSource);
469  return result;
470  }
471 
486  void resolveGbpSecGroupRuleFromRemoteAddressRTgt(/* out */ std::vector<OF_SHARED_PTR<modelgbp::gbp::SecGroupRuleFromRemoteAddressRTgt> >& out)
487  {
488  opflex::modb::mointernal::MO::resolveChildren<modelgbp::gbp::SecGroupRuleFromRemoteAddressRTgt>(
489  getFramework(), CLASS_ID, getURI(), 2153906383ul, 207, out);
490  }
491 
500  void remove()
501  {
502  getTLMutator().remove(CLASS_ID, getURI());
503  }
504 
515  static void remove(opflex::ofcore::OFFramework& framework,
516  const opflex::modb::URI& uri)
517  {
518  MO::remove(framework, CLASS_ID, uri);
519  }
520 
531  static void remove(const opflex::modb::URI& uri)
532  {
533  remove(opflex::ofcore::OFFramework::defaultInstance(), uri);
534  }
535 
552  static void remove(
553  opflex::ofcore::OFFramework& framework,
554  const std::string& policySpaceName,
555  const std::string& gbpSubnetsName)
556  {
557  MO::remove(framework, CLASS_ID, opflex::modb::URIBuilder().addElement("PolicyUniverse").addElement("PolicySpace").addElement(policySpaceName).addElement("GbpSubnets").addElement(gbpSubnetsName).build());
558  }
559 
576  static void remove(
577  const std::string& policySpaceName,
578  const std::string& gbpSubnetsName)
579  {
580  remove(opflex::ofcore::OFFramework::defaultInstance(),policySpaceName,gbpSubnetsName);
581  }
582 
594  static void registerListener(
595  opflex::ofcore::OFFramework& framework,
596  opflex::modb::ObjectListener* listener)
597  {
598  opflex::modb::mointernal
599  ::MO::registerListener(framework, listener, CLASS_ID);
600  }
601 
613  static void registerListener(
614  opflex::modb::ObjectListener* listener)
615  {
616  registerListener(opflex::ofcore::OFFramework::defaultInstance(), listener);
617  }
618 
625  static void unregisterListener(
626  opflex::ofcore::OFFramework& framework,
627  opflex::modb::ObjectListener* listener)
628  {
629  opflex::modb::mointernal
630  ::MO::unregisterListener(framework, listener, CLASS_ID);
631  }
632 
639  static void unregisterListener(
640  opflex::modb::ObjectListener* listener)
641  {
642  unregisterListener(opflex::ofcore::OFFramework::defaultInstance(), listener);
643  }
644 
650  opflex::ofcore::OFFramework& framework,
651  const opflex::modb::URI& uri,
652  const OF_SHARED_PTR<const opflex::modb::mointernal::ObjectInstance>& oi)
653  : MO(framework, CLASS_ID, uri, oi) { }
654 }; // class Subnets
655 
656 } // namespace gbp
657 } // namespace modelgbp
658 #endif // GI_GBP_SUBNETS_HPP
boost::optional< OF_SHARED_PTR< modelgbp::gbp::Subnet > > resolveGbpSubnet(const std::string &gbpSubnetName)
Retrieve the child object with the specified naming properties.
Definition: Subnets.hpp:323
OF_SHARED_PTR< modelgbp::gbp::SecGroupRuleFromRemoteAddressRTgt > addGbpSecGroupRuleFromRemoteAddressRTgt(const std::string &gbpSecGroupRuleFromRemoteAddressRTgtSource)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition: Subnets.hpp:461
boost::optional< const std::string & > getName()
Get the value of name if it has been set.
Definition: Subnets.hpp:64
void resolveGbpEpGroupFromSubnetsRTgt(std::vector< OF_SHARED_PTR< modelgbp::gbp::EpGroupFromSubnetsRTgt > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::gbp::EpGroupFromSubnetsRTgt.
Definition: Subnets.hpp:246
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: Subnets.hpp:613
void resolveGbpForwardingBehavioralGroupFromSubnetsRTgt(std::vector< OF_SHARED_PTR< modelgbp::gbp::ForwardingBehavioralGroupFromSubnetsRTgt > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::gbp::ForwardingBehavioralGroupFr...
Definition: Subnets.hpp:426
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::ForwardingBehavioralGroupFromSubnetsRTgt > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of ForwardingBehavioralGroupFromSubnetsRTgt from the managed object store...
Definition: ForwardingBehavioralGroupFromSubnetsRTgt.hpp:210
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::Subnets > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of Subnets from the managed object store.
Definition: Subnets.hpp:118
static void unregisterListener(opflex::ofcore::OFFramework &framework, opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class.
Definition: Subnets.hpp:625
Subnets(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri, const OF_SHARED_PTR< const opflex::modb::mointernal::ObjectInstance > &oi)
Construct an instance of Subnets.
Definition: Subnets.hpp:649
void resolveGbpRoutingDomainFromIntSubnetsRTgt(std::vector< OF_SHARED_PTR< modelgbp::gbp::RoutingDomainFromIntSubnetsRTgt > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::gbp::RoutingDomainFromIntSubnets...
Definition: Subnets.hpp:306
OF_SHARED_PTR< modelgbp::gbp::ForwardingBehavioralGroupFromSubnetsRTgt > addGbpForwardingBehavioralGroupFromSubnetsRTgt(const std::string &gbpForwardingBehavioralGroupFromSubnetsRTgtSource)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition: Subnets.hpp:401
OF_SHARED_PTR< modelgbp::gbp::EpGroupFromSubnetsRTgt > addGbpEpGroupFromSubnetsRTgt(const std::string &gbpEpGroupFromSubnetsRTgtSource)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition: Subnets.hpp:221
boost::optional< OF_SHARED_PTR< modelgbp::gbp::EpGroupFromSubnetsRTgt > > resolveGbpEpGroupFromSubnetsRTgt(const std::string &gbpEpGroupFromSubnetsRTgtSource)
Retrieve the child object with the specified naming properties.
Definition: Subnets.hpp:203
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::SecGroupRuleFromRemoteAddressRTgt > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of SecGroupRuleFromRemoteAddressRTgt from the managed object store...
Definition: SecGroupRuleFromRemoteAddressRTgt.hpp:210
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::RoutingDomainFromIntSubnetsRTgt > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of RoutingDomainFromIntSubnetsRTgt from the managed object store.
Definition: RoutingDomainFromIntSubnetsRTgt.hpp:210
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::EpGroupFromSubnetsRTgt > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of EpGroupFromSubnetsRTgt from the managed object store.
Definition: EpGroupFromSubnetsRTgt.hpp:210
boost::optional< OF_SHARED_PTR< modelgbp::gbp::RoutingDomainFromIntSubnetsRTgt > > resolveGbpRoutingDomainFromIntSubnetsRTgt(const std::string &gbpRoutingDomainFromIntSubnetsRTgtSource)
Retrieve the child object with the specified naming properties.
Definition: Subnets.hpp:263
boost::optional< OF_SHARED_PTR< modelgbp::gbp::SecGroupRuleFromRemoteAddressRTgt > > resolveGbpSecGroupRuleFromRemoteAddressRTgt(const std::string &gbpSecGroupRuleFromRemoteAddressRTgtSource)
Retrieve the child object with the specified naming properties.
Definition: Subnets.hpp:443
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::Subnets > > resolve(const std::string &policySpaceName, const std::string &gbpSubnetsName)
Retrieve an instance of Subnets from the default managed object store by constructing its URI from th...
Definition: Subnets.hpp:185
void resolveGbpSecGroupRuleFromRemoteAddressRTgt(std::vector< OF_SHARED_PTR< modelgbp::gbp::SecGroupRuleFromRemoteAddressRTgt > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::gbp::SecGroupRuleFromRemoteAddre...
Definition: Subnets.hpp:486
Definition: Subnets.hpp:41
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::Subnet > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of Subnet from the managed object store.
Definition: Subnet.hpp:434
modelgbp::gbp::Subnets & unsetName()
Unset name in the currently-active mutator.
Definition: Subnets.hpp:101
OF_SHARED_PTR< modelgbp::gbp::Subnet > addGbpSubnet(const std::string &gbpSubnetName)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition: Subnets.hpp:341
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: Subnets.hpp:594
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::Subnets > > resolve(opflex::ofcore::OFFramework &framework, const std::string &policySpaceName, const std::string &gbpSubnetsName)
Retrieve an instance of Subnets from the managed object store by constructing its URI from the path e...
Definition: Subnets.hpp:160
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::Subnets > > resolve(const opflex::modb::URI &uri)
Retrieve an instance of Subnets from the managed object store using the default framework instance...
Definition: Subnets.hpp:136
static void unregisterListener(opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class from the default framework instance.
Definition: Subnets.hpp:639
modelgbp::gbp::Subnets & setName(const std::string &newValue)
Set name to the specified value in the currently-active mutator.
Definition: Subnets.hpp:89
void resolveGbpSubnet(std::vector< OF_SHARED_PTR< modelgbp::gbp::Subnet > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::gbp::Subnet. ...
Definition: Subnets.hpp:366
const std::string & getName(const std::string &defaultValue)
Get the value of name if set, otherwise the value of default passed in.
Definition: Subnets.hpp:76
static const opflex::modb::class_id_t CLASS_ID
The unique class ID for Subnets.
Definition: Subnets.hpp:49
bool isNameSet()
Check whether name has been set.
Definition: Subnets.hpp:55
SOME COPYRIGHT.
Definition: OpcodeEnumT.hpp:12
OF_SHARED_PTR< modelgbp::gbp::RoutingDomainFromIntSubnetsRTgt > addGbpRoutingDomainFromIntSubnetsRTgt(const std::string &gbpRoutingDomainFromIntSubnetsRTgtSource)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition: Subnets.hpp:281
boost::optional< OF_SHARED_PTR< modelgbp::gbp::ForwardingBehavioralGroupFromSubnetsRTgt > > resolveGbpForwardingBehavioralGroupFromSubnetsRTgt(const std::string &gbpForwardingBehavioralGroupFromSubnetsRTgtSource)
Retrieve the child object with the specified naming properties.
Definition: Subnets.hpp:383