From fd920609819a5b10d3d7c8d34fe4fa4214c7da22 Mon Sep 17 00:00:00 2001 From: Neale Ranns Date: Thu, 23 Nov 2017 12:15:00 -0800 Subject: VOM: Additions to allow uses to UT applications that use VOM - find object by key - compare objects Change-Id: I36ec8612be9482bcef7ceced2a59f7403f77b3e8 Signed-off-by: Neale Ranns --- src/vpp-api/vom/route.hpp | 34 ++++++++++++++++++++++++++++++++-- 1 file changed, 32 insertions(+), 2 deletions(-) (limited to 'src/vpp-api/vom/route.hpp') diff --git a/src/vpp-api/vom/route.hpp b/src/vpp-api/vom/route.hpp index 4f27ff1d20b..2fb855a13eb 100644 --- a/src/vpp-api/vom/route.hpp +++ b/src/vpp-api/vom/route.hpp @@ -106,9 +106,14 @@ public: path(const path& p); /** - * Convert the path into the VPP API representation + * Destructor */ - void to_vpp(vapi_payload_ip_add_del_route& payload) const; + ~path(); + + /** + * comparison operator + */ + bool operator==(const path& p) const; /** * Less than operator for set insertion @@ -195,6 +200,11 @@ public: */ ip_route(const prefix_t& prefix); + /** + * Construct a route with a path + */ + ip_route(const prefix_t& prefix, const path& p); + /** * Copy Construct */ @@ -205,11 +215,26 @@ public: */ ip_route(const route_domain& rd, const prefix_t& prefix); + /** + * Construct a route in the given route domain with a path + */ + ip_route(const route_domain& rd, const prefix_t& prefix, const path& p); + /** * Destructor */ ~ip_route(); + /** + * Get the route's key + */ + const key_t key() const; + + /** + * Comparison operator + */ + bool operator==(const ip_route& i) const; + /** * Return the matching 'singular instance' */ @@ -245,6 +270,11 @@ public: */ std::string to_string() const; + /** + * Return the matching 'singular instance' + */ + static std::shared_ptr find(const key_t& k); + private: /** * Class definition for listeners to OM events -- cgit 1.2.3-korg