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 
18 namespace modelgbp {
19 namespace epdr {
20 
22  : public opflex::modb::mointernal::MO
23 {
24 public:
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 
91  bool isTargetSet()
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 
194  bool isTypeSet()
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 
585  static void unregisterListener(
586  opflex::ofcore::OFFramework& framework,
587  opflex::modb::ObjectListener* listener)
588  {
589  opflex::modb::mointernal
590  ::MO::unregisterListener(framework, listener, CLASS_ID);
591  }
592 
599  static void unregisterListener(
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
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 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
bool isTargetSet()
Check whether target has been set.
Definition: EndPointToSecGroupRSrc.hpp:91
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
modelgbp::epdr::EndPointToSecGroupRSrc & unsetType()
Unset type in the currently-active mutator.
Definition: EndPointToSecGroupRSrc.hpp:240
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
bool isRoleSet()
Check whether role has been set.
Definition: EndPointToSecGroupRSrc.hpp:35
static const opflex::modb::class_id_t CLASS_ID
The unique class ID for EndPointToSecGroupRSrc.
Definition: EndPointToSecGroupRSrc.hpp:29
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
Definition: EndPointToSecGroupRSrc.hpp:21
bool isTypeSet()
Check whether type has been set.
Definition: EndPointToSecGroupRSrc.hpp:194
modelgbp::epdr::EndPointToSecGroupRSrc & unsetTarget()
Unset target in the currently-active mutator.
Definition: EndPointToSecGroupRSrc.hpp:184
boost::optional< const uint8_t > getType()
Get the value of type if it has been set.
Definition: EndPointToSecGroupRSrc.hpp:203
boost::optional< const uint8_t > getRole()
Get the value of role if it has been set.
Definition: EndPointToSecGroupRSrc.hpp:44
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
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
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
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 > > 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
modelgbp::epdr::EndPointToSecGroupRSrc & setRole(const uint8_t newValue)
Set role to the specified value in the currently-active mutator.
Definition: EndPointToSecGroupRSrc.hpp:69
modelgbp::epdr::EndPointToSecGroupRSrc & unsetRole()
Unset role in the currently-active mutator.
Definition: EndPointToSecGroupRSrc.hpp:81
boost::optional< opflex::modb::class_id_t > getTargetClass()
Get the value of targetClass if it has been set.
Definition: EndPointToSecGroupRSrc.hpp:100
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
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 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(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
static void unregisterListener(opflex::ofcore::OFFramework &framework, opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class.
Definition: EndPointToSecGroupRSrc.hpp:585
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 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
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 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
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
static void unregisterListener(opflex::modb::ObjectListener *listener)
Unregister a listener from updates to this class from the default framework instance.
Definition: EndPointToSecGroupRSrc.hpp:599
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< opflex::modb::URI > getTargetURI()
Get the value of targetURI if it has been set.
Definition: EndPointToSecGroupRSrc.hpp:111