A bit of buffer metadata reshuffling to accommodate flow_id
[vpp.git] / src / vpp-api / vom / acl_binding_cmds.cpp
index 27d5043..8c33cd4 100644 (file)
  * limitations under the License.
  */
 
-#include "vom/acl_binding.hpp"
+#include "vom/acl_binding_cmds.hpp"
 
 DEFINE_VAPI_MSG_IDS_ACL_API_JSON;
 
 namespace VOM {
 namespace ACL {
+namespace binding_cmds {
 template <>
 rc_t
-l3_binding::bind_cmd::issue(connection& con)
+l3_bind_cmd::issue(connection& con)
 {
   msg_t req(con.ctx(), std::ref(*this));
 
@@ -38,9 +39,20 @@ l3_binding::bind_cmd::issue(connection& con)
   return rc_t::OK;
 }
 
+template <>
+std::string
+l3_bind_cmd::to_string() const
+{
+  std::ostringstream s;
+  s << "l3-acl-bind:[" << m_direction.to_string()
+    << " itf:" << m_itf.to_string() << " acl:" << m_acl.to_string() << "]";
+
+  return (s.str());
+}
+
 template <>
 rc_t
-l3_binding::unbind_cmd::issue(connection& con)
+l3_unbind_cmd::issue(connection& con)
 {
   msg_t req(con.ctx(), std::ref(*this));
 
@@ -57,9 +69,20 @@ l3_binding::unbind_cmd::issue(connection& con)
   return rc_t::OK;
 }
 
+template <>
+std::string
+l3_unbind_cmd::to_string() const
+{
+  std::ostringstream s;
+  s << "l3-acl-unbind:[" << m_direction.to_string()
+    << " itf:" << m_itf.to_string() << " acl:" << m_acl.to_string() << "]";
+
+  return (s.str());
+}
+
 template <>
 rc_t
-l3_binding::dump_cmd::issue(connection& con)
+l3_dump_cmd::issue(connection& con)
 {
   m_dump.reset(new msg_t(con.ctx(), std::ref(*this)));
 
@@ -73,16 +96,22 @@ l3_binding::dump_cmd::issue(connection& con)
   return rc_t::OK;
 }
 
+template <>
+std::string
+l3_dump_cmd::to_string() const
+{
+  return ("l3-acl-bind-dump");
+}
+
 template <>
 rc_t
-l2_binding::bind_cmd::issue(connection& con)
+l2_bind_cmd::issue(connection& con)
 {
   msg_t req(con.ctx(), std::ref(*this));
 
   auto& payload = req.get_request().get_payload();
   payload.sw_if_index = m_itf.value();
   payload.is_add = 1;
-  // payload.is_input = (m_direction == direction_t::INPUT ? 1 : 0);
   payload.acl_index = m_acl.value();
 
   VAPI_CALL(req.execute());
@@ -92,16 +121,26 @@ l2_binding::bind_cmd::issue(connection& con)
   return rc_t::OK;
 }
 
+template <>
+std::string
+l2_bind_cmd::to_string() const
+{
+  std::ostringstream s;
+  s << "l2-acl-bind:[" << m_direction.to_string()
+    << " itf:" << m_itf.to_string() << " acl:" << m_acl.to_string() << "]";
+
+  return (s.str());
+}
+
 template <>
 rc_t
-l2_binding::unbind_cmd::issue(connection& con)
+l2_unbind_cmd::issue(connection& con)
 {
   msg_t req(con.ctx(), std::ref(*this));
 
   auto& payload = req.get_request().get_payload();
   payload.sw_if_index = m_itf.value();
   payload.is_add = 0;
-  // payload.is_input = (m_direction == direction_t::INPUT ? 1 : 0);
   payload.acl_index = m_acl.value();
 
   VAPI_CALL(req.execute());
@@ -111,9 +150,20 @@ l2_binding::unbind_cmd::issue(connection& con)
   return rc_t::OK;
 }
 
+template <>
+std::string
+l2_unbind_cmd::to_string() const
+{
+  std::ostringstream s;
+  s << "l2-acl-unbind:[" << m_direction.to_string()
+    << " itf:" << m_itf.to_string() << " acl:" << m_acl.to_string() << "]";
+
+  return (s.str());
+}
+
 template <>
 rc_t
-l2_binding::dump_cmd::issue(connection& con)
+l2_dump_cmd::issue(connection& con)
 {
   m_dump.reset(new msg_t(con.ctx(), std::ref(*this)));
 
@@ -126,8 +176,17 @@ l2_binding::dump_cmd::issue(connection& con)
 
   return rc_t::OK;
 }
+
+template <>
+std::string
+l2_dump_cmd::to_string() const
+{
+  return ("l2-acl-bind-dump");
 }
-}
+
+}; // namespace binding_cmds
+}; // namespace ACL
+}; // namespace VOM
 
 /*
  * fd.io coding-style-patch-verification: ON