11#ifndef GI_EPR_L3EP_HPP
12#define GI_EPR_L3EP_HPP
14#include <boost/optional.hpp>
15#include "opflex/modb/URIBuilder.h"
16#include "opflex/modb/mo-internal/MO.h"
20#include "modelgbp/gbpe/ReportedEpAttributeSet.hpp"
24#include "modelgbp/gbpe/Attestation.hpp"
28#include "modelgbp/span/LocalEpFromEpRTgt.hpp"
32#include "modelgbp/epr/SecurityGroupContext.hpp"
38 :
public opflex::modb::mointernal::MO
45 static const opflex::modb::class_id_t
CLASS_ID = 101;
53 return getObjectInstance().isSet(3309573ul, opflex::modb::PropertyInfo::STRING);
63 return getObjectInstance().getString(3309573ul);
72 const std::string&
getContext(
const std::string& defaultValue)
74 return getContext().get_value_or(defaultValue);
87 getTLMutator().modify(getClassId(), getURI())->setString(3309573ul, newValue);
99 getTLMutator().modify(getClassId(), getURI())->unset(3309573ul, opflex::modb::PropertyInfo::STRING, opflex::modb::PropertyInfo::SCALAR);
109 return getObjectInstance().isSet(3309571ul, opflex::modb::PropertyInfo::STRING);
119 return getObjectInstance().getString(3309571ul);
128 const std::string&
getGroup(
const std::string& defaultValue)
130 return getGroup().get_value_or(defaultValue);
143 getTLMutator().modify(getClassId(), getURI())->setString(3309571ul, newValue);
155 getTLMutator().modify(getClassId(), getURI())->unset(3309571ul, opflex::modb::PropertyInfo::STRING, opflex::modb::PropertyInfo::SCALAR);
165 return getObjectInstance().isSet(3309572ul, opflex::modb::PropertyInfo::STRING);
172 boost::optional<const std::string&>
getIp()
175 return getObjectInstance().getString(3309572ul);
184 const std::string&
getIp(
const std::string& defaultValue)
186 return getIp().get_value_or(defaultValue);
199 getTLMutator().modify(getClassId(), getURI())->setString(3309572ul, newValue);
211 getTLMutator().modify(getClassId(), getURI())->unset(3309572ul, opflex::modb::PropertyInfo::STRING, opflex::modb::PropertyInfo::SCALAR);
221 return getObjectInstance().isSet(3309570ul, opflex::modb::PropertyInfo::MAC);
228 boost::optional<const opflex::modb::MAC&>
getMac()
231 return getObjectInstance().getMAC(3309570ul);
240 const opflex::modb::MAC&
getMac(
const opflex::modb::MAC& defaultValue)
242 return getMac().get_value_or(defaultValue);
255 getTLMutator().modify(getClassId(), getURI())->setMAC(3309570ul, newValue);
267 getTLMutator().modify(getClassId(), getURI())->unset(3309570ul, opflex::modb::PropertyInfo::MAC, opflex::modb::PropertyInfo::SCALAR);
277 return getObjectInstance().isSet(3309569ul, opflex::modb::PropertyInfo::STRING);
287 return getObjectInstance().getString(3309569ul);
296 const std::string&
getUuid(
const std::string& defaultValue)
298 return getUuid().get_value_or(defaultValue);
311 getTLMutator().modify(getClassId(), getURI())->setString(3309569ul, newValue);
323 getTLMutator().modify(getClassId(), getURI())->unset(3309569ul, opflex::modb::PropertyInfo::STRING, opflex::modb::PropertyInfo::SCALAR);
338 static boost::optional<OF_SHARED_PTR<modelgbp::epr::L3Ep> >
resolve(
339 opflex::ofcore::OFFramework& framework,
340 const opflex::modb::URI& uri)
342 return opflex::modb::mointernal::MO::resolve<modelgbp::epr::L3Ep>(framework,
CLASS_ID, uri);
356 static boost::optional<OF_SHARED_PTR<modelgbp::epr::L3Ep> >
resolve(
357 const opflex::modb::URI& uri)
359 return opflex::modb::mointernal::MO::resolve<modelgbp::epr::L3Ep>(opflex::ofcore::OFFramework::defaultInstance(),
CLASS_ID, uri);
380 static boost::optional<OF_SHARED_PTR<modelgbp::epr::L3Ep> >
resolve(
381 opflex::ofcore::OFFramework& framework,
382 const std::string& eprL3EpContext,
383 const std::string& eprL3EpIp)
385 return resolve(framework,opflex::modb::URIBuilder().addElement(
"EprL3Universe").addElement(
"EprL3Ep").addElement(eprL3EpContext).addElement(eprL3EpIp).build());
405 static boost::optional<OF_SHARED_PTR<modelgbp::epr::L3Ep> >
resolve(
406 const std::string& eprL3EpContext,
407 const std::string& eprL3EpIp)
409 return resolve(opflex::ofcore::OFFramework::defaultInstance(),eprL3EpContext,eprL3EpIp);
440 OF_SHARED_PTR<modelgbp::gbpe::ReportedEpAttributeSet> result = addChild<modelgbp::gbpe::ReportedEpAttributeSet>(
441 CLASS_ID, getURI(), 2150793254ul, 38,
442 opflex::modb::URIBuilder(getURI()).addElement(
"GbpeReportedEpAttributeSet").build()
459 const std::string& gbpeAttestationName)
477 const std::string& gbpeAttestationName)
479 OF_SHARED_PTR<modelgbp::gbpe::Attestation> result = addChild<modelgbp::gbpe::Attestation>(
480 CLASS_ID, getURI(), 2150793263ul, 47,
481 opflex::modb::URIBuilder(getURI()).addElement(
"GbpeAttestation").addElement(gbpeAttestationName).build()
483 result->setName(gbpeAttestationName);
503 opflex::modb::mointernal::MO::resolveChildren<modelgbp::gbpe::Attestation>(
504 getFramework(),
CLASS_ID, getURI(), 2150793263ul, 47, out);
519 const std::string& spanLocalEpFromEpRTgtSource)
537 const std::string& spanLocalEpFromEpRTgtSource)
539 OF_SHARED_PTR<modelgbp::span::LocalEpFromEpRTgt> result = addChild<modelgbp::span::LocalEpFromEpRTgt>(
540 CLASS_ID, getURI(), 2150793287ul, 71,
541 opflex::modb::URIBuilder(getURI()).addElement(
"SpanLocalEpFromEpRTgt").addElement(spanLocalEpFromEpRTgtSource).build()
543 result->setSource(spanLocalEpFromEpRTgtSource);
563 opflex::modb::mointernal::MO::resolveChildren<modelgbp::span::LocalEpFromEpRTgt>(
564 getFramework(),
CLASS_ID, getURI(), 2150793287ul, 71, out);
579 const std::string& eprSecurityGroupContextSecGroup)
597 const std::string& eprSecurityGroupContextSecGroup)
599 OF_SHARED_PTR<modelgbp::epr::SecurityGroupContext> result = addChild<modelgbp::epr::SecurityGroupContext>(
600 CLASS_ID, getURI(), 2150793314ul, 98,
601 opflex::modb::URIBuilder(getURI()).addElement(
"EprSecurityGroupContext").addElement(eprSecurityGroupContextSecGroup).build()
603 result->setSecGroup(eprSecurityGroupContextSecGroup);
623 opflex::modb::mointernal::MO::resolveChildren<modelgbp::epr::SecurityGroupContext>(
624 getFramework(),
CLASS_ID, getURI(), 2150793314ul, 98, out);
637 getTLMutator().remove(
CLASS_ID, getURI());
650 static void remove(opflex::ofcore::OFFramework& framework,
651 const opflex::modb::URI& uri)
653 MO::remove(framework,
CLASS_ID, uri);
666 static void remove(
const opflex::modb::URI& uri)
668 remove(opflex::ofcore::OFFramework::defaultInstance(), uri);
688 opflex::ofcore::OFFramework& framework,
689 const std::string& eprL3EpContext,
690 const std::string& eprL3EpIp)
692 MO::remove(framework,
CLASS_ID, opflex::modb::URIBuilder().addElement(
"EprL3Universe").addElement(
"EprL3Ep").addElement(eprL3EpContext).addElement(eprL3EpIp).build());
712 const std::string& eprL3EpContext,
713 const std::string& eprL3EpIp)
715 remove(opflex::ofcore::OFFramework::defaultInstance(),eprL3EpContext,eprL3EpIp);
730 opflex::ofcore::OFFramework& framework,
731 opflex::modb::ObjectListener* listener)
733 opflex::modb::mointernal
734 ::MO::registerListener(framework, listener,
CLASS_ID);
749 opflex::modb::ObjectListener* listener)
761 opflex::ofcore::OFFramework& framework,
762 opflex::modb::ObjectListener* listener)
764 opflex::modb::mointernal
765 ::MO::unregisterListener(framework, listener,
CLASS_ID);
775 opflex::modb::ObjectListener* listener)
785 opflex::ofcore::OFFramework& framework,
786 const opflex::modb::URI& uri,
787 const OF_SHARED_PTR<const opflex::modb::mointernal::ObjectInstance>& oi)
788 : MO(framework,
CLASS_ID, uri, oi) { }
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 L3Ep.hpp:240
OF_SHARED_PTR< modelgbp::epr::SecurityGroupContext > addEprSecurityGroupContext(const std::string &eprSecurityGroupContextSecGroup)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition L3Ep.hpp:596
boost::optional< const std::string & > getIp()
Get the value of ip if it has been set.
Definition L3Ep.hpp:172
OF_SHARED_PTR< modelgbp::gbpe::ReportedEpAttributeSet > addGbpeReportedEpAttributeSet()
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition L3Ep.hpp:437
bool isGroupSet()
Check whether group has been set.
Definition L3Ep.hpp:107
const std::string & getContext(const std::string &defaultValue)
Get the value of context if set, otherwise the value of default passed in.
Definition L3Ep.hpp:72
static void remove(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Remove the L3Ep object with the specified URI using the currently-active mutator.
Definition L3Ep.hpp:650
static void remove(const std::string &eprL3EpContext, const std::string &eprL3EpIp)
Remove the L3Ep object with the specified path elements from the managed object store using the defau...
Definition L3Ep.hpp:711
OF_SHARED_PTR< modelgbp::span::LocalEpFromEpRTgt > addSpanLocalEpFromEpRTgt(const std::string &spanLocalEpFromEpRTgtSource)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition L3Ep.hpp:536
boost::optional< const std::string & > getGroup()
Get the value of group if it has been set.
Definition L3Ep.hpp:116
modelgbp::epr::L3Ep & setContext(const std::string &newValue)
Set context to the specified value in the currently-active mutator.
Definition L3Ep.hpp:85
boost::optional< OF_SHARED_PTR< modelgbp::gbpe::ReportedEpAttributeSet > > resolveGbpeReportedEpAttributeSet()
Retrieve the child object with the specified naming properties.
Definition L3Ep.hpp:421
OF_SHARED_PTR< modelgbp::gbpe::Attestation > addGbpeAttestation(const std::string &gbpeAttestationName)
Create a new child object with the specified naming properties and make it a child of this object in ...
Definition L3Ep.hpp:476
void resolveSpanLocalEpFromEpRTgt(std::vector< OF_SHARED_PTR< modelgbp::span::LocalEpFromEpRTgt > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::span::LocalEpFromEpRTgt.
Definition L3Ep.hpp:561
static const opflex::modb::class_id_t CLASS_ID
The unique class ID for L3Ep.
Definition L3Ep.hpp:45
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 L3Ep.hpp:729
bool isMacSet()
Check whether mac has been set.
Definition L3Ep.hpp:219
modelgbp::epr::L3Ep & unsetIp()
Unset ip in the currently-active mutator.
Definition L3Ep.hpp:209
modelgbp::epr::L3Ep & setUuid(const std::string &newValue)
Set uuid to the specified value in the currently-active mutator.
Definition L3Ep.hpp:309
modelgbp::epr::L3Ep & unsetContext()
Unset context in the currently-active mutator.
Definition L3Ep.hpp:97
boost::optional< const opflex::modb::MAC & > getMac()
Get the value of mac if it has been set.
Definition L3Ep.hpp:228
static void unregisterListener(opflex::ofcore::OFFramework &framework, opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class.
Definition L3Ep.hpp:760
boost::optional< OF_SHARED_PTR< modelgbp::span::LocalEpFromEpRTgt > > resolveSpanLocalEpFromEpRTgt(const std::string &spanLocalEpFromEpRTgtSource)
Retrieve the child object with the specified naming properties.
Definition L3Ep.hpp:518
modelgbp::epr::L3Ep & setIp(const std::string &newValue)
Set ip to the specified value in the currently-active mutator.
Definition L3Ep.hpp:197
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 L3Ep.hpp:748
bool isIpSet()
Check whether ip has been set.
Definition L3Ep.hpp:163
bool isContextSet()
Check whether context has been set.
Definition L3Ep.hpp:51
const std::string & getUuid(const std::string &defaultValue)
Get the value of uuid if set, otherwise the value of default passed in.
Definition L3Ep.hpp:296
static void remove(opflex::ofcore::OFFramework &framework, const std::string &eprL3EpContext, const std::string &eprL3EpIp)
Remove the L3Ep object with the specified path elements from the managed object store.
Definition L3Ep.hpp:687
modelgbp::epr::L3Ep & setGroup(const std::string &newValue)
Set group to the specified value in the currently-active mutator.
Definition L3Ep.hpp:141
modelgbp::epr::L3Ep & unsetGroup()
Unset group in the currently-active mutator.
Definition L3Ep.hpp:153
static boost::optional< OF_SHARED_PTR< modelgbp::epr::L3Ep > > resolve(const opflex::modb::URI &uri)
Retrieve an instance of L3Ep from the managed object store using the default framework instance.
Definition L3Ep.hpp:356
const std::string & getGroup(const std::string &defaultValue)
Get the value of group if set, otherwise the value of default passed in.
Definition L3Ep.hpp:128
static boost::optional< OF_SHARED_PTR< modelgbp::epr::L3Ep > > resolve(opflex::ofcore::OFFramework &framework, const std::string &eprL3EpContext, const std::string &eprL3EpIp)
Retrieve an instance of L3Ep from the managed object store by constructing its URI from the path elem...
Definition L3Ep.hpp:380
bool isUuidSet()
Check whether uuid has been set.
Definition L3Ep.hpp:275
boost::optional< const std::string & > getContext()
Get the value of context if it has been set.
Definition L3Ep.hpp:60
void remove()
Remove this instance using the currently-active mutator.
Definition L3Ep.hpp:635
L3Ep(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri, const OF_SHARED_PTR< const opflex::modb::mointernal::ObjectInstance > &oi)
Construct an instance of L3Ep.
Definition L3Ep.hpp:784
modelgbp::epr::L3Ep & setMac(const opflex::modb::MAC &newValue)
Set mac to the specified value in the currently-active mutator.
Definition L3Ep.hpp:253
static void unregisterListener(opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class from the default framework instance.
Definition L3Ep.hpp:774
static boost::optional< OF_SHARED_PTR< modelgbp::epr::L3Ep > > resolve(const std::string &eprL3EpContext, const std::string &eprL3EpIp)
Retrieve an instance of L3Ep from the default managed object store by constructing its URI from the p...
Definition L3Ep.hpp:405
void resolveGbpeAttestation(std::vector< OF_SHARED_PTR< modelgbp::gbpe::Attestation > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::gbpe::Attestation.
Definition L3Ep.hpp:501
modelgbp::epr::L3Ep & unsetMac()
Unset mac in the currently-active mutator.
Definition L3Ep.hpp:265
modelgbp::epr::L3Ep & unsetUuid()
Unset uuid in the currently-active mutator.
Definition L3Ep.hpp:321
const std::string & getIp(const std::string &defaultValue)
Get the value of ip if set, otherwise the value of default passed in.
Definition L3Ep.hpp:184
boost::optional< const std::string & > getUuid()
Get the value of uuid if it has been set.
Definition L3Ep.hpp:284
boost::optional< OF_SHARED_PTR< modelgbp::epr::SecurityGroupContext > > resolveEprSecurityGroupContext(const std::string &eprSecurityGroupContextSecGroup)
Retrieve the child object with the specified naming properties.
Definition L3Ep.hpp:578
static boost::optional< OF_SHARED_PTR< modelgbp::epr::L3Ep > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of L3Ep from the managed object store.
Definition L3Ep.hpp:338
static void remove(const opflex::modb::URI &uri)
Remove the L3Ep object with the specified URI using the currently-active mutator and the default fram...
Definition L3Ep.hpp:666
boost::optional< OF_SHARED_PTR< modelgbp::gbpe::Attestation > > resolveGbpeAttestation(const std::string &gbpeAttestationName)
Retrieve the child object with the specified naming properties.
Definition L3Ep.hpp:458
void resolveEprSecurityGroupContext(std::vector< OF_SHARED_PTR< modelgbp::epr::SecurityGroupContext > > &out)
Resolve and retrieve all of the immediate children of type modelgbp::epr::SecurityGroupContext.
Definition L3Ep.hpp:621
static boost::optional< OF_SHARED_PTR< modelgbp::epr::SecurityGroupContext > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of SecurityGroupContext from the managed object store.
Definition SecurityGroupContext.hpp:154
static boost::optional< OF_SHARED_PTR< modelgbp::gbpe::Attestation > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of Attestation from the managed object store.
Definition Attestation.hpp:210
static boost::optional< OF_SHARED_PTR< modelgbp::gbpe::ReportedEpAttributeSet > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of ReportedEpAttributeSet from the managed object store.
Definition ReportedEpAttributeSet.hpp:46
static boost::optional< OF_SHARED_PTR< modelgbp::span::LocalEpFromEpRTgt > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of LocalEpFromEpRTgt from the managed object store.
Definition LocalEpFromEpRTgt.hpp:210
SOME COPYRIGHT.
Definition OpcodeEnumT.hpp:12