modelgbp Generated OpFlex Model 1.7.0
EndPointToSecGroupRSrc.hpp
1
10#pragma once
11#ifndef GI_EPDR_ENDPOINTTOSECGROUPRSRC_HPP
12#define GI_EPDR_ENDPOINTTOSECGROUPRSRC_HPP
13
14#include <boost/optional.hpp>
15#include "opflex/modb/URIBuilder.h"
16#include "opflex/modb/mo-internal/MO.h"
17
18namespace modelgbp {
19namespace epdr {
20
22 : public opflex::modb::mointernal::MO
23{
24public:
25
29 static const opflex::modb::class_id_t CLASS_ID = 106;
30
35 bool isRoleSet()
36 {
37 return getObjectInstance().isSet(3473410ul, opflex::modb::PropertyInfo::ENUM8);
38 }
39
44 boost::optional<const uint8_t> getRole()
45 {
46 if (isRoleSet())
47 return (const uint8_t)getObjectInstance().getUInt64(3473410ul);
48 return boost::none;
49 }
50
56 const uint8_t getRole(const uint8_t defaultValue)
57 {
58 return getRole().get_value_or(defaultValue);
59 }
60
70 {
71 getTLMutator().modify(getClassId(), getURI())->setUInt64(3473410ul, newValue);
72 return *this;
73 }
74
82 {
83 getTLMutator().modify(getClassId(), getURI())->unset(3473410ul, opflex::modb::PropertyInfo::ENUM8, opflex::modb::PropertyInfo::SCALAR);
84 return *this;
85 }
86
92 {
93 return getObjectInstance().isSet(3473411ul, opflex::modb::PropertyInfo::REFERENCE);
94 }
95
100 boost::optional<opflex::modb::class_id_t> getTargetClass()
101 {
102 if (isTargetSet())
103 return getObjectInstance().getReference(3473411ul).first;
104 return boost::none;
105 }
106
111 boost::optional<opflex::modb::URI> getTargetURI()
112 {
113 if (isTargetSet())
114 return getObjectInstance().getReference(3473411ul).second;
115 return boost::none;
116 }
117
123 opflex::modb::class_id_t getTargetClass(opflex::modb::class_id_t defaultValue)
124 {
125 return getTargetClass().get_value_or(defaultValue);
126 }
127
133 opflex::modb::URI getTargetURI(opflex::modb::URI defaultValue)
134 {
135 return getTargetURI().get_value_or(defaultValue);
136 }
137
148 {
149 getTLMutator().modify(getClassId(), getURI())->setReference(3473411ul, 203, uri);
150 return *this;
151 }
152
171 const std::string& policySpaceName,
172 const std::string& gbpSecGroupName)
173 {
174 getTLMutator().modify(getClassId(), getURI())->setReference(3473411ul, 203, opflex::modb::URIBuilder().addElement("PolicyUniverse").addElement("PolicySpace").addElement(policySpaceName).addElement("GbpSecGroup").addElement(gbpSecGroupName).build());
175 return *this;
176 }
177
185 {
186 getTLMutator().modify(getClassId(), getURI())->unset(3473411ul, opflex::modb::PropertyInfo::REFERENCE, opflex::modb::PropertyInfo::SCALAR);
187 return *this;
188 }
189
195 {
196 return getObjectInstance().isSet(3473409ul, opflex::modb::PropertyInfo::ENUM8);
197 }
198
203 boost::optional<const uint8_t> getType()
204 {
205 if (isTypeSet())
206 return (const uint8_t)getObjectInstance().getUInt64(3473409ul);
207 return boost::none;
208 }
209
215 const uint8_t getType(const uint8_t defaultValue)
216 {
217 return getType().get_value_or(defaultValue);
218 }
219
229 {
230 getTLMutator().modify(getClassId(), getURI())->setUInt64(3473409ul, newValue);
231 return *this;
232 }
233
241 {
242 getTLMutator().modify(getClassId(), getURI())->unset(3473409ul, opflex::modb::PropertyInfo::ENUM8, opflex::modb::PropertyInfo::SCALAR);
243 return *this;
244 }
245
257 static boost::optional<OF_SHARED_PTR<modelgbp::epdr::EndPointToSecGroupRSrc> > resolve(
258 opflex::ofcore::OFFramework& framework,
259 const opflex::modb::URI& uri)
260 {
261 return opflex::modb::mointernal::MO::resolve<modelgbp::epdr::EndPointToSecGroupRSrc>(framework, CLASS_ID, uri);
262 }
263
275 static boost::optional<OF_SHARED_PTR<modelgbp::epdr::EndPointToSecGroupRSrc> > resolve(
276 const opflex::modb::URI& uri)
277 {
278 return opflex::modb::mointernal::MO::resolve<modelgbp::epdr::EndPointToSecGroupRSrc>(opflex::ofcore::OFFramework::defaultInstance(), CLASS_ID, uri);
279 }
280
301 static boost::optional<OF_SHARED_PTR<modelgbp::epdr::EndPointToSecGroupRSrc> > resolveUnderEpdrL2DiscoveredEpdrLocalL2Ep(
302 opflex::ofcore::OFFramework& framework,
303 const std::string& epdrLocalL2EpUuid,
304 uint16_t epdrEndPointToSecGroupRSrcTargetClass,
305 const std::string& epdrEndPointToSecGroupRSrcTargetName)
306 {
307 return resolve(framework,opflex::modb::URIBuilder().addElement("EpdrL2Discovered").addElement("EpdrLocalL2Ep").addElement(epdrLocalL2EpUuid).addElement("EpdrEndPointToSecGroupRSrc").addElement(epdrEndPointToSecGroupRSrcTargetClass).addElement(epdrEndPointToSecGroupRSrcTargetName).build());
308 }
309
329 static boost::optional<OF_SHARED_PTR<modelgbp::epdr::EndPointToSecGroupRSrc> > resolveUnderEpdrL2DiscoveredEpdrLocalL2Ep(
330 const std::string& epdrLocalL2EpUuid,
331 uint16_t epdrEndPointToSecGroupRSrcTargetClass,
332 const std::string& epdrEndPointToSecGroupRSrcTargetName)
333 {
334 return resolveUnderEpdrL2DiscoveredEpdrLocalL2Ep(opflex::ofcore::OFFramework::defaultInstance(),epdrLocalL2EpUuid,epdrEndPointToSecGroupRSrcTargetClass,epdrEndPointToSecGroupRSrcTargetName);
335 }
336
357 static boost::optional<OF_SHARED_PTR<modelgbp::epdr::EndPointToSecGroupRSrc> > resolveUnderEpdrL3DiscoveredEpdrLocalL3Ep(
358 opflex::ofcore::OFFramework& framework,
359 const std::string& epdrLocalL3EpUuid,
360 uint16_t epdrEndPointToSecGroupRSrcTargetClass,
361 const std::string& epdrEndPointToSecGroupRSrcTargetName)
362 {
363 return resolve(framework,opflex::modb::URIBuilder().addElement("EpdrL3Discovered").addElement("EpdrLocalL3Ep").addElement(epdrLocalL3EpUuid).addElement("EpdrEndPointToSecGroupRSrc").addElement(epdrEndPointToSecGroupRSrcTargetClass).addElement(epdrEndPointToSecGroupRSrcTargetName).build());
364 }
365
385 static boost::optional<OF_SHARED_PTR<modelgbp::epdr::EndPointToSecGroupRSrc> > resolveUnderEpdrL3DiscoveredEpdrLocalL3Ep(
386 const std::string& epdrLocalL3EpUuid,
387 uint16_t epdrEndPointToSecGroupRSrcTargetClass,
388 const std::string& epdrEndPointToSecGroupRSrcTargetName)
389 {
390 return resolveUnderEpdrL3DiscoveredEpdrLocalL3Ep(opflex::ofcore::OFFramework::defaultInstance(),epdrLocalL3EpUuid,epdrEndPointToSecGroupRSrcTargetClass,epdrEndPointToSecGroupRSrcTargetName);
391 }
392
401 void remove()
402 {
403 getTLMutator().remove(CLASS_ID, getURI());
404 }
405
416 static void remove(opflex::ofcore::OFFramework& framework,
417 const opflex::modb::URI& uri)
418 {
419 MO::remove(framework, CLASS_ID, uri);
420 }
421
432 static void remove(const opflex::modb::URI& uri)
433 {
434 remove(opflex::ofcore::OFFramework::defaultInstance(), uri);
435 }
436
456 opflex::ofcore::OFFramework& framework,
457 const std::string& epdrLocalL2EpUuid,
458 uint16_t epdrEndPointToSecGroupRSrcTargetClass,
459 const std::string& epdrEndPointToSecGroupRSrcTargetName)
460 {
461 MO::remove(framework, CLASS_ID, opflex::modb::URIBuilder().addElement("EpdrL2Discovered").addElement("EpdrLocalL2Ep").addElement(epdrLocalL2EpUuid).addElement("EpdrEndPointToSecGroupRSrc").addElement(epdrEndPointToSecGroupRSrcTargetClass).addElement(epdrEndPointToSecGroupRSrcTargetName).build());
462 }
463
483 const std::string& epdrLocalL2EpUuid,
484 uint16_t epdrEndPointToSecGroupRSrcTargetClass,
485 const std::string& epdrEndPointToSecGroupRSrcTargetName)
486 {
487 removeUnderEpdrL2DiscoveredEpdrLocalL2Ep(opflex::ofcore::OFFramework::defaultInstance(),epdrLocalL2EpUuid,epdrEndPointToSecGroupRSrcTargetClass,epdrEndPointToSecGroupRSrcTargetName);
488 }
489
509 opflex::ofcore::OFFramework& framework,
510 const std::string& epdrLocalL3EpUuid,
511 uint16_t epdrEndPointToSecGroupRSrcTargetClass,
512 const std::string& epdrEndPointToSecGroupRSrcTargetName)
513 {
514 MO::remove(framework, CLASS_ID, opflex::modb::URIBuilder().addElement("EpdrL3Discovered").addElement("EpdrLocalL3Ep").addElement(epdrLocalL3EpUuid).addElement("EpdrEndPointToSecGroupRSrc").addElement(epdrEndPointToSecGroupRSrcTargetClass).addElement(epdrEndPointToSecGroupRSrcTargetName).build());
515 }
516
536 const std::string& epdrLocalL3EpUuid,
537 uint16_t epdrEndPointToSecGroupRSrcTargetClass,
538 const std::string& epdrEndPointToSecGroupRSrcTargetName)
539 {
540 removeUnderEpdrL3DiscoveredEpdrLocalL3Ep(opflex::ofcore::OFFramework::defaultInstance(),epdrLocalL3EpUuid,epdrEndPointToSecGroupRSrcTargetClass,epdrEndPointToSecGroupRSrcTargetName);
541 }
542
554 static void registerListener(
555 opflex::ofcore::OFFramework& framework,
556 opflex::modb::ObjectListener* listener)
557 {
558 opflex::modb::mointernal
559 ::MO::registerListener(framework, listener, CLASS_ID);
560 }
561
573 static void registerListener(
574 opflex::modb::ObjectListener* listener)
575 {
576 registerListener(opflex::ofcore::OFFramework::defaultInstance(), listener);
577 }
578
586 opflex::ofcore::OFFramework& framework,
587 opflex::modb::ObjectListener* listener)
588 {
589 opflex::modb::mointernal
590 ::MO::unregisterListener(framework, listener, CLASS_ID);
591 }
592
600 opflex::modb::ObjectListener* listener)
601 {
602 unregisterListener(opflex::ofcore::OFFramework::defaultInstance(), listener);
603 }
604
610 opflex::ofcore::OFFramework& framework,
611 const opflex::modb::URI& uri,
612 const OF_SHARED_PTR<const opflex::modb::mointernal::ObjectInstance>& oi)
613 : MO(framework, CLASS_ID, uri, oi) { }
614}; // class EndPointToSecGroupRSrc
615
616} // namespace epdr
617} // namespace modelgbp
618#endif // GI_EPDR_ENDPOINTTOSECGROUPRSRC_HPP
Definition EndPointToSecGroupRSrc.hpp:23
static void unregisterListener(opflex::ofcore::OFFramework &framework, opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class.
Definition EndPointToSecGroupRSrc.hpp:585
bool isRoleSet()
Check whether role has been set.
Definition EndPointToSecGroupRSrc.hpp:35
static boost::optional< OF_SHARED_PTR< modelgbp::epdr::EndPointToSecGroupRSrc > > resolveUnderEpdrL3DiscoveredEpdrLocalL3Ep(const std::string &epdrLocalL3EpUuid, uint16_t epdrEndPointToSecGroupRSrcTargetClass, const std::string &epdrEndPointToSecGroupRSrcTargetName)
Retrieve an instance of EndPointToSecGroupRSrc from the default managed object store by constructing ...
Definition EndPointToSecGroupRSrc.hpp:385
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 EndPointToSecGroupRSrc.hpp:123
static const opflex::modb::class_id_t CLASS_ID
The unique class ID for EndPointToSecGroupRSrc.
Definition EndPointToSecGroupRSrc.hpp:29
static void unregisterListener(opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class from the default framework instance.
Definition EndPointToSecGroupRSrc.hpp:599
static void removeUnderEpdrL2DiscoveredEpdrLocalL2Ep(opflex::ofcore::OFFramework &framework, const std::string &epdrLocalL2EpUuid, uint16_t epdrEndPointToSecGroupRSrcTargetClass, const std::string &epdrEndPointToSecGroupRSrcTargetName)
Remove the EndPointToSecGroupRSrc object with the specified path elements from the managed object sto...
Definition EndPointToSecGroupRSrc.hpp:455
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 EndPointToSecGroupRSrc.hpp:573
modelgbp::epdr::EndPointToSecGroupRSrc & unsetRole()
Unset role in the currently-active mutator.
Definition EndPointToSecGroupRSrc.hpp:81
boost::optional< const uint8_t > getRole()
Get the value of role if it has been set.
Definition EndPointToSecGroupRSrc.hpp:44
static boost::optional< OF_SHARED_PTR< modelgbp::epdr::EndPointToSecGroupRSrc > > resolveUnderEpdrL3DiscoveredEpdrLocalL3Ep(opflex::ofcore::OFFramework &framework, const std::string &epdrLocalL3EpUuid, uint16_t epdrEndPointToSecGroupRSrcTargetClass, const std::string &epdrEndPointToSecGroupRSrcTargetName)
Retrieve an instance of EndPointToSecGroupRSrc from the managed object store by constructing its URI ...
Definition EndPointToSecGroupRSrc.hpp:357
modelgbp::epdr::EndPointToSecGroupRSrc & setTargetSecGroup(const std::string &policySpaceName, const std::string &gbpSecGroupName)
Set the reference to point to an instance of SecGroup in the currently-active mutator by constructing...
Definition EndPointToSecGroupRSrc.hpp:170
const uint8_t getRole(const uint8_t defaultValue)
Get the value of role if set, otherwise the value of default passed in.
Definition EndPointToSecGroupRSrc.hpp:56
modelgbp::epdr::EndPointToSecGroupRSrc & setTargetSecGroup(const opflex::modb::URI &uri)
Set the reference to point to an instance of SecGroup with the specified URI.
Definition EndPointToSecGroupRSrc.hpp:147
modelgbp::epdr::EndPointToSecGroupRSrc & unsetTarget()
Unset target in the currently-active mutator.
Definition EndPointToSecGroupRSrc.hpp:184
EndPointToSecGroupRSrc(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri, const OF_SHARED_PTR< const opflex::modb::mointernal::ObjectInstance > &oi)
Construct an instance of EndPointToSecGroupRSrc.
Definition EndPointToSecGroupRSrc.hpp:609
static boost::optional< OF_SHARED_PTR< modelgbp::epdr::EndPointToSecGroupRSrc > > resolveUnderEpdrL2DiscoveredEpdrLocalL2Ep(opflex::ofcore::OFFramework &framework, const std::string &epdrLocalL2EpUuid, uint16_t epdrEndPointToSecGroupRSrcTargetClass, const std::string &epdrEndPointToSecGroupRSrcTargetName)
Retrieve an instance of EndPointToSecGroupRSrc from the managed object store by constructing its URI ...
Definition EndPointToSecGroupRSrc.hpp:301
static void removeUnderEpdrL3DiscoveredEpdrLocalL3Ep(opflex::ofcore::OFFramework &framework, const std::string &epdrLocalL3EpUuid, uint16_t epdrEndPointToSecGroupRSrcTargetClass, const std::string &epdrEndPointToSecGroupRSrcTargetName)
Remove the EndPointToSecGroupRSrc object with the specified path elements from the managed object sto...
Definition EndPointToSecGroupRSrc.hpp:508
static boost::optional< OF_SHARED_PTR< modelgbp::epdr::EndPointToSecGroupRSrc > > resolveUnderEpdrL2DiscoveredEpdrLocalL2Ep(const std::string &epdrLocalL2EpUuid, uint16_t epdrEndPointToSecGroupRSrcTargetClass, const std::string &epdrEndPointToSecGroupRSrcTargetName)
Retrieve an instance of EndPointToSecGroupRSrc from the default managed object store by constructing ...
Definition EndPointToSecGroupRSrc.hpp:329
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 EndPointToSecGroupRSrc.hpp:554
static void remove(opflex::ofcore::OFFramework &framework, const opflex::modb::URI &uri)
Remove the EndPointToSecGroupRSrc object with the specified URI using the currently-active mutator.
Definition EndPointToSecGroupRSrc.hpp:416
boost::optional< opflex::modb::URI > getTargetURI()
Get the value of targetURI if it has been set.
Definition EndPointToSecGroupRSrc.hpp:111
void remove()
Remove this instance using the currently-active mutator.
Definition EndPointToSecGroupRSrc.hpp:401
modelgbp::epdr::EndPointToSecGroupRSrc & setRole(const uint8_t newValue)
Set role to the specified value in the currently-active mutator.
Definition EndPointToSecGroupRSrc.hpp:69
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
bool isTypeSet()
Check whether type has been set.
Definition EndPointToSecGroupRSrc.hpp:194
const uint8_t getType(const uint8_t defaultValue)
Get the value of type if set, otherwise the value of default passed in.
Definition EndPointToSecGroupRSrc.hpp:215
static void removeUnderEpdrL2DiscoveredEpdrLocalL2Ep(const std::string &epdrLocalL2EpUuid, uint16_t epdrEndPointToSecGroupRSrcTargetClass, const std::string &epdrEndPointToSecGroupRSrcTargetName)
Remove the EndPointToSecGroupRSrc object with the specified path elements from the managed object sto...
Definition EndPointToSecGroupRSrc.hpp:482
static void remove(const opflex::modb::URI &uri)
Remove the EndPointToSecGroupRSrc object with the specified URI using the currently-active mutator an...
Definition EndPointToSecGroupRSrc.hpp:432
bool isTargetSet()
Check whether target has been set.
Definition EndPointToSecGroupRSrc.hpp:91
static boost::optional< OF_SHARED_PTR< modelgbp::epdr::EndPointToSecGroupRSrc > > resolve(const opflex::modb::URI &uri)
Retrieve an instance of EndPointToSecGroupRSrc from the managed object store using the default framew...
Definition EndPointToSecGroupRSrc.hpp:275
opflex::modb::URI getTargetURI(opflex::modb::URI defaultValue)
Get the value of targetURI if set, otherwise the value of default passed in.
Definition EndPointToSecGroupRSrc.hpp:133
boost::optional< opflex::modb::class_id_t > getTargetClass()
Get the value of targetClass if it has been set.
Definition EndPointToSecGroupRSrc.hpp:100
modelgbp::epdr::EndPointToSecGroupRSrc & setType(const uint8_t newValue)
Set type to the specified value in the currently-active mutator.
Definition EndPointToSecGroupRSrc.hpp:228
boost::optional< const uint8_t > getType()
Get the value of type if it has been set.
Definition EndPointToSecGroupRSrc.hpp:203
modelgbp::epdr::EndPointToSecGroupRSrc & unsetType()
Unset type in the currently-active mutator.
Definition EndPointToSecGroupRSrc.hpp:240
static void removeUnderEpdrL3DiscoveredEpdrLocalL3Ep(const std::string &epdrLocalL3EpUuid, uint16_t epdrEndPointToSecGroupRSrcTargetClass, const std::string &epdrEndPointToSecGroupRSrcTargetName)
Remove the EndPointToSecGroupRSrc object with the specified path elements from the managed object sto...
Definition EndPointToSecGroupRSrc.hpp:535
SOME COPYRIGHT.
Definition OpcodeEnumT.hpp:12