From 8f1348b562eb0af8e610bbcff9abeb0fd8a3e43c Mon Sep 17 00:00:00 2001 From: D-Stacks Date: Mon, 10 Oct 2022 14:49:52 +0200 Subject: [PATCH] set-up client commnds --- .../rpc_get_accepting_block_of_tx.go | 20 ++++++++++++++++++ ...o => rpc_get_accepting_blockhash_of_tx.go} | 4 ++-- .../rpc_get_accepting_blockhashes_of_txs.go | 20 ++++++++++++++++++ .../rpc_get_accepting_blocks_of_txs.go | 20 ++++++++++++++++++ .../rpcclient/rpc_get_coin_supply copy.go | 20 ++++++++++++++++++ .../rpc_get_including_blockhash_of_tx.go | 20 ++++++++++++++++++ .../network/rpcclient/rpc_get_tx.go | 20 ++++++++++++++++++ .../rpcclient/rpc_get_tx_confirmations.go | 20 ++++++++++++++++++ .../network/rpcclient/rpc_get_txs.go | 21 +++++++++++++++++++ .../rpcclient/rpc_get_txs_confirmations.go | 21 +++++++++++++++++++ 10 files changed, 184 insertions(+), 2 deletions(-) create mode 100644 infrastructure/network/rpcclient/rpc_get_accepting_block_of_tx.go rename infrastructure/network/rpcclient/{rpc_get_accepting_block_hash_of_tx.go => rpc_get_accepting_blockhash_of_tx.go} (72%) create mode 100644 infrastructure/network/rpcclient/rpc_get_accepting_blockhashes_of_txs.go create mode 100644 infrastructure/network/rpcclient/rpc_get_accepting_blocks_of_txs.go create mode 100644 infrastructure/network/rpcclient/rpc_get_coin_supply copy.go create mode 100644 infrastructure/network/rpcclient/rpc_get_including_blockhash_of_tx.go create mode 100644 infrastructure/network/rpcclient/rpc_get_tx.go create mode 100644 infrastructure/network/rpcclient/rpc_get_tx_confirmations.go create mode 100644 infrastructure/network/rpcclient/rpc_get_txs.go create mode 100644 infrastructure/network/rpcclient/rpc_get_txs_confirmations.go diff --git a/infrastructure/network/rpcclient/rpc_get_accepting_block_of_tx.go b/infrastructure/network/rpcclient/rpc_get_accepting_block_of_tx.go new file mode 100644 index 000000000..4153ae0ce --- /dev/null +++ b/infrastructure/network/rpcclient/rpc_get_accepting_block_of_tx.go @@ -0,0 +1,20 @@ +package rpcclient + +import "github.com/kaspanet/kaspad/app/appmessage" + +// GetAcceptingBlockOfTx sends an RPC request respective to the function's name and returns the RPC server's response +func (c *RPCClient) GetAcceptingBlockOfTx(txID string) (*appmessage.GetAcceptingBlockOfTxResponseMessage, error) { + err := c.rpcRouter.outgoingRoute().Enqueue(appmessage.NewGetAcceptingBlockOfTxRequest(txID)) + if err != nil { + return nil, err + } + response, err := c.route(appmessage.CmdGetAcceptingBlockOfTxResponseMessage).DequeueWithTimeout(c.timeout) + if err != nil { + return nil, err + } + getAcceptingBlockOfTxResponse := response.(*appmessage.GetAcceptingBlockOfTxResponseMessage) + if getAcceptingBlockOfTxResponse.Error != nil { + return nil, c.convertRPCError(getAcceptingBlockOfTxResponse.Error) + } + return getAcceptingBlockOfTxResponse, nil +} diff --git a/infrastructure/network/rpcclient/rpc_get_accepting_block_hash_of_tx.go b/infrastructure/network/rpcclient/rpc_get_accepting_blockhash_of_tx.go similarity index 72% rename from infrastructure/network/rpcclient/rpc_get_accepting_block_hash_of_tx.go rename to infrastructure/network/rpcclient/rpc_get_accepting_blockhash_of_tx.go index 577764d60..70390b9e3 100644 --- a/infrastructure/network/rpcclient/rpc_get_accepting_block_hash_of_tx.go +++ b/infrastructure/network/rpcclient/rpc_get_accepting_blockhash_of_tx.go @@ -2,8 +2,8 @@ package rpcclient import "github.com/kaspanet/kaspad/app/appmessage" -// GetAcceptingBlockHashOfTx sends an RPC request respective to the function's name and returns the RPC server's response -func (c *RPCClient) GetAcceptingBlockHashOfTx(txID string) (*appmessage.GetAcceptingBlockHashOfTxResponseMessage, error) { +// GetAcceptingBlockHashOfTxs sends an RPC request respective to the function's name and returns the RPC server's response +func (c *RPCClient) GetAcceptingBlockHashOfTxs(txID string) (*appmessage.GetAcceptingBlockHashOfTxResponseMessage, error) { err := c.rpcRouter.outgoingRoute().Enqueue(appmessage.NewGetAcceptingBlockHashOfTxRequest(txID)) if err != nil { return nil, err diff --git a/infrastructure/network/rpcclient/rpc_get_accepting_blockhashes_of_txs.go b/infrastructure/network/rpcclient/rpc_get_accepting_blockhashes_of_txs.go new file mode 100644 index 000000000..b22ae811c --- /dev/null +++ b/infrastructure/network/rpcclient/rpc_get_accepting_blockhashes_of_txs.go @@ -0,0 +1,20 @@ +package rpcclient + +import "github.com/kaspanet/kaspad/app/appmessage" + +// GetAcceptingBlockHashesOfTxs sends an RPC request respective to the function's name and returns the RPC server's response +func (c *RPCClient) GetAcceptingBlockHashesOfTxs(txIDs []string) (*appmessage.GetAcceptingBlockHashesOfTxsResponseMessage, error) { + err := c.rpcRouter.outgoingRoute().Enqueue(appmessage.NewGetAcceptingBlockHashesOfTxsRequest(txIDs)) + if err != nil { + return nil, err + } + response, err := c.route(appmessage.CmdGetAcceptingBlockHashesOfTxsResponseMessage).DequeueWithTimeout(c.timeout) + if err != nil { + return nil, err + } + getAcceptingBlockHashesOfTxsResponse := response.(*appmessage.GetAcceptingBlockHashesOfTxsResponseMessage) + if getAcceptingBlockHashesOfTxsResponse.Error != nil { + return nil, c.convertRPCError(getAcceptingBlockHashesOfTxsResponse.Error) + } + return getAcceptingBlockHashesOfTxsResponse, nil +} diff --git a/infrastructure/network/rpcclient/rpc_get_accepting_blocks_of_txs.go b/infrastructure/network/rpcclient/rpc_get_accepting_blocks_of_txs.go new file mode 100644 index 000000000..5d3d74734 --- /dev/null +++ b/infrastructure/network/rpcclient/rpc_get_accepting_blocks_of_txs.go @@ -0,0 +1,20 @@ +package rpcclient + +import "github.com/kaspanet/kaspad/app/appmessage" + +// GetAcceptingBlocksTxs sends an RPC request respective to the function's name and returns the RPC server's response +func (c *RPCClient) GetAcceptingBlocksTxs(txIDs []string) (*appmessage.GetAcceptingBlocksOfTxsResponseMessage, error) { + err := c.rpcRouter.outgoingRoute().Enqueue(appmessage.NewGetAcceptingBlocksOfTxsRequest(txIDs)) + if err != nil { + return nil, err + } + response, err := c.route(appmessage.CmdGetAcceptingBlocksOfTxsResponseMessage).DequeueWithTimeout(c.timeout) + if err != nil { + return nil, err + } + getAcceptingBlocksOfTxsResponse := response.(*appmessage.GetAcceptingBlocksOfTxsResponseMessage) + if getAcceptingBlocksOfTxsResponse.Error != nil { + return nil, c.convertRPCError(getAcceptingBlocksOfTxsResponse.Error) + } + return getAcceptingBlocksOfTxsResponse, nil +} diff --git a/infrastructure/network/rpcclient/rpc_get_coin_supply copy.go b/infrastructure/network/rpcclient/rpc_get_coin_supply copy.go new file mode 100644 index 000000000..92b8f8c47 --- /dev/null +++ b/infrastructure/network/rpcclient/rpc_get_coin_supply copy.go @@ -0,0 +1,20 @@ +package rpcclient + +import "github.com/kaspanet/kaspad/app/appmessage" + +// GetCoinSupply sends an RPC request respective to the function's name and returns the RPC server's response +func (c *RPCClient) GetCoinSupply() (*appmessage.GetCoinSupplyResponseMessage, error) { + err := c.rpcRouter.outgoingRoute().Enqueue(appmessage.NewGetCoinSupplyRequestMessage()) + if err != nil { + return nil, err + } + response, err := c.route(appmessage.CmdGetCoinSupplyResponseMessage).DequeueWithTimeout(c.timeout) + if err != nil { + return nil, err + } + geCoinSupplyResponse := response.(*appmessage.GetCoinSupplyResponseMessage) + if geCoinSupplyResponse.Error != nil { + return nil, c.convertRPCError(geCoinSupplyResponse.Error) + } + return geCoinSupplyResponse, nil +} diff --git a/infrastructure/network/rpcclient/rpc_get_including_blockhash_of_tx.go b/infrastructure/network/rpcclient/rpc_get_including_blockhash_of_tx.go new file mode 100644 index 000000000..b6b8f34a3 --- /dev/null +++ b/infrastructure/network/rpcclient/rpc_get_including_blockhash_of_tx.go @@ -0,0 +1,20 @@ +package rpcclient + +import "github.com/kaspanet/kaspad/app/appmessage" + +// GetIncludingBlockHashOfTxs sends an RPC request respective to the function's name and returns the RPC server's response +func (c *RPCClient) GetIncludingBlockHashOfTxs(txID string) (*appmessage.GetIncludingBlockHashOfTxResponseMessage, error) { + err := c.rpcRouter.outgoingRoute().Enqueue(appmessage.NewGetIncludingBlockHashOfTxRequest(txID)) + if err != nil { + return nil, err + } + response, err := c.route(appmessage.CmdGetIncludingBlockHashOfTxResponseMessage).DequeueWithTimeout(c.timeout) + if err != nil { + return nil, err + } + getIncludingBlockHashOfTxResponse := response.(*appmessage.GetIncludingBlockHashOfTxResponseMessage) + if getIncludingBlockHashOfTxResponse.Error != nil { + return nil, c.convertRPCError(getIncludingBlockHashOfTxResponse.Error) + } + return getIncludingBlockHashOfTxResponse, nil +} diff --git a/infrastructure/network/rpcclient/rpc_get_tx.go b/infrastructure/network/rpcclient/rpc_get_tx.go new file mode 100644 index 000000000..9a80a8393 --- /dev/null +++ b/infrastructure/network/rpcclient/rpc_get_tx.go @@ -0,0 +1,20 @@ +package rpcclient + +import "github.com/kaspanet/kaspad/app/appmessage" + +// GetTx sends an RPC request respective to the function's name and returns the RPC server's response +func (c *RPCClient) GetTx(txID string) (*appmessage.GetTxResponseMessage, error) { + err := c.rpcRouter.outgoingRoute().Enqueue(appmessage.NewGetTxRequest(txID)) + if err != nil { + return nil, err + } + response, err := c.route(appmessage.CmdGetTxResponseMessage).DequeueWithTimeout(c.timeout) + if err != nil { + return nil, err + } + getTxResponse := response.(*appmessage.GetTxResponseMessage) + if getTxResponse.Error != nil { + return nil, c.convertRPCError(getTxResponse.Error) + } + return getTxResponse, nil +} diff --git a/infrastructure/network/rpcclient/rpc_get_tx_confirmations.go b/infrastructure/network/rpcclient/rpc_get_tx_confirmations.go new file mode 100644 index 000000000..6be7147ae --- /dev/null +++ b/infrastructure/network/rpcclient/rpc_get_tx_confirmations.go @@ -0,0 +1,20 @@ +package rpcclient + +import "github.com/kaspanet/kaspad/app/appmessage" + +// GetTx sends an RPC request respective to the function's name and returns the RPC server's response +func (c *RPCClient) GetTxConfirmations(txID string) (*appmessage.GetTxConfirmationsResponseMessage, error) { + err := c.rpcRouter.outgoingRoute().Enqueue(appmessage.NewGetTxConfirmationsRequest(txID)) + if err != nil { + return nil, err + } + response, err := c.route(appmessage.CmdGetTxConfirmationsResponseMessage).DequeueWithTimeout(c.timeout) + if err != nil { + return nil, err + } + getTxConfirmationsResponse := response.(*appmessage.GetTxConfirmationsResponseMessage) + if getTxConfirmationsResponse.Error != nil { + return nil, c.convertRPCError(getTxConfirmationsResponse.Error) + } + return getTxConfirmationsResponse, nil +} diff --git a/infrastructure/network/rpcclient/rpc_get_txs.go b/infrastructure/network/rpcclient/rpc_get_txs.go new file mode 100644 index 000000000..7c5ff01d7 --- /dev/null +++ b/infrastructure/network/rpcclient/rpc_get_txs.go @@ -0,0 +1,21 @@ +package rpcclient + +import "github.com/kaspanet/kaspad/app/appmessage" + +// GetTxs sends an RPC request respective to the function's name and returns the RPC server's response +func (c *RPCClient) GetTxs(txIDs []string) (*appmessage.GetTxsResponseMessage, error) { + err := c.rpcRouter.outgoingRoute().Enqueue(appmessage.NewGetTxsRequest(txIDs)) + if err != nil { + return nil, err + } + response, err := c.route(appmessage.CmdGetTxsResponseMessage).DequeueWithTimeout(c.timeout) + if err != nil { + return nil, err + } + getTxsResponse := response.(*appmessage.GetTxsResponseMessage) + if getTxsResponse.Error != nil { + return nil, c.convertRPCError(getTxsResponse.Error) + } + return getTxsResponse, nil +} + diff --git a/infrastructure/network/rpcclient/rpc_get_txs_confirmations.go b/infrastructure/network/rpcclient/rpc_get_txs_confirmations.go new file mode 100644 index 000000000..3905770b3 --- /dev/null +++ b/infrastructure/network/rpcclient/rpc_get_txs_confirmations.go @@ -0,0 +1,21 @@ +package rpcclient + +import "github.com/kaspanet/kaspad/app/appmessage" + +// GetTXsConfirmations sends an RPC request respective to the function's name and returns the RPC server's response +func (c *RPCClient) GetTxsConfirmations(txIDs []string) (*appmessage.GetTxsConfirmationsResponseMessage, error) { + err := c.rpcRouter.outgoingRoute().Enqueue(appmessage.NewGetTxsConfirmationsRequest(txIDs)) + if err != nil { + return nil, err + } + response, err := c.route(appmessage.CmdGetTxsConfirmationsResponseMessage).DequeueWithTimeout(c.timeout) + if err != nil { + return nil, err + } + getTxsConfirmationsResponse := response.(*appmessage.GetTxsConfirmationsResponseMessage) + if getTxsConfirmationsResponse.Error != nil { + return nil, c.convertRPCError(getTxsConfirmationsResponse.Error) + } + return getTxsConfirmationsResponse, nil +} +