11#ifndef GI_GBP_L3EXTERNALNETWORK_HPP
12#define GI_GBP_L3EXTERNALNETWORK_HPP
14#include <boost/optional.hpp>
15#include "opflex/modb/URIBuilder.h"
16#include "opflex/modb/mo-internal/MO.h"
20#include "modelgbp/gbp/L3ExternalNetworkToProvContractRSrc.hpp"
24#include "modelgbp/gbp/L3ExternalNetworkToConsContractRSrc.hpp"
28#include "modelgbp/gbp/L3ExternalNetworkToNatEPGroupRSrc.hpp"
32#include "modelgbp/gbp/ExternalSubnet.hpp"
38 :
public opflex::modb::mointernal::MO
45 static const opflex::modb::class_id_t
CLASS_ID = 169;
60 boost::optional<const std::string&>
getName()
114 static boost::optional<OF_SHARED_PTR<modelgbp::gbp::L3ExternalNetwork> >
resolve(
116 const opflex::modb::URI&
uri)
118 return opflex::modb::mointernal::MO::resolve<modelgbp::gbp::L3ExternalNetwork>(
framework,
CLASS_ID,
uri);
132 static boost::optional<OF_SHARED_PTR<modelgbp::gbp::L3ExternalNetwork> >
resolve(
133 const opflex::modb::URI&
uri)
135 return opflex::modb::mointernal::MO::resolve<modelgbp::gbp::L3ExternalNetwork>(opflex::ofcore::OFFramework::defaultInstance(),
CLASS_ID,
uri);
160 static boost::optional<OF_SHARED_PTR<modelgbp::gbp::L3ExternalNetwork> >
resolve(
191 static boost::optional<OF_SHARED_PTR<modelgbp::gbp::L3ExternalNetwork> >
resolve(
262 opflex::modb::mointernal::MO::resolveChildren<modelgbp::gbp::L3ExternalNetworkToProvContractRSrc>(
328 opflex::modb::mointernal::MO::resolveChildren<modelgbp::gbp::L3ExternalNetworkToConsContractRSrc>(
423 opflex::modb::mointernal::MO::resolveChildren<modelgbp::gbp::ExternalSubnet>(
451 const opflex::modb::URI&
uri)
468 remove(opflex::ofcore::OFFramework::defaultInstance(),
uri);
543 opflex::modb::ObjectListener*
listener)
545 opflex::modb::mointernal
561 opflex::modb::ObjectListener*
listener)
574 opflex::modb::ObjectListener*
listener)
576 opflex::modb::mointernal
587 opflex::modb::ObjectListener*
listener)
598 const opflex::modb::URI&
uri,
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::ExternalSubnet > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of ExternalSubnet from the managed object store.
Definition ExternalSubnet.hpp:210
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::L3ExternalNetworkToConsContractRSrc > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of L3ExternalNetworkToConsContractRSrc from the managed object store.
Definition L3ExternalNetworkToConsContractRSrc.hpp:257
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::L3ExternalNetworkToNatEPGroupRSrc > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of L3ExternalNetworkToNatEPGroupRSrc from the managed object store.
Definition L3ExternalNetworkToNatEPGroupRSrc.hpp:257
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::L3ExternalNetworkToProvContractRSrc > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of L3ExternalNetworkToProvContractRSrc from the managed object store.
Definition L3ExternalNetworkToProvContractRSrc.hpp:257
Definition L3ExternalNetwork.hpp:39
const std::string & getName(const std::string &defaultValue)
Get the value of name if set, otherwise the value of default passed in.
Definition L3ExternalNetwork.hpp:72
boost::optional< const std::string & > getName()
Get the value of name if it has been set.
Definition L3ExternalNetwork.hpp:60
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::L3ExternalNetwork > > resolve(const std::string &policySpaceName, const std::string &gbpRoutingDomainName, const std::string &gbpL3ExternalDomainName, const std::string &gbpL3ExternalNetworkName)
Retrieve an instance of L3ExternalNetwork from the default managed object store by constructing its U...
Definition L3ExternalNetwork.hpp:191
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::L3ExternalNetwork > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of L3ExternalNetwork from the managed object store.
Definition L3ExternalNetwork.hpp:114
bool isNameSet()
Check whether name has been set.
Definition L3ExternalNetwork.hpp:51
static void remove(opflex::ofcore::OFFramework &framework, const std::string &policySpaceName, const std::string &gbpRoutingDomainName, const std::string &gbpL3ExternalDomainName, const std::string &gbpL3ExternalNetworkName)
Remove the L3ExternalNetwork object with the specified path elements from the managed object store.
Definition L3ExternalNetwork.hpp:491
L3ExternalNetwork(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri, const OF_SHARED_PTR< const opflex::modb::mointernal::ObjectInstance > &oi)
Construct an instance of L3ExternalNetwork.
Definition L3ExternalNetwork.hpp:596
void remove()
Remove this instance using the currently-active mutator.
Definition L3ExternalNetwork.hpp:435
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 L3ExternalNetwork.hpp:560
OF_SHARED_PTR< modelgbp::gbp::ExternalSubnet > addGbpExternalSubnet(const std::string &gbpExternalSubnetName)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition L3ExternalNetwork.hpp:396
boost::optional< OF_SHARED_PTR< modelgbp::gbp::ExternalSubnet > > resolveGbpExternalSubnet(const std::string &gbpExternalSubnetName)
Retrieve the child object with the specified naming properties.
Definition L3ExternalNetwork.hpp:378
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::L3ExternalNetwork > > resolve(opflex::ofcore::OFFramework &framework, const std::string &policySpaceName, const std::string &gbpRoutingDomainName, const std::string &gbpL3ExternalDomainName, const std::string &gbpL3ExternalNetworkName)
Retrieve an instance of L3ExternalNetwork from the managed object store by constructing its URI from ...
Definition L3ExternalNetwork.hpp:160
static void unregisterListener(opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class from the default framework instance.
Definition L3ExternalNetwork.hpp:586
OF_SHARED_PTR< modelgbp::gbp::L3ExternalNetworkToConsContractRSrc > addGbpL3ExternalNetworkToConsContractRSrc(const std::string &gbpL3ExternalNetworkToConsContractRSrcTargetName)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition L3ExternalNetwork.hpp:300
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 L3ExternalNetwork.hpp:541
static void remove(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Remove the L3ExternalNetwork object with the specified URI using the currently-active mutator.
Definition L3ExternalNetwork.hpp:450
modelgbp::gbp::L3ExternalNetwork & unsetName()
Unset name in the currently-active mutator.
Definition L3ExternalNetwork.hpp:97
void resolveGbpL3ExternalNetworkToConsContractRSrc(std::vector< OF_SHARED_PTR< modelgbp::gbp::L3ExternalNetworkToConsContractRSrc > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::gbp::L3ExternalNetworkToConsCont...
Definition L3ExternalNetwork.hpp:326
void resolveGbpExternalSubnet(std::vector< OF_SHARED_PTR< modelgbp::gbp::ExternalSubnet > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::gbp::ExternalSubnet.
Definition L3ExternalNetwork.hpp:421
boost::optional< OF_SHARED_PTR< modelgbp::gbp::L3ExternalNetworkToConsContractRSrc > > resolveGbpL3ExternalNetworkToConsContractRSrc(const std::string &gbpL3ExternalNetworkToConsContractRSrcTargetName)
Retrieve the child object with the specified naming properties.
Definition L3ExternalNetwork.hpp:279
static void unregisterListener(opflex::ofcore::OFFramework &framework, opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class.
Definition L3ExternalNetwork.hpp:572
boost::optional< OF_SHARED_PTR< modelgbp::gbp::L3ExternalNetworkToProvContractRSrc > > resolveGbpL3ExternalNetworkToProvContractRSrc(const std::string &gbpL3ExternalNetworkToProvContractRSrcTargetName)
Retrieve the child object with the specified naming properties.
Definition L3ExternalNetwork.hpp:213
OF_SHARED_PTR< modelgbp::gbp::L3ExternalNetworkToProvContractRSrc > addGbpL3ExternalNetworkToProvContractRSrc(const std::string &gbpL3ExternalNetworkToProvContractRSrcTargetName)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition L3ExternalNetwork.hpp:234
OF_SHARED_PTR< modelgbp::gbp::L3ExternalNetworkToNatEPGroupRSrc > addGbpL3ExternalNetworkToNatEPGroupRSrc()
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition L3ExternalNetwork.hpp:357
static const opflex::modb::class_id_t CLASS_ID
The unique class ID for L3ExternalNetwork.
Definition L3ExternalNetwork.hpp:45
static void remove(const opflex::modb::URI &uri)
Remove the L3ExternalNetwork object with the specified URI using the currently-active mutator and the...
Definition L3ExternalNetwork.hpp:466
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::L3ExternalNetwork > > resolve(const opflex::modb::URI &uri)
Retrieve an instance of L3ExternalNetwork from the managed object store using the default framework i...
Definition L3ExternalNetwork.hpp:132
boost::optional< OF_SHARED_PTR< modelgbp::gbp::L3ExternalNetworkToNatEPGroupRSrc > > resolveGbpL3ExternalNetworkToNatEPGroupRSrc()
Retrieve the child object with the specified naming properties.
Definition L3ExternalNetwork.hpp:341
modelgbp::gbp::L3ExternalNetwork & setName(const std::string &newValue)
Set name to the specified value in the currently-active mutator.
Definition L3ExternalNetwork.hpp:85
static void remove(const std::string &policySpaceName, const std::string &gbpRoutingDomainName, const std::string &gbpL3ExternalDomainName, const std::string &gbpL3ExternalNetworkName)
Remove the L3ExternalNetwork object with the specified path elements from the managed object store us...
Definition L3ExternalNetwork.hpp:521
void resolveGbpL3ExternalNetworkToProvContractRSrc(std::vector< OF_SHARED_PTR< modelgbp::gbp::L3ExternalNetworkToProvContractRSrc > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::gbp::L3ExternalNetworkToProvCont...
Definition L3ExternalNetwork.hpp:260
SOME COPYRIGHT.
Definition OpcodeEnumT.hpp:12