11#ifndef GI_GBPE_INSTCONTEXT_HPP
12#define GI_GBPE_INSTCONTEXT_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 = 40;
37 return getObjectInstance().isSet(1310721ul, opflex::modb::PropertyInfo::U64);
47 return (uint32_t)getObjectInstance().getUInt64(1310721ul);
58 return getClassid().get_value_or(defaultValue);
71 getTLMutator().modify(getClassId(), getURI())->setUInt64(1310721ul, newValue);
83 getTLMutator().modify(getClassId(), getURI())->unset(1310721ul, opflex::modb::PropertyInfo::U64, opflex::modb::PropertyInfo::SCALAR);
93 return getObjectInstance().isSet(1310722ul, opflex::modb::PropertyInfo::U64);
103 return (uint32_t)getObjectInstance().getUInt64(1310722ul);
114 return getEncapId().get_value_or(defaultValue);
127 getTLMutator().modify(getClassId(), getURI())->setUInt64(1310722ul, newValue);
139 getTLMutator().modify(getClassId(), getURI())->unset(1310722ul, opflex::modb::PropertyInfo::U64, opflex::modb::PropertyInfo::SCALAR);
149 return getObjectInstance().isSet(1310723ul, opflex::modb::PropertyInfo::STRING);
159 return getObjectInstance().getString(1310723ul);
183 getTLMutator().modify(getClassId(), getURI())->setString(1310723ul, newValue);
195 getTLMutator().modify(getClassId(), getURI())->unset(1310723ul, opflex::modb::PropertyInfo::STRING, opflex::modb::PropertyInfo::SCALAR);
210 static boost::optional<OF_SHARED_PTR<modelgbp::gbpe::InstContext> >
resolve(
211 opflex::ofcore::OFFramework& framework,
212 const opflex::modb::URI& uri)
214 return opflex::modb::mointernal::MO::resolve<modelgbp::gbpe::InstContext>(framework,
CLASS_ID, uri);
228 static boost::optional<OF_SHARED_PTR<modelgbp::gbpe::InstContext> >
resolve(
229 const opflex::modb::URI& uri)
231 return opflex::modb::mointernal::MO::resolve<modelgbp::gbpe::InstContext>(opflex::ofcore::OFFramework::defaultInstance(),
CLASS_ID, uri);
253 opflex::ofcore::OFFramework& framework,
254 const std::string& policySpaceName,
255 const std::string& gbpEpGroupName)
257 return resolve(framework,opflex::modb::URIBuilder().addElement(
"PolicyUniverse").addElement(
"PolicySpace").addElement(policySpaceName).addElement(
"GbpEpGroup").addElement(gbpEpGroupName).addElement(
"GbpeInstContext").build());
278 const std::string& policySpaceName,
279 const std::string& gbpEpGroupName)
303 opflex::ofcore::OFFramework& framework,
304 const std::string& policySpaceName,
305 const std::string& gbpBridgeDomainName)
307 return resolve(framework,opflex::modb::URIBuilder().addElement(
"PolicyUniverse").addElement(
"PolicySpace").addElement(policySpaceName).addElement(
"GbpBridgeDomain").addElement(gbpBridgeDomainName).addElement(
"GbpeInstContext").build());
328 const std::string& policySpaceName,
329 const std::string& gbpBridgeDomainName)
353 opflex::ofcore::OFFramework& framework,
354 const std::string& policySpaceName,
355 const std::string& gbpRoutingDomainName)
357 return resolve(framework,opflex::modb::URIBuilder().addElement(
"PolicyUniverse").addElement(
"PolicySpace").addElement(policySpaceName).addElement(
"GbpRoutingDomain").addElement(gbpRoutingDomainName).addElement(
"GbpeInstContext").build());
378 const std::string& policySpaceName,
379 const std::string& gbpRoutingDomainName)
394 getTLMutator().remove(
CLASS_ID, getURI());
407 static void remove(opflex::ofcore::OFFramework& framework,
408 const opflex::modb::URI& uri)
410 MO::remove(framework,
CLASS_ID, uri);
423 static void remove(
const opflex::modb::URI& uri)
425 remove(opflex::ofcore::OFFramework::defaultInstance(), uri);
445 opflex::ofcore::OFFramework& framework,
446 const std::string& policySpaceName,
447 const std::string& gbpEpGroupName)
449 MO::remove(framework,
CLASS_ID, opflex::modb::URIBuilder().addElement(
"PolicyUniverse").addElement(
"PolicySpace").addElement(policySpaceName).addElement(
"GbpEpGroup").addElement(gbpEpGroupName).addElement(
"GbpeInstContext").build());
469 const std::string& policySpaceName,
470 const std::string& gbpEpGroupName)
492 opflex::ofcore::OFFramework& framework,
493 const std::string& policySpaceName,
494 const std::string& gbpBridgeDomainName)
496 MO::remove(framework,
CLASS_ID, opflex::modb::URIBuilder().addElement(
"PolicyUniverse").addElement(
"PolicySpace").addElement(policySpaceName).addElement(
"GbpBridgeDomain").addElement(gbpBridgeDomainName).addElement(
"GbpeInstContext").build());
516 const std::string& policySpaceName,
517 const std::string& gbpBridgeDomainName)
539 opflex::ofcore::OFFramework& framework,
540 const std::string& policySpaceName,
541 const std::string& gbpRoutingDomainName)
543 MO::remove(framework,
CLASS_ID, opflex::modb::URIBuilder().addElement(
"PolicyUniverse").addElement(
"PolicySpace").addElement(policySpaceName).addElement(
"GbpRoutingDomain").addElement(gbpRoutingDomainName).addElement(
"GbpeInstContext").build());
563 const std::string& policySpaceName,
564 const std::string& gbpRoutingDomainName)
581 opflex::ofcore::OFFramework& framework,
582 opflex::modb::ObjectListener* listener)
584 opflex::modb::mointernal
585 ::MO::registerListener(framework, listener,
CLASS_ID);
600 opflex::modb::ObjectListener* listener)
612 opflex::ofcore::OFFramework& framework,
613 opflex::modb::ObjectListener* listener)
615 opflex::modb::mointernal
616 ::MO::unregisterListener(framework, listener,
CLASS_ID);
626 opflex::modb::ObjectListener* listener)
636 opflex::ofcore::OFFramework& framework,
637 const opflex::modb::URI& uri,
638 const OF_SHARED_PTR<const opflex::modb::mointernal::ObjectInstance>& oi)
639 : MO(framework,
CLASS_ID, uri, oi) { }
Definition InstContext.hpp:23
static void removeUnderPolicyUniversePolicySpaceGbpBridgeDomain(opflex::ofcore::OFFramework &framework, const std::string &policySpaceName, const std::string &gbpBridgeDomainName)
Remove the InstContext object with the specified path elements from the managed object store.
Definition InstContext.hpp:491
static void removeUnderPolicyUniversePolicySpaceGbpRoutingDomain(opflex::ofcore::OFFramework &framework, const std::string &policySpaceName, const std::string &gbpRoutingDomainName)
Remove the InstContext object with the specified path elements from the managed object store.
Definition InstContext.hpp:538
static void removeUnderPolicyUniversePolicySpaceGbpBridgeDomain(const std::string &policySpaceName, const std::string &gbpBridgeDomainName)
Remove the InstContext object with the specified path elements from the managed object store using th...
Definition InstContext.hpp:515
static boost::optional< OF_SHARED_PTR< modelgbp::gbpe::InstContext > > resolveUnderPolicyUniversePolicySpaceGbpEpGroup(const std::string &policySpaceName, const std::string &gbpEpGroupName)
Retrieve an instance of InstContext from the default managed object store by constructing its URI fro...
Definition InstContext.hpp:277
static boost::optional< OF_SHARED_PTR< modelgbp::gbpe::InstContext > > resolveUnderPolicyUniversePolicySpaceGbpBridgeDomain(const std::string &policySpaceName, const std::string &gbpBridgeDomainName)
Retrieve an instance of InstContext from the default managed object store by constructing its URI fro...
Definition InstContext.hpp:327
static boost::optional< OF_SHARED_PTR< modelgbp::gbpe::InstContext > > resolveUnderPolicyUniversePolicySpaceGbpRoutingDomain(opflex::ofcore::OFFramework &framework, const std::string &policySpaceName, const std::string &gbpRoutingDomainName)
Retrieve an instance of InstContext from the managed object store by constructing its URI from the pa...
Definition InstContext.hpp:352
bool isEncapIdSet()
Check whether encapId has been set.
Definition InstContext.hpp:91
static boost::optional< OF_SHARED_PTR< modelgbp::gbpe::InstContext > > resolve(const opflex::modb::URI &uri)
Retrieve an instance of InstContext from the managed object store using the default framework instanc...
Definition InstContext.hpp:228
static void removeUnderPolicyUniversePolicySpaceGbpEpGroup(const std::string &policySpaceName, const std::string &gbpEpGroupName)
Remove the InstContext object with the specified path elements from the managed object store using th...
Definition InstContext.hpp:468
static void unregisterListener(opflex::ofcore::OFFramework &framework, opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class.
Definition InstContext.hpp:611
void remove()
Remove this instance using the currently-active mutator.
Definition InstContext.hpp:392
boost::optional< const std::string & > getMulticastGroupIP()
Get the value of multicastGroupIP if it has been set.
Definition InstContext.hpp:156
modelgbp::gbpe::InstContext & unsetMulticastGroupIP()
Unset multicastGroupIP in the currently-active mutator.
Definition InstContext.hpp:193
static boost::optional< OF_SHARED_PTR< modelgbp::gbpe::InstContext > > resolveUnderPolicyUniversePolicySpaceGbpEpGroup(opflex::ofcore::OFFramework &framework, const std::string &policySpaceName, const std::string &gbpEpGroupName)
Retrieve an instance of InstContext from the managed object store by constructing its URI from the pa...
Definition InstContext.hpp:252
static void removeUnderPolicyUniversePolicySpaceGbpEpGroup(opflex::ofcore::OFFramework &framework, const std::string &policySpaceName, const std::string &gbpEpGroupName)
Remove the InstContext object with the specified path elements from the managed object store.
Definition InstContext.hpp:444
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 InstContext.hpp:580
static boost::optional< OF_SHARED_PTR< modelgbp::gbpe::InstContext > > resolveUnderPolicyUniversePolicySpaceGbpRoutingDomain(const std::string &policySpaceName, const std::string &gbpRoutingDomainName)
Retrieve an instance of InstContext from the default managed object store by constructing its URI fro...
Definition InstContext.hpp:377
modelgbp::gbpe::InstContext & setMulticastGroupIP(const std::string &newValue)
Set multicastGroupIP to the specified value in the currently-active mutator.
Definition InstContext.hpp:181
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 InstContext.hpp:599
static boost::optional< OF_SHARED_PTR< modelgbp::gbpe::InstContext > > resolveUnderPolicyUniversePolicySpaceGbpBridgeDomain(opflex::ofcore::OFFramework &framework, const std::string &policySpaceName, const std::string &gbpBridgeDomainName)
Retrieve an instance of InstContext from the managed object store by constructing its URI from the pa...
Definition InstContext.hpp:302
modelgbp::gbpe::InstContext & setEncapId(uint32_t newValue)
Set encapId to the specified value in the currently-active mutator.
Definition InstContext.hpp:125
uint32_t getClassid(uint32_t defaultValue)
Get the value of classid if set, otherwise the value of default passed in.
Definition InstContext.hpp:56
modelgbp::gbpe::InstContext & unsetEncapId()
Unset encapId in the currently-active mutator.
Definition InstContext.hpp:137
boost::optional< uint32_t > getEncapId()
Get the value of encapId if it has been set.
Definition InstContext.hpp:100
InstContext(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri, const OF_SHARED_PTR< const opflex::modb::mointernal::ObjectInstance > &oi)
Construct an instance of InstContext.
Definition InstContext.hpp:635
static void remove(const opflex::modb::URI &uri)
Remove the InstContext object with the specified URI using the currently-active mutator and the defau...
Definition InstContext.hpp:423
modelgbp::gbpe::InstContext & unsetClassid()
Unset classid in the currently-active mutator.
Definition InstContext.hpp:81
bool isClassidSet()
Check whether classid has been set.
Definition InstContext.hpp:35
uint32_t getEncapId(uint32_t defaultValue)
Get the value of encapId if set, otherwise the value of default passed in.
Definition InstContext.hpp:112
bool isMulticastGroupIPSet()
Check whether multicastGroupIP has been set.
Definition InstContext.hpp:147
static boost::optional< OF_SHARED_PTR< modelgbp::gbpe::InstContext > > resolve(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Retrieve an instance of InstContext from the managed object store.
Definition InstContext.hpp:210
static void remove(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Remove the InstContext object with the specified URI using the currently-active mutator.
Definition InstContext.hpp:407
modelgbp::gbpe::InstContext & setClassid(uint32_t newValue)
Set classid to the specified value in the currently-active mutator.
Definition InstContext.hpp:69
static void unregisterListener(opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class from the default framework instance.
Definition InstContext.hpp:625
static void removeUnderPolicyUniversePolicySpaceGbpRoutingDomain(const std::string &policySpaceName, const std::string &gbpRoutingDomainName)
Remove the InstContext object with the specified path elements from the managed object store using th...
Definition InstContext.hpp:562
static const opflex::modb::class_id_t CLASS_ID
The unique class ID for InstContext.
Definition InstContext.hpp:29
boost::optional< uint32_t > getClassid()
Get the value of classid if it has been set.
Definition InstContext.hpp:44
const std::string & getMulticastGroupIP(const std::string &defaultValue)
Get the value of multicastGroupIP if set, otherwise the value of default passed in.
Definition InstContext.hpp:168
SOME COPYRIGHT.
Definition OpcodeEnumT.hpp:12