diff --git a/include/wrapping_dap_chain_net_node_cli.h b/include/wrapping_dap_chain_net_node_cli.h index f07eeb78e2241d0a7cb87d5801b8c851604a8e07..8d027837fee7dd2f761ae180c70b6db1dc743d36 100644 --- a/include/wrapping_dap_chain_net_node_cli.h +++ b/include/wrapping_dap_chain_net_node_cli.h @@ -4,6 +4,9 @@ #include <Python.h> #include "dap_config.h" #include "dap_chain_node_cli.h" +#include "dap_chain_node_cli_cmd.h" +#include "wrapping_dap_chain_common_objects.h" +#include "wrapping_dap_chain_net_node.h" #ifdef __cplusplus extern "C"{ @@ -23,9 +26,12 @@ PyObject *DapChainNodeCliObject_new(PyTypeObject *type_object, PyObject *args, P PyObject *dap_chain_node_cli_cmd_item_create_py(PyObject *self, PyObject *args); PyObject *dap_chain_node_cli_set_reply_text_py(PyObject *self, PyObject *args); +PyObject *dap_chain_node_addr_get_by_alias_py(PyObject *self, PyObject *args); + static PyMethodDef DapChainNodeCliMethods[] = { {"cmdItemCreate", dap_chain_node_cli_cmd_item_create_py, METH_VARARGS, ""}, {"setReplyText", dap_chain_node_cli_set_reply_text_py, METH_VARARGS, ""}, + {"getByAlias", dap_chain_node_addr_get_by_alias_py, METH_VARARGS | METH_STATIC, ""}, {NULL, NULL, 0, NULL} }; diff --git a/src/wrapping_dap_chain_net_node_cli.c b/src/wrapping_dap_chain_net_node_cli.c index 709fcb5aff54508f6d7f15fb83975c99c79b63a8..ab3d31f502c5c24819fd8d9b678c6292027ed2c1 100644 --- a/src/wrapping_dap_chain_net_node_cli.c +++ b/src/wrapping_dap_chain_net_node_cli.c @@ -59,6 +59,16 @@ PyObject *dap_chain_node_cli_set_reply_text_py(PyObject *self, PyObject *args){ return PyLong_FromLong(0); } +PyObject *dap_chain_node_addr_get_by_alias_py(PyObject *self, PyObject *args){ + PyObject *chain_net; + const char *alias; + if (!PyArg_ParseTuple(args, "O|s", &chain_net, &alias)) + return NULL; + PyObject *obj_node_addr = _PyObject_New(&DapChainNodeAddrObject_DapChainNodeAddrObjectType); + ((PyDapChainNodeAddrObject*)obj_node_addr)->node_addr = dap_chain_node_addr_get_by_alias(((PyDapChainNetObject*)chain_net)->chain_net, alias); + return Py_BuildValue("O", obj_node_addr); +} + char **PyListToString(PyObject *list){ Py_ssize_t size = PyList_Size(list); char **res = calloc(sizeof(char**), (size_t)size);