11#ifndef GI_POLICY_SPACE_HPP
12#define GI_POLICY_SPACE_HPP
14#include <boost/optional.hpp>
15#include "opflex/modb/URIBuilder.h"
16#include "opflex/modb/mo-internal/MO.h"
20#include "modelgbp/gbpe/L24Classifier.hpp"
24#include "modelgbp/gbp/AllowDenyAction.hpp"
28#include "modelgbp/gbp/Contract.hpp"
32#include "modelgbp/gbp/EpGroup.hpp"
36#include "modelgbp/gbp/BridgeDomain.hpp"
40#include "modelgbp/gbp/FloodDomain.hpp"
44#include "modelgbp/gbp/RoutingDomain.hpp"
48#include "modelgbp/gbp/Subnets.hpp"
52#include "modelgbp/gbp/SecGroup.hpp"
58 :
public opflex::modb::mointernal::MO
65 static const opflex::modb::class_id_t
CLASS_ID = 224;
80 boost::optional<const std::string&>
getName()
119 getTLMutator().modify(
getClassId(),
getURI())->unset(7340033ul, opflex::modb::PropertyInfo::STRING, opflex::modb::PropertyInfo::SCALAR);
134 static boost::optional<OF_SHARED_PTR<modelgbp::policy::Space> >
resolve(
136 const opflex::modb::URI&
uri)
138 return opflex::modb::mointernal::MO::resolve<modelgbp::policy::Space>(
framework,
CLASS_ID,
uri);
152 static boost::optional<OF_SHARED_PTR<modelgbp::policy::Space> >
resolve(
153 const opflex::modb::URI&
uri)
155 return opflex::modb::mointernal::MO::resolve<modelgbp::policy::Space>(opflex::ofcore::OFFramework::defaultInstance(),
CLASS_ID,
uri);
174 static boost::optional<OF_SHARED_PTR<modelgbp::policy::Space> >
resolve(
196 static boost::optional<OF_SHARED_PTR<modelgbp::policy::Space> >
resolve(
258 opflex::modb::mointernal::MO::resolveChildren<modelgbp::gbpe::L24Classifier>(
318 opflex::modb::mointernal::MO::resolveChildren<modelgbp::gbp::AllowDenyAction>(
378 opflex::modb::mointernal::MO::resolveChildren<modelgbp::gbp::Contract>(
438 opflex::modb::mointernal::MO::resolveChildren<modelgbp::gbp::EpGroup>(
498 opflex::modb::mointernal::MO::resolveChildren<modelgbp::gbp::BridgeDomain>(
558 opflex::modb::mointernal::MO::resolveChildren<modelgbp::gbp::FloodDomain>(
618 opflex::modb::mointernal::MO::resolveChildren<modelgbp::gbp::RoutingDomain>(
678 opflex::modb::mointernal::MO::resolveChildren<modelgbp::gbp::Subnets>(
738 opflex::modb::mointernal::MO::resolveChildren<modelgbp::gbp::SecGroup>(
766 const opflex::modb::URI&
uri)
783 remove(opflex::ofcore::OFFramework::defaultInstance(),
uri);
840 opflex::modb::ObjectListener*
listener)
842 opflex::modb::mointernal
858 opflex::modb::ObjectListener*
listener)
871 opflex::modb::ObjectListener*
listener)
873 opflex::modb::mointernal
884 opflex::modb::ObjectListener*
listener)
895 const opflex::modb::URI&
uri,
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::AllowDenyAction > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of AllowDenyAction from the managed object store.
Definition AllowDenyAction.hpp:214
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
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::Contract > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of Contract from the managed object store.
Definition Contract.hpp:122
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::EpGroup > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of EpGroup from the managed object store.
Definition EpGroup.hpp:210
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
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::RoutingDomain > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of RoutingDomain from the managed object store.
Definition RoutingDomain.hpp:242
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::SecGroup > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of SecGroup from the managed object store.
Definition SecGroup.hpp:110
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 boost::optional< OF_SHARED_PTR< modelgbp::gbpe::L24Classifier > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of L24Classifier from the managed object store.
Definition L24Classifier.hpp:774
void resolveGbpSecGroup(std::vector< OF_SHARED_PTR< modelgbp::gbp::SecGroup > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::gbp::SecGroup.
Definition Space.hpp:736
boost::optional< OF_SHARED_PTR< modelgbp::gbp::EpGroup > > resolveGbpEpGroup(const std::string &gbpEpGroupName)
Retrieve the child object with the specified naming properties.
Definition Space.hpp:393
void resolveGbpeL24Classifier(std::vector< OF_SHARED_PTR< modelgbp::gbpe::L24Classifier > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::gbpe::L24Classifier.
Definition Space.hpp:256
void resolveGbpRoutingDomain(std::vector< OF_SHARED_PTR< modelgbp::gbp::RoutingDomain > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::gbp::RoutingDomain.
Definition Space.hpp:616
void resolveGbpAllowDenyAction(std::vector< OF_SHARED_PTR< modelgbp::gbp::AllowDenyAction > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::gbp::AllowDenyAction.
Definition Space.hpp:316
Space(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri, const OF_SHARED_PTR< const opflex::modb::mointernal::ObjectInstance > &oi)
Construct an instance of Space.
Definition Space.hpp:893
static boost::optional< OF_SHARED_PTR< modelgbp::policy::Space > > resolve(const opflex::modb::URI &uri)
Retrieve an instance of Space from the managed object store using the default framework instance.
Definition Space.hpp:152
boost::optional< OF_SHARED_PTR< modelgbp::gbp::SecGroup > > resolveGbpSecGroup(const std::string &gbpSecGroupName)
Retrieve the child object with the specified naming properties.
Definition Space.hpp:693
OF_SHARED_PTR< modelgbp::gbp::RoutingDomain > addGbpRoutingDomain(const std::string &gbpRoutingDomainName)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition Space.hpp:591
OF_SHARED_PTR< modelgbp::gbp::Subnets > addGbpSubnets(const std::string &gbpSubnetsName)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition Space.hpp:651
static void remove(const opflex::modb::URI &uri)
Remove the Space object with the specified URI using the currently-active mutator and the default fra...
Definition Space.hpp:781
boost::optional< OF_SHARED_PTR< modelgbp::gbp::FloodDomain > > resolveGbpFloodDomain(const std::string &gbpFloodDomainName)
Retrieve the child object with the specified naming properties.
Definition Space.hpp:513
OF_SHARED_PTR< modelgbp::gbpe::L24Classifier > addGbpeL24Classifier(const std::string &gbpeL24ClassifierName)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition Space.hpp:231
OF_SHARED_PTR< modelgbp::gbp::BridgeDomain > addGbpBridgeDomain(const std::string &gbpBridgeDomainName)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition Space.hpp:471
static void remove(const std::string &policySpaceName)
Remove the Space object with the specified path elements from the managed object store using the defa...
Definition Space.hpp:821
OF_SHARED_PTR< modelgbp::gbp::FloodDomain > addGbpFloodDomain(const std::string &gbpFloodDomainName)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition Space.hpp:531
static boost::optional< OF_SHARED_PTR< modelgbp::policy::Space > > resolve(opflex::ofcore::OFFramework &framework, const std::string &policySpaceName)
Retrieve an instance of Space from the managed object store by constructing its URI from the path ele...
Definition Space.hpp:174
boost::optional< OF_SHARED_PTR< modelgbp::gbp::BridgeDomain > > resolveGbpBridgeDomain(const std::string &gbpBridgeDomainName)
Retrieve the child object with the specified naming properties.
Definition Space.hpp:453
static boost::optional< OF_SHARED_PTR< modelgbp::policy::Space > > resolve(const std::string &policySpaceName)
Retrieve an instance of Space from the default managed object store by constructing its URI from the ...
Definition Space.hpp:196
static void unregisterListener(opflex::ofcore::OFFramework &framework, opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class.
Definition Space.hpp:869
OF_SHARED_PTR< modelgbp::gbp::Contract > addGbpContract(const std::string &gbpContractName)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition Space.hpp:351
static void remove(opflex::ofcore::OFFramework &framework, const std::string &policySpaceName)
Remove the Space object with the specified path elements from the managed object store.
Definition Space.hpp:800
void resolveGbpFloodDomain(std::vector< OF_SHARED_PTR< modelgbp::gbp::FloodDomain > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::gbp::FloodDomain.
Definition Space.hpp:556
OF_SHARED_PTR< modelgbp::gbp::AllowDenyAction > addGbpAllowDenyAction(const std::string &gbpAllowDenyActionName)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition Space.hpp:291
void remove()
Remove this instance using the currently-active mutator.
Definition Space.hpp:750
static boost::optional< OF_SHARED_PTR< modelgbp::policy::Space > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of Space from the managed object store.
Definition Space.hpp:134
const std::string & getName(const std::string &defaultValue)
Get the value of name if set, otherwise the value of default passed in.
Definition Space.hpp:92
OF_SHARED_PTR< modelgbp::gbp::EpGroup > addGbpEpGroup(const std::string &gbpEpGroupName)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition Space.hpp:411
boost::optional< const std::string & > getName()
Get the value of name if it has been set.
Definition Space.hpp:80
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 Space.hpp:857
boost::optional< OF_SHARED_PTR< modelgbp::gbp::AllowDenyAction > > resolveGbpAllowDenyAction(const std::string &gbpAllowDenyActionName)
Retrieve the child object with the specified naming properties.
Definition Space.hpp:273
static void remove(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Remove the Space object with the specified URI using the currently-active mutator.
Definition Space.hpp:765
boost::optional< OF_SHARED_PTR< modelgbp::gbp::Contract > > resolveGbpContract(const std::string &gbpContractName)
Retrieve the child object with the specified naming properties.
Definition Space.hpp:333
bool isNameSet()
Check whether name has been set.
Definition Space.hpp:71
void resolveGbpSubnets(std::vector< OF_SHARED_PTR< modelgbp::gbp::Subnets > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::gbp::Subnets.
Definition Space.hpp:676
boost::optional< OF_SHARED_PTR< modelgbp::gbp::RoutingDomain > > resolveGbpRoutingDomain(const std::string &gbpRoutingDomainName)
Retrieve the child object with the specified naming properties.
Definition Space.hpp:573
modelgbp::policy::Space & unsetName()
Unset name in the currently-active mutator.
Definition Space.hpp:117
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 Space.hpp:838
void resolveGbpBridgeDomain(std::vector< OF_SHARED_PTR< modelgbp::gbp::BridgeDomain > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::gbp::BridgeDomain.
Definition Space.hpp:496
boost::optional< OF_SHARED_PTR< modelgbp::gbp::Subnets > > resolveGbpSubnets(const std::string &gbpSubnetsName)
Retrieve the child object with the specified naming properties.
Definition Space.hpp:633
void resolveGbpEpGroup(std::vector< OF_SHARED_PTR< modelgbp::gbp::EpGroup > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::gbp::EpGroup.
Definition Space.hpp:436
void resolveGbpContract(std::vector< OF_SHARED_PTR< modelgbp::gbp::Contract > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::gbp::Contract.
Definition Space.hpp:376
static void unregisterListener(opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class from the default framework instance.
Definition Space.hpp:883
static const opflex::modb::class_id_t CLASS_ID
The unique class ID for Space.
Definition Space.hpp:65
OF_SHARED_PTR< modelgbp::gbp::SecGroup > addGbpSecGroup(const std::string &gbpSecGroupName)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition Space.hpp:711
modelgbp::policy::Space & setName(const std::string &newValue)
Set name to the specified value in the currently-active mutator.
Definition Space.hpp:105
boost::optional< OF_SHARED_PTR< modelgbp::gbpe::L24Classifier > > resolveGbpeL24Classifier(const std::string &gbpeL24ClassifierName)
Retrieve the child object with the specified naming properties.
Definition Space.hpp:213
SOME COPYRIGHT.
Definition OpcodeEnumT.hpp:12