summaryrefslogtreecommitdiffstats
path: root/src/rpc-server/src/commands
diff options
context:
space:
mode:
authorimarom <imarom@cisco.com>2015-08-18 13:22:53 +0300
committerimarom <imarom@cisco.com>2015-08-18 13:22:53 +0300
commit65b3e045334ce93162fadc85ea241b8b7667482d (patch)
tree3a42b818455da4a2ce81fa9456f450c4dc83ba81 /src/rpc-server/src/commands
parentf88f9364a3a608bd60cf797e36b371cbc217336e (diff)
draft
Diffstat (limited to 'src/rpc-server/src/commands')
-rw-r--r--src/rpc-server/src/commands/trex_rpc_cmd_general.cpp47
-rw-r--r--src/rpc-server/src/commands/trex_rpc_cmds.h29
2 files changed, 76 insertions, 0 deletions
diff --git a/src/rpc-server/src/commands/trex_rpc_cmd_general.cpp b/src/rpc-server/src/commands/trex_rpc_cmd_general.cpp
new file mode 100644
index 00000000..2be4a76f
--- /dev/null
+++ b/src/rpc-server/src/commands/trex_rpc_cmd_general.cpp
@@ -0,0 +1,47 @@
+/*
+ Itay Marom
+ Cisco Systems, Inc.
+*/
+
+/*
+Copyright (c) 2015-2015 Cisco Systems, Inc.
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*/
+#include "trex_rpc_cmds.h"
+#include <../linux_dpdk/version.h>
+
+using namespace std;
+
+/**
+ * get status
+ *
+ */
+TrexRpcCommand::rpc_cmd_rc_e
+TrexRpcCmdGetStatus::_run(const Json::Value &params, Json::Value &result) {
+
+ /* validate count */
+ if (params.size() != 0) {
+ return (TrexRpcCommand::RPC_CMD_PARAM_COUNT_ERR);
+ }
+
+ Json::Value &section = result["result"];
+
+ section["general"]["version"] = VERSION_BUILD_NUM;
+ section["general"]["build_date"] = get_build_date();
+ section["general"]["build_time"] = get_build_time();
+ section["general"]["version_user"] = VERSION_USER;
+
+ return (RPC_CMD_OK);
+}
+
diff --git a/src/rpc-server/src/commands/trex_rpc_cmds.h b/src/rpc-server/src/commands/trex_rpc_cmds.h
index 44b72c4c..0778b75d 100644
--- a/src/rpc-server/src/commands/trex_rpc_cmds.h
+++ b/src/rpc-server/src/commands/trex_rpc_cmds.h
@@ -28,6 +28,11 @@ limitations under the License.
/* all the RPC commands decl. goes here */
/******************* test section ************/
+
+/**
+ * add
+ *
+ */
class TrexRpcCmdTestAdd : public TrexRpcCommand {
public:
TrexRpcCmdTestAdd() : TrexRpcCommand("rpc_test_add") {}
@@ -35,6 +40,10 @@ protected:
virtual rpc_cmd_rc_e _run(const Json::Value &params, Json::Value &result);
};
+/**
+ * sub
+ *
+ */
class TrexRpcCmdTestSub : public TrexRpcCommand {
public:
TrexRpcCmdTestSub() : TrexRpcCommand("rpc_test_sub") {} ;
@@ -42,6 +51,10 @@ protected:
virtual rpc_cmd_rc_e _run(const Json::Value &params, Json::Value &result);
};
+/**
+ * ping
+ *
+ */
class TrexRpcCmdPing : public TrexRpcCommand {
public:
TrexRpcCmdPing() : TrexRpcCommand("rpc_ping") {};
@@ -49,6 +62,10 @@ protected:
virtual rpc_cmd_rc_e _run(const Json::Value &params, Json::Value &result);
};
+/**
+ * get all registered commands
+ *
+ */
class TrexRpcCmdGetReg : public TrexRpcCommand {
public:
TrexRpcCmdGetReg() : TrexRpcCommand("rpc_get_reg_cmds") {};
@@ -56,5 +73,17 @@ protected:
virtual rpc_cmd_rc_e _run(const Json::Value &params, Json::Value &result);
};
+/**
+ * get status
+ *
+ */
+class TrexRpcCmdGetStatus : public TrexRpcCommand {
+public:
+ TrexRpcCmdGetStatus() : TrexRpcCommand("rpc_get_status") {};
+protected:
+ virtual rpc_cmd_rc_e _run(const Json::Value &params, Json::Value &result);
+};
+
+
/**************** test section end *************/
#endif /* __TREX_RPC_CMD_H__ */