aboutsummaryrefslogtreecommitdiffstats
path: root/rpc/shared
diff options
context:
space:
mode:
Diffstat (limited to 'rpc/shared')
-rw-r--r--rpc/shared/types.go12
1 files changed, 12 insertions, 0 deletions
diff --git a/rpc/shared/types.go b/rpc/shared/types.go
index 6a29fa88e..dd38a4559 100644
--- a/rpc/shared/types.go
+++ b/rpc/shared/types.go
@@ -42,6 +42,18 @@ type ErrorObject struct {
// Data interface{} `json:"data"`
}
+// Create RPC error response, this allows for custom error codes
+func NewRpcErrorResponse(id interface{}, jsonrpcver string, errCode int, err error) *interface{} {
+ var response interface{}
+
+ jsonerr := &ErrorObject{errCode, err.Error()}
+ response = ErrorResponse{Jsonrpc: jsonrpcver, Id: id, Error: jsonerr}
+
+ glog.V(logger.Detail).Infof("Generated error response: %s", response)
+ return &response
+}
+
+// Create RPC response
func NewRpcResponse(id interface{}, jsonrpcver string, reply interface{}, err error) *interface{} {
var response interface{}