Browse Source

fix lint

pull/230/head
yedf2 4 years ago
parent
commit
ec72eed954
  1. 2
      conf.sample.yml
  2. 58
      dtmsvr/api_json_rpc_http.go
  3. 2
      dtmsvr/config/config.go
  4. 10
      dtmsvr/svr.go
  5. 3
      dtmsvr/trans_class.go

2
conf.sample.yml

@ -56,7 +56,7 @@
# HttpPort: 36789 # HttpPort: 36789
# GrpcPort: 36790 # GrpcPort: 36790
# JsonRpcHttp: 36791 # JSONRPC: 36791
### advanced options ### advanced options
# UpdateBranchAsyncGoroutineNum: 1 # num of async goroutine to update branch status # UpdateBranchAsyncGoroutineNum: 1 # num of async goroutine to update branch status

58
dtmsvr/api_json_rpc_http.go

@ -3,96 +3,96 @@ package dtmsvr
import ( import (
"encoding/json" "encoding/json"
"fmt" "fmt"
"net/http"
"github.com/dtm-labs/dtm/dtmcli" "github.com/dtm-labs/dtm/dtmcli"
"github.com/dtm-labs/dtm/dtmcli/logger" "github.com/dtm-labs/dtm/dtmcli/logger"
"github.com/gin-gonic/gin" "github.com/gin-gonic/gin"
"net/http"
) )
type jsonRpcHttpReq struct { type jsonRPCReq struct {
Method string `json:"method"` Method string `json:"method"`
Jsonrpc string `json:"jsonrpc"` Jsonrpc string `json:"jsonrpc"`
Params interface{} `json:"params"` Params interface{} `json:"params"`
Id string `json:"id"` ID string `json:"id"`
} }
func addJsonRpcHttpRouter(engine *gin.Engine) { func addJSONRPCRouter(engine *gin.Engine) {
engine.POST("/", dispatcher) engine.POST("/", dispatcher)
} }
func dispatcher(c *gin.Context) { func dispatcher(c *gin.Context) {
req := new(jsonRpcHttpReq) req := new(jsonRPCReq)
err := c.BindJSON(req) err := c.BindJSON(req)
logger.Infof("request:%s\n", req) logger.Infof("request:%s\n", req)
if err != nil { if err != nil {
c.JSON(http.StatusOK, gin.H{"id": req.Id, "result": nil, "error": map[string]interface{}{"code": -32700, "message": "Parse error"}}) c.JSON(http.StatusOK, gin.H{"id": req.ID, "result": nil, "error": map[string]interface{}{"code": -32700, "message": "Parse error"}})
return return
} }
if req.Method == "dtmserver.NewGid" { if req.Method == "dtmserver.NewGid" {
res, err := jsonRpcHttpNewGid() res := jsonRPCNewGid()
c.JSON(http.StatusOK, gin.H{"id": req.Id, "result": res, "error": err}) c.JSON(http.StatusOK, gin.H{"id": req.ID, "result": res, "error": err})
return return
} }
if req.Method == "dtmserver.Prepare" { if req.Method == "dtmserver.Prepare" {
res := jsonRpcHttpPrepare(req.Params) res := jsonRPCPrepare(req.Params)
c.JSON(http.StatusOK, gin.H{"id": req.Id, "result": res, "error": nil}) c.JSON(http.StatusOK, gin.H{"id": req.ID, "result": res, "error": nil})
return return
} }
if req.Method == "dtmserver.Submit" { if req.Method == "dtmserver.Submit" {
res := jsonRpcHttpSubmit(req.Params) res := jsonRPCSubmit(req.Params)
c.JSON(http.StatusOK, gin.H{"id": req.Id, "result": res, "error": nil}) c.JSON(http.StatusOK, gin.H{"id": req.ID, "result": res, "error": nil})
return return
} }
if req.Method == "dtmserver.Abort" { if req.Method == "dtmserver.Abort" {
res := jsonRpcHttpAbort(req.Params) res := jsonRPCAbort(req.Params)
c.JSON(http.StatusOK, gin.H{"id": req.Id, "result": res, "error": nil}) c.JSON(http.StatusOK, gin.H{"id": req.ID, "result": res, "error": nil})
return return
} }
if req.Method == "dtmserver.RegisterBranch" { if req.Method == "dtmserver.RegisterBranch" {
res := jsonRpcHttpRegisterBranch(req.Params) res := jsonRPCRegisterBranch(req.Params)
c.JSON(http.StatusOK, gin.H{"id": req.Id, "result": res, "error": nil}) c.JSON(http.StatusOK, gin.H{"id": req.ID, "result": res, "error": nil})
return return
} }
c.JSON(http.StatusOK, gin.H{"id": req.Id, "result": nil, "error": map[string]interface{}{"code": -32601, "message": "Method not found"}}) c.JSON(http.StatusOK, gin.H{"id": req.ID, "result": nil, "error": map[string]interface{}{"code": -32601, "message": "Method not found"}})
return
} }
func jsonRpcHttpNewGid() (interface{}, error) { func jsonRPCNewGid() interface{} {
return map[string]interface{}{"gid": GenGid(), "dtm_result": dtmcli.ResultSuccess}, nil return map[string]interface{}{"gid": GenGid(), "dtm_result": dtmcli.ResultSuccess}
} }
func jsonRpcHttpPrepare(params interface{}) interface{} { func jsonRPCPrepare(params interface{}) interface{} {
res := svcPrepare(TransFromJsonRpcHttpContext(params)) res := svcPrepare(TransFromJSONRPCContext(params))
if res == nil { if res == nil {
return map[string]string{"dtm_result": "SUCCESS"} return map[string]string{"dtm_result": "SUCCESS"}
} }
return map[string]string{"dtm_result": "FAILURE", "message": fmt.Sprintf("%v", res)} return map[string]string{"dtm_result": "FAILURE", "message": fmt.Sprintf("%v", res)}
} }
func jsonRpcHttpSubmit(params interface{}) interface{} { func jsonRPCSubmit(params interface{}) interface{} {
res := svcSubmit(TransFromJsonRpcHttpContext(params)) res := svcSubmit(TransFromJSONRPCContext(params))
if res == nil { if res == nil {
return map[string]string{"dtm_result": "SUCCESS"} return map[string]string{"dtm_result": "SUCCESS"}
} }
return map[string]string{"dtm_result": "FAILURE", "message": fmt.Sprintf("%v", res)} return map[string]string{"dtm_result": "FAILURE", "message": fmt.Sprintf("%v", res)}
} }
func jsonRpcHttpAbort(params interface{}) interface{} { func jsonRPCAbort(params interface{}) interface{} {
res := svcAbort(TransFromJsonRpcHttpContext(params)) res := svcAbort(TransFromJSONRPCContext(params))
if res == nil { if res == nil {
return map[string]string{"dtm_result": "SUCCESS"} return map[string]string{"dtm_result": "SUCCESS"}
} }
return map[string]string{"dtm_result": "FAILURE", "message": fmt.Sprintf("%v", res)} return map[string]string{"dtm_result": "FAILURE", "message": fmt.Sprintf("%v", res)}
} }
func jsonRpcHttpRegisterBranch(params interface{}) interface{} { func jsonRPCRegisterBranch(params interface{}) interface{} {
data := map[string]string{} data := map[string]string{}
paramsJson, _ := json.Marshal(params) paramsJSON, _ := json.Marshal(params)
err := json.Unmarshal(paramsJson, &data) err := json.Unmarshal(paramsJSON, &data)
if err != nil { if err != nil {
return map[string]string{"dtm_result": "FAILURE", "message": err.Error()} return map[string]string{"dtm_result": "FAILURE", "message": err.Error()}
} }

2
dtmsvr/config/config.go

@ -76,7 +76,7 @@ type configType struct {
RequestTimeout int64 `yaml:"RequestTimeout" default:"3"` RequestTimeout int64 `yaml:"RequestTimeout" default:"3"`
HTTPPort int64 `yaml:"HttpPort" default:"36789"` HTTPPort int64 `yaml:"HttpPort" default:"36789"`
GrpcPort int64 `yaml:"GrpcPort" default:"36790"` GrpcPort int64 `yaml:"GrpcPort" default:"36790"`
JsonRpcHttpPort int64 `yaml:"JsonRpcHttpPort" default:"36791"` JSONRPCPort int64 `yaml:"JSONRPCPort" default:"36791"`
MicroService MicroService `yaml:"MicroService"` MicroService MicroService `yaml:"MicroService"`
UpdateBranchSync int64 `yaml:"UpdateBranchSync"` UpdateBranchSync int64 `yaml:"UpdateBranchSync"`
UpdateBranchAsyncGoroutineNum int64 `yaml:"UpdateBranchAsyncGoroutineNum" default:"1"` UpdateBranchAsyncGoroutineNum int64 `yaml:"UpdateBranchAsyncGoroutineNum" default:"1"`

10
dtmsvr/svr.go

@ -68,12 +68,12 @@ func StartSvr() {
logger.FatalIfError(err) logger.FatalIfError(err)
// start json-rpc server // start json-rpc server
jsonRpcHttpApp := dtmutil.GetGinApp() jsonRPCApp := dtmutil.GetGinApp()
jsonRpcHttpApp = httpMetrics(jsonRpcHttpApp) jsonRPCApp = httpMetrics(jsonRPCApp)
addJsonRpcHttpRouter(jsonRpcHttpApp) addJSONRPCRouter(jsonRPCApp)
logger.Infof("dtmsvr listen at: %d", conf.JsonRpcHttpPort) logger.Infof("dtmsvr listen at: %d", conf.JSONRPCPort)
go func() { go func() {
err := jsonRpcHttpApp.Run(fmt.Sprintf(":%d", conf.JsonRpcHttpPort)) err := jsonRPCApp.Run(fmt.Sprintf(":%d", conf.JSONRPCPort))
if err != nil { if err != nil {
logger.Errorf("start server err: %v", err) logger.Errorf("start server err: %v", err)
} }

3
dtmsvr/trans_class.go

@ -85,7 +85,8 @@ func TransFromContext(c *gin.Context) *TransGlobal {
return &m return &m
} }
func TransFromJsonRpcHttpContext(params interface{}) *TransGlobal { // TransFromJSONRPCContext 1
func TransFromJSONRPCContext(params interface{}) *TransGlobal {
jsonStr, _ := json.Marshal(params) jsonStr, _ := json.Marshal(params)
m := TransGlobal{} m := TransGlobal{}
err := json.Unmarshal(jsonStr, &m) err := json.Unmarshal(jsonStr, &m)

Loading…
Cancel
Save