11#ifndef GI_GBP_SECGROUPRULE_HPP
12#define GI_GBP_SECGROUPRULE_HPP
14#include <boost/optional.hpp>
15#include "opflex/modb/URIBuilder.h"
16#include "opflex/modb/mo-internal/MO.h"
20#include "modelgbp/gbp/RuleToClassifierRSrc.hpp"
24#include "modelgbp/gbp/RuleToActionRSrc.hpp"
28#include "modelgbp/gbp/SecGroupRuleToRemoteAddressRSrc.hpp"
34 :
public opflex::modb::mointernal::MO
41 static const opflex::modb::class_id_t
CLASS_ID = 205;
151 getTLMutator().modify(
getClassId(),
getURI())->unset(6717441ul, opflex::modb::PropertyInfo::STRING, opflex::modb::PropertyInfo::SCALAR);
222 static boost::optional<OF_SHARED_PTR<modelgbp::gbp::SecGroupRule> >
resolve(
224 const opflex::modb::URI&
uri)
226 return opflex::modb::mointernal::MO::resolve<modelgbp::gbp::SecGroupRule>(
framework,
CLASS_ID,
uri);
240 static boost::optional<OF_SHARED_PTR<modelgbp::gbp::SecGroupRule> >
resolve(
241 const opflex::modb::URI&
uri)
243 return opflex::modb::mointernal::MO::resolve<modelgbp::gbp::SecGroupRule>(opflex::ofcore::OFFramework::defaultInstance(),
CLASS_ID,
uri);
432 opflex::modb::mointernal::MO::resolveChildren<modelgbp::gbp::RuleToClassifierRSrc>(
498 opflex::modb::mointernal::MO::resolveChildren<modelgbp::gbp::RuleToActionRSrc>(
564 opflex::modb::mointernal::MO::resolveChildren<modelgbp::gbp::SecGroupRuleToRemoteAddressRSrc>(
592 const opflex::modb::URI&
uri)
609 remove(opflex::ofcore::OFFramework::defaultInstance(),
uri);
743 opflex::modb::ObjectListener*
listener)
745 opflex::modb::mointernal
761 opflex::modb::ObjectListener*
listener)
774 opflex::modb::ObjectListener*
listener)
776 opflex::modb::mointernal
787 opflex::modb::ObjectListener*
listener)
798 const opflex::modb::URI&
uri,
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::RuleToActionRSrc > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of RuleToActionRSrc from the managed object store.
Definition RuleToActionRSrc.hpp:257
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::RuleToClassifierRSrc > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of RuleToClassifierRSrc from the managed object store.
Definition RuleToClassifierRSrc.hpp:257
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::SecGroupRuleToRemoteAddressRSrc > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of SecGroupRuleToRemoteAddressRSrc from the managed object store.
Definition SecGroupRuleToRemoteAddressRSrc.hpp:257
Definition SecGroupRule.hpp:35
modelgbp::gbp::SecGroupRule & unsetDirection()
Unset direction in the currently-active mutator.
Definition SecGroupRule.hpp:93
boost::optional< OF_SHARED_PTR< modelgbp::gbp::SecGroupRuleToRemoteAddressRSrc > > resolveGbpSecGroupRuleToRemoteAddressRSrc(const std::string &gbpSecGroupRuleToRemoteAddressRSrcTargetName)
Retrieve the child object with the specified naming properties.
Definition SecGroupRule.hpp:515
OF_SHARED_PTR< modelgbp::gbp::SecGroupRuleToRemoteAddressRSrc > addGbpSecGroupRuleToRemoteAddressRSrc(const std::string &gbpSecGroupRuleToRemoteAddressRSrcTargetName)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition SecGroupRule.hpp:536
modelgbp::gbp::SecGroupRule & setName(const std::string &newValue)
Set name to the specified value in the currently-active mutator.
Definition SecGroupRule.hpp:137
static void remove(const opflex::modb::URI &uri)
Remove the SecGroupRule object with the specified URI using the currently-active mutator and the defa...
Definition SecGroupRule.hpp:607
static void remove(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Remove the SecGroupRule object with the specified URI using the currently-active mutator.
Definition SecGroupRule.hpp:591
boost::optional< const std::string & > getName()
Get the value of name if it has been set.
Definition SecGroupRule.hpp:112
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::SecGroupRule > > resolveUnderPolicyUniversePolicySpaceGbpContractGbpSubject(const std::string &policySpaceName, const std::string &gbpContractName, const std::string &gbpSubjectName, const std::string &gbpSecGroupRuleName)
Retrieve an instance of SecGroupRule from the default managed object store by constructing its URI fr...
Definition SecGroupRule.hpp:299
static void removeUnderPolicyUniversePolicySpaceGbpContractGbpSubject(opflex::ofcore::OFFramework &framework, const std::string &policySpaceName, const std::string &gbpContractName, const std::string &gbpSubjectName, const std::string &gbpSecGroupRuleName)
Remove the SecGroupRule object with the specified path elements from the managed object store.
Definition SecGroupRule.hpp:632
bool isOrderSet()
Check whether order has been set.
Definition SecGroupRule.hpp:159
boost::optional< uint32_t > getOrder()
Get the value of order if it has been set.
Definition SecGroupRule.hpp:168
const std::string & getName(const std::string &defaultValue)
Get the value of name if set, otherwise the value of default passed in.
Definition SecGroupRule.hpp:124
boost::optional< OF_SHARED_PTR< modelgbp::gbp::RuleToActionRSrc > > resolveGbpRuleToActionRSrc(const std::string &gbpRuleToActionRSrcTargetName)
Retrieve the child object with the specified naming properties.
Definition SecGroupRule.hpp:449
static void removeUnderPolicyUniversePolicySpaceGbpSecGroupGbpSecGroupSubject(opflex::ofcore::OFFramework &framework, const std::string &policySpaceName, const std::string &gbpSecGroupName, const std::string &gbpSecGroupSubjectName, const std::string &gbpSecGroupRuleName)
Remove the SecGroupRule object with the specified path elements from the managed object store.
Definition SecGroupRule.hpp:691
modelgbp::gbp::SecGroupRule & unsetName()
Unset name in the currently-active mutator.
Definition SecGroupRule.hpp:149
void resolveGbpSecGroupRuleToRemoteAddressRSrc(std::vector< OF_SHARED_PTR< modelgbp::gbp::SecGroupRuleToRemoteAddressRSrc > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::gbp::SecGroupRuleToRemoteAddress...
Definition SecGroupRule.hpp:562
OF_SHARED_PTR< modelgbp::gbp::RuleToClassifierRSrc > addGbpRuleToClassifierRSrc(const std::string &gbpRuleToClassifierRSrcTargetName)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition SecGroupRule.hpp:404
void remove()
Remove this instance using the currently-active mutator.
Definition SecGroupRule.hpp:576
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 SecGroupRule.hpp:760
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::SecGroupRule > > resolveUnderPolicyUniversePolicySpaceGbpSecGroupGbpSecGroupSubject(opflex::ofcore::OFFramework &framework, const std::string &policySpaceName, const std::string &gbpSecGroupName, const std::string &gbpSecGroupSubjectName, const std::string &gbpSecGroupRuleName)
Retrieve an instance of SecGroupRule from the managed object store by constructing its URI from the p...
Definition SecGroupRule.hpp:330
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::SecGroupRule > > resolveUnderPolicyUniversePolicySpaceGbpContractGbpSubject(opflex::ofcore::OFFramework &framework, const std::string &policySpaceName, const std::string &gbpContractName, const std::string &gbpSubjectName, const std::string &gbpSecGroupRuleName)
Retrieve an instance of SecGroupRule from the managed object store by constructing its URI from the p...
Definition SecGroupRule.hpp:268
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::SecGroupRule > > resolveUnderPolicyUniversePolicySpaceGbpSecGroupGbpSecGroupSubject(const std::string &policySpaceName, const std::string &gbpSecGroupName, const std::string &gbpSecGroupSubjectName, const std::string &gbpSecGroupRuleName)
Retrieve an instance of SecGroupRule from the default managed object store by constructing its URI fr...
Definition SecGroupRule.hpp:361
static void removeUnderPolicyUniversePolicySpaceGbpSecGroupGbpSecGroupSubject(const std::string &policySpaceName, const std::string &gbpSecGroupName, const std::string &gbpSecGroupSubjectName, const std::string &gbpSecGroupRuleName)
Remove the SecGroupRule object with the specified path elements from the managed object store using t...
Definition SecGroupRule.hpp:721
bool isDirectionSet()
Check whether direction has been set.
Definition SecGroupRule.hpp:47
modelgbp::gbp::SecGroupRule & setOrder(uint32_t newValue)
Set order to the specified value in the currently-active mutator.
Definition SecGroupRule.hpp:193
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::SecGroupRule > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of SecGroupRule from the managed object store.
Definition SecGroupRule.hpp:222
const uint8_t getDirection(const uint8_t defaultValue)
Get the value of direction if set, otherwise the value of default passed in.
Definition SecGroupRule.hpp:68
static void unregisterListener(opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class from the default framework instance.
Definition SecGroupRule.hpp:786
static boost::optional< OF_SHARED_PTR< modelgbp::gbp::SecGroupRule > > resolve(const opflex::modb::URI &uri)
Retrieve an instance of SecGroupRule from the managed object store using the default framework instan...
Definition SecGroupRule.hpp:240
bool isNameSet()
Check whether name has been set.
Definition SecGroupRule.hpp:103
static void removeUnderPolicyUniversePolicySpaceGbpContractGbpSubject(const std::string &policySpaceName, const std::string &gbpContractName, const std::string &gbpSubjectName, const std::string &gbpSecGroupRuleName)
Remove the SecGroupRule object with the specified path elements from the managed object store using t...
Definition SecGroupRule.hpp:662
void resolveGbpRuleToClassifierRSrc(std::vector< OF_SHARED_PTR< modelgbp::gbp::RuleToClassifierRSrc > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::gbp::RuleToClassifierRSrc.
Definition SecGroupRule.hpp:430
boost::optional< OF_SHARED_PTR< modelgbp::gbp::RuleToClassifierRSrc > > resolveGbpRuleToClassifierRSrc(const std::string &gbpRuleToClassifierRSrcTargetName)
Retrieve the child object with the specified naming properties.
Definition SecGroupRule.hpp:383
void resolveGbpRuleToActionRSrc(std::vector< OF_SHARED_PTR< modelgbp::gbp::RuleToActionRSrc > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::gbp::RuleToActionRSrc.
Definition SecGroupRule.hpp:496
SecGroupRule(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri, const OF_SHARED_PTR< const opflex::modb::mointernal::ObjectInstance > &oi)
Construct an instance of SecGroupRule.
Definition SecGroupRule.hpp:796
uint32_t getOrder(uint32_t defaultValue)
Get the value of order if set, otherwise the value of default passed in.
Definition SecGroupRule.hpp:180
OF_SHARED_PTR< modelgbp::gbp::RuleToActionRSrc > addGbpRuleToActionRSrc(const std::string &gbpRuleToActionRSrcTargetName)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition SecGroupRule.hpp:470
static const opflex::modb::class_id_t CLASS_ID
The unique class ID for SecGroupRule.
Definition SecGroupRule.hpp:41
boost::optional< const uint8_t > getDirection()
Get the value of direction if it has been set.
Definition SecGroupRule.hpp:56
modelgbp::gbp::SecGroupRule & unsetOrder()
Unset order in the currently-active mutator.
Definition SecGroupRule.hpp:205
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 SecGroupRule.hpp:741
static void unregisterListener(opflex::ofcore::OFFramework &framework, opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class.
Definition SecGroupRule.hpp:772
modelgbp::gbp::SecGroupRule & setDirection(const uint8_t newValue)
Set direction to the specified value in the currently-active mutator.
Definition SecGroupRule.hpp:81
SOME COPYRIGHT.
Definition OpcodeEnumT.hpp:12