11 #ifndef GI_INV_IPMAPPINGTOGROUPRSRC_HPP
12 #define GI_INV_IPMAPPINGTOGROUPRSRC_HPP
14 #include <boost/optional.hpp>
15 #include "opflex/modb/URIBuilder.h"
16 #include "opflex/modb/mo-internal/MO.h"
22 :
public opflex::modb::mointernal::MO
29 static const opflex::modb::class_id_t
CLASS_ID = 125;
37 return getObjectInstance().isSet(4096002ul, opflex::modb::PropertyInfo::ENUM8);
47 return (
const uint8_t)getObjectInstance().getUInt64(4096002ul);
56 const uint8_t
getRole(
const uint8_t defaultValue)
58 return getRole().get_value_or(defaultValue);
71 getTLMutator().modify(getClassId(), getURI())->setUInt64(4096002ul, newValue);
83 getTLMutator().modify(getClassId(), getURI())->unset(4096002ul, opflex::modb::PropertyInfo::ENUM8, opflex::modb::PropertyInfo::SCALAR);
93 return getObjectInstance().isSet(4096003ul, opflex::modb::PropertyInfo::REFERENCE);
103 return getObjectInstance().getReference(4096003ul).first;
114 return getObjectInstance().getReference(4096003ul).second;
149 getTLMutator().modify(getClassId(), getURI())->setReference(4096003ul, 152, uri);
171 const std::string& policySpaceName,
172 const std::string& gbpEpGroupName)
174 getTLMutator().modify(getClassId(), getURI())->setReference(4096003ul, 152, opflex::modb::URIBuilder().addElement(
"PolicyUniverse").addElement(
"PolicySpace").addElement(policySpaceName).addElement(
"GbpEpGroup").addElement(gbpEpGroupName).build());
186 getTLMutator().modify(getClassId(), getURI())->unset(4096003ul, opflex::modb::PropertyInfo::REFERENCE, opflex::modb::PropertyInfo::SCALAR);
196 return getObjectInstance().isSet(4096001ul, opflex::modb::PropertyInfo::ENUM8);
206 return (
const uint8_t)getObjectInstance().getUInt64(4096001ul);
215 const uint8_t
getType(
const uint8_t defaultValue)
217 return getType().get_value_or(defaultValue);
230 getTLMutator().modify(getClassId(), getURI())->setUInt64(4096001ul, newValue);
242 getTLMutator().modify(getClassId(), getURI())->unset(4096001ul, opflex::modb::PropertyInfo::ENUM8, opflex::modb::PropertyInfo::SCALAR);
257 static boost::optional<OF_SHARED_PTR<modelgbp::inv::IpMappingToGroupRSrc> >
resolve(
258 opflex::ofcore::OFFramework& framework,
259 const opflex::modb::URI& uri)
261 return opflex::modb::mointernal::MO::resolve<modelgbp::inv::IpMappingToGroupRSrc>(framework,
CLASS_ID, uri);
275 static boost::optional<OF_SHARED_PTR<modelgbp::inv::IpMappingToGroupRSrc> >
resolve(
276 const opflex::modb::URI& uri)
278 return opflex::modb::mointernal::MO::resolve<modelgbp::inv::IpMappingToGroupRSrc>(opflex::ofcore::OFFramework::defaultInstance(),
CLASS_ID, uri);
301 static boost::optional<OF_SHARED_PTR<modelgbp::inv::IpMappingToGroupRSrc> >
resolve(
302 opflex::ofcore::OFFramework& framework,
303 const std::string& invLocalEndpointInventoryName,
304 const std::string& invLocalInventoryEpUuid,
305 const std::string& invIpMappingName)
307 return resolve(framework,opflex::modb::URIBuilder().addElement(
"InvUniverse").addElement(
"InvLocalEndpointInventory").addElement(invLocalEndpointInventoryName).addElement(
"InvLocalInventoryEp").addElement(invLocalInventoryEpUuid).addElement(
"InvIpMapping").addElement(invIpMappingName).addElement(
"InvIpMappingToGroupRSrc").build());
329 static boost::optional<OF_SHARED_PTR<modelgbp::inv::IpMappingToGroupRSrc> >
resolve(
330 const std::string& invLocalEndpointInventoryName,
331 const std::string& invLocalInventoryEpUuid,
332 const std::string& invIpMappingName)
334 return resolve(opflex::ofcore::OFFramework::defaultInstance(),invLocalEndpointInventoryName,invLocalInventoryEpUuid,invIpMappingName);
347 getTLMutator().remove(
CLASS_ID, getURI());
360 static void remove(opflex::ofcore::OFFramework& framework,
361 const opflex::modb::URI& uri)
363 MO::remove(framework,
CLASS_ID, uri);
376 static void remove(
const opflex::modb::URI& uri)
378 remove(opflex::ofcore::OFFramework::defaultInstance(), uri);
400 opflex::ofcore::OFFramework& framework,
401 const std::string& invLocalEndpointInventoryName,
402 const std::string& invLocalInventoryEpUuid,
403 const std::string& invIpMappingName)
405 MO::remove(framework,
CLASS_ID, opflex::modb::URIBuilder().addElement(
"InvUniverse").addElement(
"InvLocalEndpointInventory").addElement(invLocalEndpointInventoryName).addElement(
"InvLocalInventoryEp").addElement(invLocalInventoryEpUuid).addElement(
"InvIpMapping").addElement(invIpMappingName).addElement(
"InvIpMappingToGroupRSrc").build());
427 const std::string& invLocalEndpointInventoryName,
428 const std::string& invLocalInventoryEpUuid,
429 const std::string& invIpMappingName)
431 remove(opflex::ofcore::OFFramework::defaultInstance(),invLocalEndpointInventoryName,invLocalInventoryEpUuid,invIpMappingName);
446 opflex::ofcore::OFFramework& framework,
447 opflex::modb::ObjectListener* listener)
449 opflex::modb::mointernal
450 ::MO::registerListener(framework, listener,
CLASS_ID);
465 opflex::modb::ObjectListener* listener)
477 opflex::ofcore::OFFramework& framework,
478 opflex::modb::ObjectListener* listener)
480 opflex::modb::mointernal
481 ::MO::unregisterListener(framework, listener,
CLASS_ID);
491 opflex::modb::ObjectListener* listener)
501 opflex::ofcore::OFFramework& framework,
502 const opflex::modb::URI& uri,
503 const OF_SHARED_PTR<const opflex::modb::mointernal::ObjectInstance>& oi)
504 : MO(framework,
CLASS_ID, uri, oi) { }
509 #endif // GI_INV_IPMAPPINGTOGROUPRSRC_HPP
boost::optional< const uint8_t > getType()
Get the value of type if it has been set.
Definition: IpMappingToGroupRSrc.hpp:203
boost::optional< opflex::modb::URI > getTargetURI()
Get the value of targetURI if it has been set.
Definition: IpMappingToGroupRSrc.hpp:111
static boost::optional< OF_SHARED_PTR< modelgbp::inv::IpMappingToGroupRSrc > > resolve(const std::string &invLocalEndpointInventoryName, const std::string &invLocalInventoryEpUuid, const std::string &invIpMappingName)
Retrieve an instance of IpMappingToGroupRSrc from the default managed object store by constructing it...
Definition: IpMappingToGroupRSrc.hpp:329
IpMappingToGroupRSrc(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri, const OF_SHARED_PTR< const opflex::modb::mointernal::ObjectInstance > &oi)
Construct an instance of IpMappingToGroupRSrc.
Definition: IpMappingToGroupRSrc.hpp:500
opflex::modb::class_id_t getTargetClass(opflex::modb::class_id_t defaultValue)
Get the value of targetClass if set, otherwise the value of default passed in.
Definition: IpMappingToGroupRSrc.hpp:123
bool isTargetSet()
Check whether target has been set.
Definition: IpMappingToGroupRSrc.hpp:91
modelgbp::inv::IpMappingToGroupRSrc & setType(const uint8_t newValue)
Set type to the specified value in the currently-active mutator.
Definition: IpMappingToGroupRSrc.hpp:228
static boost::optional< OF_SHARED_PTR< modelgbp::inv::IpMappingToGroupRSrc > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of IpMappingToGroupRSrc from the managed object store.
Definition: IpMappingToGroupRSrc.hpp:257
boost::optional< const uint8_t > getRole()
Get the value of role if it has been set.
Definition: IpMappingToGroupRSrc.hpp:44
static boost::optional< OF_SHARED_PTR< modelgbp::inv::IpMappingToGroupRSrc > > resolve(const opflex::modb::URI &uri)
Retrieve an instance of IpMappingToGroupRSrc from the managed object store using the default framewor...
Definition: IpMappingToGroupRSrc.hpp:275
Definition: IpMappingToGroupRSrc.hpp:21
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: IpMappingToGroupRSrc.hpp:445
opflex::modb::URI getTargetURI(opflex::modb::URI defaultValue)
Get the value of targetURI if set, otherwise the value of default passed in.
Definition: IpMappingToGroupRSrc.hpp:133
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: IpMappingToGroupRSrc.hpp:464
static const opflex::modb::class_id_t CLASS_ID
The unique class ID for IpMappingToGroupRSrc.
Definition: IpMappingToGroupRSrc.hpp:29
boost::optional< opflex::modb::class_id_t > getTargetClass()
Get the value of targetClass if it has been set.
Definition: IpMappingToGroupRSrc.hpp:100
modelgbp::inv::IpMappingToGroupRSrc & setTargetEpGroup(const opflex::modb::URI &uri)
Set the reference to point to an instance of EpGroup with the specified URI.
Definition: IpMappingToGroupRSrc.hpp:147
modelgbp::inv::IpMappingToGroupRSrc & unsetTarget()
Unset target in the currently-active mutator.
Definition: IpMappingToGroupRSrc.hpp:184
modelgbp::inv::IpMappingToGroupRSrc & unsetType()
Unset type in the currently-active mutator.
Definition: IpMappingToGroupRSrc.hpp:240
bool isTypeSet()
Check whether type has been set.
Definition: IpMappingToGroupRSrc.hpp:194
modelgbp::inv::IpMappingToGroupRSrc & setRole(const uint8_t newValue)
Set role to the specified value in the currently-active mutator.
Definition: IpMappingToGroupRSrc.hpp:69
const uint8_t getRole(const uint8_t defaultValue)
Get the value of role if set, otherwise the value of default passed in.
Definition: IpMappingToGroupRSrc.hpp:56
modelgbp::inv::IpMappingToGroupRSrc & setTargetEpGroup(const std::string &policySpaceName, const std::string &gbpEpGroupName)
Set the reference to point to an instance of EpGroup in the currently-active mutator by constructing ...
Definition: IpMappingToGroupRSrc.hpp:170
static void unregisterListener(opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class from the default framework instance.
Definition: IpMappingToGroupRSrc.hpp:490
static boost::optional< OF_SHARED_PTR< modelgbp::inv::IpMappingToGroupRSrc > > resolve(opflex::ofcore::OFFramework &framework, const std::string &invLocalEndpointInventoryName, const std::string &invLocalInventoryEpUuid, const std::string &invIpMappingName)
Retrieve an instance of IpMappingToGroupRSrc from the managed object store by constructing its URI fr...
Definition: IpMappingToGroupRSrc.hpp:301
modelgbp::inv::IpMappingToGroupRSrc & unsetRole()
Unset role in the currently-active mutator.
Definition: IpMappingToGroupRSrc.hpp:81
bool isRoleSet()
Check whether role has been set.
Definition: IpMappingToGroupRSrc.hpp:35
const uint8_t getType(const uint8_t defaultValue)
Get the value of type if set, otherwise the value of default passed in.
Definition: IpMappingToGroupRSrc.hpp:215
static void unregisterListener(opflex::ofcore::OFFramework &framework, opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class.
Definition: IpMappingToGroupRSrc.hpp:476