11#ifndef GI_EPDR_LOCALL2EP_HPP
12#define GI_EPDR_LOCALL2EP_HPP
14#include <boost/optional.hpp>
15#include "opflex/modb/URIBuilder.h"
16#include "opflex/modb/mo-internal/MO.h"
20#include "modelgbp/gbpe/EpgMappingCtx.hpp"
24#include "modelgbp/epdr/EndPointToGroupRSrc.hpp"
28#include "modelgbp/epdr/EndPointToSecGroupRSrc.hpp"
34 :
public opflex::modb::mointernal::MO
41 static const opflex::modb::class_id_t
CLASS_ID = 109;
49 return getObjectInstance().isSet(3571714ul, opflex::modb::PropertyInfo::MAC);
56 boost::optional<const opflex::modb::MAC&>
getMac()
59 return getObjectInstance().getMAC(3571714ul);
68 const opflex::modb::MAC&
getMac(
const opflex::modb::MAC& defaultValue)
70 return getMac().get_value_or(defaultValue);
83 getTLMutator().modify(getClassId(), getURI())->setMAC(3571714ul, newValue);
95 getTLMutator().modify(getClassId(), getURI())->unset(3571714ul, opflex::modb::PropertyInfo::MAC, opflex::modb::PropertyInfo::SCALAR);
105 return getObjectInstance().isSet(3571713ul, opflex::modb::PropertyInfo::STRING);
115 return getObjectInstance().getString(3571713ul);
124 const std::string&
getUuid(
const std::string& defaultValue)
126 return getUuid().get_value_or(defaultValue);
139 getTLMutator().modify(getClassId(), getURI())->setString(3571713ul, newValue);
151 getTLMutator().modify(getClassId(), getURI())->unset(3571713ul, opflex::modb::PropertyInfo::STRING, opflex::modb::PropertyInfo::SCALAR);
166 static boost::optional<OF_SHARED_PTR<modelgbp::epdr::LocalL2Ep> >
resolve(
167 opflex::ofcore::OFFramework& framework,
168 const opflex::modb::URI& uri)
170 return opflex::modb::mointernal::MO::resolve<modelgbp::epdr::LocalL2Ep>(framework,
CLASS_ID, uri);
184 static boost::optional<OF_SHARED_PTR<modelgbp::epdr::LocalL2Ep> >
resolve(
185 const opflex::modb::URI& uri)
187 return opflex::modb::mointernal::MO::resolve<modelgbp::epdr::LocalL2Ep>(opflex::ofcore::OFFramework::defaultInstance(),
CLASS_ID, uri);
206 static boost::optional<OF_SHARED_PTR<modelgbp::epdr::LocalL2Ep> >
resolve(
207 opflex::ofcore::OFFramework& framework,
208 const std::string& epdrLocalL2EpUuid)
210 return resolve(framework,opflex::modb::URIBuilder().addElement(
"EpdrL2Discovered").addElement(
"EpdrLocalL2Ep").addElement(epdrLocalL2EpUuid).build());
228 static boost::optional<OF_SHARED_PTR<modelgbp::epdr::LocalL2Ep> >
resolve(
229 const std::string& epdrLocalL2EpUuid)
231 return resolve(opflex::ofcore::OFFramework::defaultInstance(),epdrLocalL2EpUuid);
262 OF_SHARED_PTR<modelgbp::gbpe::EpgMappingCtx> result = addChild<modelgbp::gbpe::EpgMappingCtx>(
263 CLASS_ID, getURI(), 2151055381ul, 21,
264 opflex::modb::URIBuilder(getURI()).addElement(
"GbpeEpgMappingCtx").build()
297 OF_SHARED_PTR<modelgbp::epdr::EndPointToGroupRSrc> result = addChild<modelgbp::epdr::EndPointToGroupRSrc>(
298 CLASS_ID, getURI(), 2151055463ul, 103,
299 opflex::modb::URIBuilder(getURI()).addElement(
"EpdrEndPointToGroupRSrc").build()
318 const std::string& epdrEndPointToSecGroupRSrcTargetName)
320 opflex::modb::class_id_t epdrEndPointToSecGroupRSrcTargetClass = 203;
321 return modelgbp::epdr::EndPointToSecGroupRSrc::resolve(getFramework(), opflex::modb::URIBuilder(getURI()).addElement(
"EpdrEndPointToSecGroupRSrc").addElement(epdrEndPointToSecGroupRSrcTargetClass).addElement(epdrEndPointToSecGroupRSrcTargetName).build());
339 const std::string& epdrEndPointToSecGroupRSrcTargetName)
341 opflex::modb::class_id_t epdrEndPointToSecGroupRSrcTargetClass = 203;
342 OF_SHARED_PTR<modelgbp::epdr::EndPointToSecGroupRSrc> result = addChild<modelgbp::epdr::EndPointToSecGroupRSrc>(
343 CLASS_ID, getURI(), 2151055466ul, 106,
344 opflex::modb::URIBuilder(getURI()).addElement(
"EpdrEndPointToSecGroupRSrc").addElement(epdrEndPointToSecGroupRSrcTargetClass).addElement(epdrEndPointToSecGroupRSrcTargetName).build()
346 result->setTargetSecGroup(opflex::modb::URI(epdrEndPointToSecGroupRSrcTargetName));
366 opflex::modb::mointernal::MO::resolveChildren<modelgbp::epdr::EndPointToSecGroupRSrc>(
367 getFramework(),
CLASS_ID, getURI(), 2151055466ul, 106, out);
380 getTLMutator().remove(
CLASS_ID, getURI());
393 static void remove(opflex::ofcore::OFFramework& framework,
394 const opflex::modb::URI& uri)
396 MO::remove(framework,
CLASS_ID, uri);
409 static void remove(
const opflex::modb::URI& uri)
411 remove(opflex::ofcore::OFFramework::defaultInstance(), uri);
429 opflex::ofcore::OFFramework& framework,
430 const std::string& epdrLocalL2EpUuid)
432 MO::remove(framework,
CLASS_ID, opflex::modb::URIBuilder().addElement(
"EpdrL2Discovered").addElement(
"EpdrLocalL2Ep").addElement(epdrLocalL2EpUuid).build());
450 const std::string& epdrLocalL2EpUuid)
452 remove(opflex::ofcore::OFFramework::defaultInstance(),epdrLocalL2EpUuid);
467 opflex::ofcore::OFFramework& framework,
468 opflex::modb::ObjectListener* listener)
470 opflex::modb::mointernal
471 ::MO::registerListener(framework, listener,
CLASS_ID);
486 opflex::modb::ObjectListener* listener)
498 opflex::ofcore::OFFramework& framework,
499 opflex::modb::ObjectListener* listener)
501 opflex::modb::mointernal
502 ::MO::unregisterListener(framework, listener,
CLASS_ID);
512 opflex::modb::ObjectListener* listener)
522 opflex::ofcore::OFFramework& framework,
523 const opflex::modb::URI& uri,
524 const OF_SHARED_PTR<const opflex::modb::mointernal::ObjectInstance>& oi)
525 : MO(framework,
CLASS_ID, uri, oi) { }
static boost::optional< OF_SHARED_PTR< modelgbp::epdr::EndPointToGroupRSrc > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of EndPointToGroupRSrc from the managed object store.
Definition EndPointToGroupRSrc.hpp:257
static boost::optional< OF_SHARED_PTR< modelgbp::epdr::EndPointToSecGroupRSrc > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of EndPointToSecGroupRSrc from the managed object store.
Definition EndPointToSecGroupRSrc.hpp:257
Definition LocalL2Ep.hpp:35
modelgbp::epdr::LocalL2Ep & unsetUuid()
Unset uuid in the currently-active mutator.
Definition LocalL2Ep.hpp:149
modelgbp::epdr::LocalL2Ep & setMac(const opflex::modb::MAC &newValue)
Set mac to the specified value in the currently-active mutator.
Definition LocalL2Ep.hpp:81
boost::optional< OF_SHARED_PTR< modelgbp::gbpe::EpgMappingCtx > > resolveGbpeEpgMappingCtx()
Retrieve the child object with the specified naming properties.
Definition LocalL2Ep.hpp:243
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 LocalL2Ep.hpp:485
static void remove(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Remove the LocalL2Ep object with the specified URI using the currently-active mutator.
Definition LocalL2Ep.hpp:393
boost::optional< const opflex::modb::MAC & > getMac()
Get the value of mac if it has been set.
Definition LocalL2Ep.hpp:56
static void unregisterListener(opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class from the default framework instance.
Definition LocalL2Ep.hpp:511
static const opflex::modb::class_id_t CLASS_ID
The unique class ID for LocalL2Ep.
Definition LocalL2Ep.hpp:41
static boost::optional< OF_SHARED_PTR< modelgbp::epdr::LocalL2Ep > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of LocalL2Ep from the managed object store.
Definition LocalL2Ep.hpp:166
boost::optional< OF_SHARED_PTR< modelgbp::epdr::EndPointToSecGroupRSrc > > resolveEpdrEndPointToSecGroupRSrc(const std::string &epdrEndPointToSecGroupRSrcTargetName)
Retrieve the child object with the specified naming properties.
Definition LocalL2Ep.hpp:317
bool isUuidSet()
Check whether uuid has been set.
Definition LocalL2Ep.hpp:103
static void remove(const opflex::modb::URI &uri)
Remove the LocalL2Ep object with the specified URI using the currently-active mutator and the default...
Definition LocalL2Ep.hpp:409
static void remove(const std::string &epdrLocalL2EpUuid)
Remove the LocalL2Ep object with the specified path elements from the managed object store using the ...
Definition LocalL2Ep.hpp:449
void remove()
Remove this instance using the currently-active mutator.
Definition LocalL2Ep.hpp:378
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 LocalL2Ep.hpp:466
OF_SHARED_PTR< modelgbp::gbpe::EpgMappingCtx > addGbpeEpgMappingCtx()
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition LocalL2Ep.hpp:259
boost::optional< OF_SHARED_PTR< modelgbp::epdr::EndPointToGroupRSrc > > resolveEpdrEndPointToGroupRSrc()
Retrieve the child object with the specified naming properties.
Definition LocalL2Ep.hpp:278
boost::optional< const std::string & > getUuid()
Get the value of uuid if it has been set.
Definition LocalL2Ep.hpp:112
LocalL2Ep(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri, const OF_SHARED_PTR< const opflex::modb::mointernal::ObjectInstance > &oi)
Construct an instance of LocalL2Ep.
Definition LocalL2Ep.hpp:521
const opflex::modb::MAC & getMac(const opflex::modb::MAC &defaultValue)
Get the value of mac if set, otherwise the value of default passed in.
Definition LocalL2Ep.hpp:68
bool isMacSet()
Check whether mac has been set.
Definition LocalL2Ep.hpp:47
static void unregisterListener(opflex::ofcore::OFFramework &framework, opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class.
Definition LocalL2Ep.hpp:497
OF_SHARED_PTR< modelgbp::epdr::EndPointToSecGroupRSrc > addEpdrEndPointToSecGroupRSrc(const std::string &epdrEndPointToSecGroupRSrcTargetName)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition LocalL2Ep.hpp:338
static boost::optional< OF_SHARED_PTR< modelgbp::epdr::LocalL2Ep > > resolve(const opflex::modb::URI &uri)
Retrieve an instance of LocalL2Ep from the managed object store using the default framework instance.
Definition LocalL2Ep.hpp:184
modelgbp::epdr::LocalL2Ep & setUuid(const std::string &newValue)
Set uuid to the specified value in the currently-active mutator.
Definition LocalL2Ep.hpp:137
static boost::optional< OF_SHARED_PTR< modelgbp::epdr::LocalL2Ep > > resolve(const std::string &epdrLocalL2EpUuid)
Retrieve an instance of LocalL2Ep from the default managed object store by constructing its URI from ...
Definition LocalL2Ep.hpp:228
OF_SHARED_PTR< modelgbp::epdr::EndPointToGroupRSrc > addEpdrEndPointToGroupRSrc()
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition LocalL2Ep.hpp:294
void resolveEpdrEndPointToSecGroupRSrc(std::vector< OF_SHARED_PTR< modelgbp::epdr::EndPointToSecGroupRSrc > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::epdr::EndPointToSecGroupRSrc.
Definition LocalL2Ep.hpp:364
modelgbp::epdr::LocalL2Ep & unsetMac()
Unset mac in the currently-active mutator.
Definition LocalL2Ep.hpp:93
static void remove(opflex::ofcore::OFFramework &framework, const std::string &epdrLocalL2EpUuid)
Remove the LocalL2Ep object with the specified path elements from the managed object store.
Definition LocalL2Ep.hpp:428
static boost::optional< OF_SHARED_PTR< modelgbp::epdr::LocalL2Ep > > resolve(opflex::ofcore::OFFramework &framework, const std::string &epdrLocalL2EpUuid)
Retrieve an instance of LocalL2Ep from the managed object store by constructing its URI from the path...
Definition LocalL2Ep.hpp:206
const std::string & getUuid(const std::string &defaultValue)
Get the value of uuid if set, otherwise the value of default passed in.
Definition LocalL2Ep.hpp:124
static boost::optional< OF_SHARED_PTR< modelgbp::gbpe::EpgMappingCtx > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of EpgMappingCtx from the managed object store.
Definition EpgMappingCtx.hpp:50
SOME COPYRIGHT.
Definition OpcodeEnumT.hpp:12