16 #ifndef __VOM_L2_EMULATION_H__ 17 #define __VOM_L2_EMULATION_H__ 58 const key_t&
key()
const;
69 std::shared_ptr<l2_emulation>
singular()
const;
79 static void dump(std::ostream& os);
84 static std::shared_ptr<l2_emulation>
find(
const key_t&
key);
94 virtual ~event_handler() =
default;
104 void handle_replay();
109 void show(std::ostream& os);
120 static event_handler m_evh;
130 static std::shared_ptr<l2_emulation> find_or_add(
const l2_emulation& temp);
157 const std::shared_ptr<interface> m_itf;
bool operator==(const l2_emulation &l) const
Comparison operator - for UT.
const std::string key_t
In the opflex world each entity is known by a URI which can be converted into a string.
std::shared_ptr< l2_emulation > singular() const
Return the 'singular instance' of the L2 config that matches this object.
l2_emulation(const interface &itf)
Construct a new object matching the desried state.
const key_t & key() const
Return the binding's key.
A Database to store the unique 'singular' instances of a single object type.
static void dump(std::ostream &os)
Dump all l2_emulations into the stream provided.
A Clas representing the binding of an L2 interface to a bridge-domain and the properties of that bind...
std::string to_string() const
convert to string format for debug purposes
~l2_emulation()
Destructor.
A representation of an interface in VPP.
Class definition for listeners to OM events.
inspect command handler Handler
dependency_t
There needs to be a strict order in which object types are read from VPP (at boot time) and replayed ...
The interface to writing objects into VPP OM.
A base class for all object_base in the VPP object_base-Model.
static std::shared_ptr< l2_emulation > find(const key_t &key)
Static function to find the bridge_domain in the model.
interface::key_t key_t
Key type for an L2 emulation in the singular DB.
The VPP Object Model (VOM) library.
std::string key_t
The key for interface's key.