11#ifndef GI_INV_IPMAPPING_HPP
12#define GI_INV_IPMAPPING_HPP
14#include <boost/optional.hpp>
15#include "opflex/modb/URIBuilder.h"
16#include "opflex/modb/mo-internal/MO.h"
20#include "modelgbp/inv/IpMappingToGroupRSrc.hpp"
26 :
public opflex::modb::mointernal::MO
33 static const opflex::modb::class_id_t
CLASS_ID = 124;
41 return getObjectInstance().isSet(4063235ul, opflex::modb::PropertyInfo::STRING);
51 return getObjectInstance().getString(4063235ul);
75 getTLMutator().modify(getClassId(), getURI())->setString(4063235ul, newValue);
87 getTLMutator().modify(getClassId(), getURI())->unset(4063235ul, opflex::modb::PropertyInfo::STRING, opflex::modb::PropertyInfo::SCALAR);
97 return getObjectInstance().isSet(4063234ul, opflex::modb::PropertyInfo::STRING);
107 return getObjectInstance().getString(4063234ul);
131 getTLMutator().modify(getClassId(), getURI())->setString(4063234ul, newValue);
143 getTLMutator().modify(getClassId(), getURI())->unset(4063234ul, opflex::modb::PropertyInfo::STRING, opflex::modb::PropertyInfo::SCALAR);
153 return getObjectInstance().isSet(4063233ul, opflex::modb::PropertyInfo::STRING);
163 return getObjectInstance().getString(4063233ul);
172 const std::string&
getName(
const std::string& defaultValue)
174 return getName().get_value_or(defaultValue);
187 getTLMutator().modify(getClassId(), getURI())->setString(4063233ul, newValue);
199 getTLMutator().modify(getClassId(), getURI())->unset(4063233ul, opflex::modb::PropertyInfo::STRING, opflex::modb::PropertyInfo::SCALAR);
209 return getObjectInstance().isSet(4063236ul, opflex::modb::PropertyInfo::STRING);
219 return getObjectInstance().getString(4063236ul);
243 getTLMutator().modify(getClassId(), getURI())->setString(4063236ul, newValue);
255 getTLMutator().modify(getClassId(), getURI())->unset(4063236ul, opflex::modb::PropertyInfo::STRING, opflex::modb::PropertyInfo::SCALAR);
265 return getObjectInstance().isSet(4063237ul, opflex::modb::PropertyInfo::MAC);
275 return getObjectInstance().getMAC(4063237ul);
284 const opflex::modb::MAC&
getNextHopMac(
const opflex::modb::MAC& defaultValue)
299 getTLMutator().modify(getClassId(), getURI())->setMAC(4063237ul, newValue);
311 getTLMutator().modify(getClassId(), getURI())->unset(4063237ul, opflex::modb::PropertyInfo::MAC, opflex::modb::PropertyInfo::SCALAR);
326 static boost::optional<OF_SHARED_PTR<modelgbp::inv::IpMapping> >
resolve(
327 opflex::ofcore::OFFramework& framework,
328 const opflex::modb::URI& uri)
330 return opflex::modb::mointernal::MO::resolve<modelgbp::inv::IpMapping>(framework,
CLASS_ID, uri);
344 static boost::optional<OF_SHARED_PTR<modelgbp::inv::IpMapping> >
resolve(
345 const opflex::modb::URI& uri)
347 return opflex::modb::mointernal::MO::resolve<modelgbp::inv::IpMapping>(opflex::ofcore::OFFramework::defaultInstance(),
CLASS_ID, uri);
370 static boost::optional<OF_SHARED_PTR<modelgbp::inv::IpMapping> >
resolve(
371 opflex::ofcore::OFFramework& framework,
372 const std::string& invLocalEndpointInventoryName,
373 const std::string& invLocalInventoryEpUuid,
374 const std::string& invIpMappingName)
376 return resolve(framework,opflex::modb::URIBuilder().addElement(
"InvUniverse").addElement(
"InvLocalEndpointInventory").addElement(invLocalEndpointInventoryName).addElement(
"InvLocalInventoryEp").addElement(invLocalInventoryEpUuid).addElement(
"InvIpMapping").addElement(invIpMappingName).build());
398 static boost::optional<OF_SHARED_PTR<modelgbp::inv::IpMapping> >
resolve(
399 const std::string& invLocalEndpointInventoryName,
400 const std::string& invLocalInventoryEpUuid,
401 const std::string& invIpMappingName)
403 return resolve(opflex::ofcore::OFFramework::defaultInstance(),invLocalEndpointInventoryName,invLocalInventoryEpUuid,invIpMappingName);
434 OF_SHARED_PTR<modelgbp::inv::IpMappingToGroupRSrc> result = addChild<modelgbp::inv::IpMappingToGroupRSrc>(
435 CLASS_ID, getURI(), 2151547005ul, 125,
436 opflex::modb::URIBuilder(getURI()).addElement(
"InvIpMappingToGroupRSrc").build()
451 getTLMutator().remove(
CLASS_ID, getURI());
464 static void remove(opflex::ofcore::OFFramework& framework,
465 const opflex::modb::URI& uri)
467 MO::remove(framework,
CLASS_ID, uri);
480 static void remove(
const opflex::modb::URI& uri)
482 remove(opflex::ofcore::OFFramework::defaultInstance(), uri);
504 opflex::ofcore::OFFramework& framework,
505 const std::string& invLocalEndpointInventoryName,
506 const std::string& invLocalInventoryEpUuid,
507 const std::string& invIpMappingName)
509 MO::remove(framework,
CLASS_ID, opflex::modb::URIBuilder().addElement(
"InvUniverse").addElement(
"InvLocalEndpointInventory").addElement(invLocalEndpointInventoryName).addElement(
"InvLocalInventoryEp").addElement(invLocalInventoryEpUuid).addElement(
"InvIpMapping").addElement(invIpMappingName).build());
531 const std::string& invLocalEndpointInventoryName,
532 const std::string& invLocalInventoryEpUuid,
533 const std::string& invIpMappingName)
535 remove(opflex::ofcore::OFFramework::defaultInstance(),invLocalEndpointInventoryName,invLocalInventoryEpUuid,invIpMappingName);
550 opflex::ofcore::OFFramework& framework,
551 opflex::modb::ObjectListener* listener)
553 opflex::modb::mointernal
554 ::MO::registerListener(framework, listener,
CLASS_ID);
569 opflex::modb::ObjectListener* listener)
581 opflex::ofcore::OFFramework& framework,
582 opflex::modb::ObjectListener* listener)
584 opflex::modb::mointernal
585 ::MO::unregisterListener(framework, listener,
CLASS_ID);
595 opflex::modb::ObjectListener* listener)
605 opflex::ofcore::OFFramework& framework,
606 const opflex::modb::URI& uri,
607 const OF_SHARED_PTR<const opflex::modb::mointernal::ObjectInstance>& oi)
608 : MO(framework,
CLASS_ID, uri, oi) { }
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
Definition IpMapping.hpp:27
static boost::optional< OF_SHARED_PTR< modelgbp::inv::IpMapping > > resolve(const opflex::modb::URI &uri)
Retrieve an instance of IpMapping from the managed object store using the default framework instance.
Definition IpMapping.hpp:344
bool isFloatingIpSet()
Check whether floatingIp has been set.
Definition IpMapping.hpp:39
boost::optional< OF_SHARED_PTR< modelgbp::inv::IpMappingToGroupRSrc > > resolveInvIpMappingToGroupRSrc()
Retrieve the child object with the specified naming properties.
Definition IpMapping.hpp:415
const std::string & getFloatingIp(const std::string &defaultValue)
Get the value of floatingIp if set, otherwise the value of default passed in.
Definition IpMapping.hpp:60
void remove()
Remove this instance using the currently-active mutator.
Definition IpMapping.hpp:449
const std::string & getName(const std::string &defaultValue)
Get the value of name if set, otherwise the value of default passed in.
Definition IpMapping.hpp:172
bool isNextHopMacSet()
Check whether nextHopMac has been set.
Definition IpMapping.hpp:263
boost::optional< const std::string & > getMappedIp()
Get the value of mappedIp if it has been set.
Definition IpMapping.hpp:104
modelgbp::inv::IpMapping & setNextHopIf(const std::string &newValue)
Set nextHopIf to the specified value in the currently-active mutator.
Definition IpMapping.hpp:241
boost::optional< const std::string & > getNextHopIf()
Get the value of nextHopIf if it has been set.
Definition IpMapping.hpp:216
const std::string & getNextHopIf(const std::string &defaultValue)
Get the value of nextHopIf if set, otherwise the value of default passed in.
Definition IpMapping.hpp:228
static boost::optional< OF_SHARED_PTR< modelgbp::inv::IpMapping > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of IpMapping from the managed object store.
Definition IpMapping.hpp:326
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 IpMapping.hpp:549
boost::optional< const std::string & > getFloatingIp()
Get the value of floatingIp if it has been set.
Definition IpMapping.hpp:48
modelgbp::inv::IpMapping & unsetMappedIp()
Unset mappedIp in the currently-active mutator.
Definition IpMapping.hpp:141
static boost::optional< OF_SHARED_PTR< modelgbp::inv::IpMapping > > resolve(const std::string &invLocalEndpointInventoryName, const std::string &invLocalInventoryEpUuid, const std::string &invIpMappingName)
Retrieve an instance of IpMapping from the default managed object store by constructing its URI from ...
Definition IpMapping.hpp:398
modelgbp::inv::IpMapping & setName(const std::string &newValue)
Set name to the specified value in the currently-active mutator.
Definition IpMapping.hpp:185
modelgbp::inv::IpMapping & unsetNextHopIf()
Unset nextHopIf in the currently-active mutator.
Definition IpMapping.hpp:253
modelgbp::inv::IpMapping & setNextHopMac(const opflex::modb::MAC &newValue)
Set nextHopMac to the specified value in the currently-active mutator.
Definition IpMapping.hpp:297
boost::optional< const opflex::modb::MAC & > getNextHopMac()
Get the value of nextHopMac if it has been set.
Definition IpMapping.hpp:272
IpMapping(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri, const OF_SHARED_PTR< const opflex::modb::mointernal::ObjectInstance > &oi)
Construct an instance of IpMapping.
Definition IpMapping.hpp:604
boost::optional< const std::string & > getName()
Get the value of name if it has been set.
Definition IpMapping.hpp:160
OF_SHARED_PTR< modelgbp::inv::IpMappingToGroupRSrc > addInvIpMappingToGroupRSrc()
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition IpMapping.hpp:431
static void remove(const std::string &invLocalEndpointInventoryName, const std::string &invLocalInventoryEpUuid, const std::string &invIpMappingName)
Remove the IpMapping object with the specified path elements from the managed object store using the ...
Definition IpMapping.hpp:530
bool isNextHopIfSet()
Check whether nextHopIf has been set.
Definition IpMapping.hpp:207
modelgbp::inv::IpMapping & unsetName()
Unset name in the currently-active mutator.
Definition IpMapping.hpp:197
modelgbp::inv::IpMapping & unsetFloatingIp()
Unset floatingIp in the currently-active mutator.
Definition IpMapping.hpp:85
static void remove(const opflex::modb::URI &uri)
Remove the IpMapping object with the specified URI using the currently-active mutator and the default...
Definition IpMapping.hpp:480
bool isMappedIpSet()
Check whether mappedIp has been set.
Definition IpMapping.hpp:95
static void unregisterListener(opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class from the default framework instance.
Definition IpMapping.hpp:594
static boost::optional< OF_SHARED_PTR< modelgbp::inv::IpMapping > > resolve(opflex::ofcore::OFFramework &framework, const std::string &invLocalEndpointInventoryName, const std::string &invLocalInventoryEpUuid, const std::string &invIpMappingName)
Retrieve an instance of IpMapping from the managed object store by constructing its URI from the path...
Definition IpMapping.hpp:370
static void remove(opflex::ofcore::OFFramework &framework, const std::string &invLocalEndpointInventoryName, const std::string &invLocalInventoryEpUuid, const std::string &invIpMappingName)
Remove the IpMapping object with the specified path elements from the managed object store.
Definition IpMapping.hpp:503
static void remove(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Remove the IpMapping object with the specified URI using the currently-active mutator.
Definition IpMapping.hpp:464
const opflex::modb::MAC & getNextHopMac(const opflex::modb::MAC &defaultValue)
Get the value of nextHopMac if set, otherwise the value of default passed in.
Definition IpMapping.hpp:284
const std::string & getMappedIp(const std::string &defaultValue)
Get the value of mappedIp if set, otherwise the value of default passed in.
Definition IpMapping.hpp:116
modelgbp::inv::IpMapping & unsetNextHopMac()
Unset nextHopMac in the currently-active mutator.
Definition IpMapping.hpp:309
modelgbp::inv::IpMapping & setMappedIp(const std::string &newValue)
Set mappedIp to the specified value in the currently-active mutator.
Definition IpMapping.hpp:129
static void unregisterListener(opflex::ofcore::OFFramework &framework, opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class.
Definition IpMapping.hpp:580
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 IpMapping.hpp:568
modelgbp::inv::IpMapping & setFloatingIp(const std::string &newValue)
Set floatingIp to the specified value in the currently-active mutator.
Definition IpMapping.hpp:73
bool isNameSet()
Check whether name has been set.
Definition IpMapping.hpp:151
static const opflex::modb::class_id_t CLASS_ID
The unique class ID for IpMapping.
Definition IpMapping.hpp:33
SOME COPYRIGHT.
Definition OpcodeEnumT.hpp:12