aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorobscuren <geffobscura@gmail.com>2014-05-21 20:05:30 +0800
committerobscuren <geffobscura@gmail.com>2014-05-21 20:05:30 +0800
commitd6e398aba40d94380653731a6e36837d48d488ad (patch)
tree004e9660a337de2403e64339d4330538f8bc9023
parentf5852b47d1008e3b1752031900e8f4cdd982ee61 (diff)
parent1275e5bdc978d2f22ceb45a61f03d7873f069518 (diff)
downloadgo-tangerine-d6e398aba40d94380653731a6e36837d48d488ad.tar
go-tangerine-d6e398aba40d94380653731a6e36837d48d488ad.tar.gz
go-tangerine-d6e398aba40d94380653731a6e36837d48d488ad.tar.bz2
go-tangerine-d6e398aba40d94380653731a6e36837d48d488ad.tar.lz
go-tangerine-d6e398aba40d94380653731a6e36837d48d488ad.tar.xz
go-tangerine-d6e398aba40d94380653731a6e36837d48d488ad.tar.zst
go-tangerine-d6e398aba40d94380653731a6e36837d48d488ad.zip
Merge branch 'develop' of github.com-obscure:ethereum/eth-go into develop
-rw-r--r--ethrpc/packages.go60
1 files changed, 60 insertions, 0 deletions
diff --git a/ethrpc/packages.go b/ethrpc/packages.go
index 4ec2b4602..87cfc99b2 100644
--- a/ethrpc/packages.go
+++ b/ethrpc/packages.go
@@ -182,6 +182,66 @@ func (p *EthereumApi) GetStorageAt(args *GetStorageArgs, reply *string) error {
return nil
}
+type GetTxCountArgs struct {
+ Address string `json:"address"`
+}
+type GetTxCountRes struct {
+ Nonce int `json:"nonce"`
+}
+
+func (a *GetTxCountArgs) requirements() error {
+ if a.Address == "" {
+ return NewErrorResponse("GetTxCountAt requires an 'address' value as argument")
+ }
+ return nil
+}
+
+type GetPeerCountRes struct {
+ PeerCount int `json:"peerCount"`
+}
+
+func (p *EthereumApi) GetPeerCount(args *interface{}, reply *string) error {
+ *reply = NewSuccessRes(GetPeerCountRes{PeerCount: p.ethp.GetPeerCount()})
+ return nil
+}
+
+type GetListeningRes struct {
+ IsListening bool `json:"isListening"`
+}
+
+func (p *EthereumApi) GetIsListening(args *interface{}, reply *string) error {
+ *reply = NewSuccessRes(GetListeningRes{IsListening: p.ethp.GetIsListening()})
+ return nil
+}
+
+type GetCoinbaseRes struct {
+ Coinbase string `json:"coinbase"`
+}
+
+func (p *EthereumApi) GetCoinbase(args *interface{}, reply *string) error {
+ *reply = NewSuccessRes(GetCoinbaseRes{Coinbase: p.ethp.GetCoinBase()})
+ return nil
+}
+
+type GetMiningRes struct {
+ IsMining bool `json:"isMining"`
+}
+
+func (p *EthereumApi) GetIsMining(args *interface{}, reply *string) error {
+ *reply = NewSuccessRes(GetMiningRes{IsMining: p.ethp.GetIsMining()})
+ return nil
+}
+
+func (p *EthereumApi) GetTxCountAt(args *GetTxCountArgs, reply *string) error {
+ err := args.requirements()
+ if err != nil {
+ return err
+ }
+ state := p.ethp.GetTxCountAt(args.Address)
+ *reply = NewSuccessRes(GetTxCountRes{Nonce: state})
+ return nil
+}
+
type GetBalanceArgs struct {
Address string
}