aboutsummaryrefslogtreecommitdiffstats
path: root/rpc/api/api.go
diff options
context:
space:
mode:
Diffstat (limited to 'rpc/api/api.go')
-rw-r--r--rpc/api/api.go14
1 files changed, 13 insertions, 1 deletions
diff --git a/rpc/api/api.go b/rpc/api/api.go
index 93dc3058c..153c73f48 100644
--- a/rpc/api/api.go
+++ b/rpc/api/api.go
@@ -4,14 +4,26 @@ import "github.com/ethereum/go-ethereum/rpc/shared"
const (
// List with all API's which are offered over the IPC interface by default
- DefaultIpcApis = "eth"
+ DefaultIpcApis = "eth,web3"
+
+ EthApiName = "eth"
+ MergedApiName = "merged"
+ Web3ApiName = "web3"
)
// Ethereum RPC API interface
type EthereumApi interface {
+ // API identifier
+ Name() string
+
// Execute the given request and returns the response or an error
Execute(*shared.Request) (interface{}, error)
// List of supported RCP methods this API provides
Methods() []string
}
+
+// Merge multiple API's to a single API instance
+func Merge(apis ...EthereumApi) EthereumApi {
+ return newMergedApi(apis...)
+}