add storage sqlite GetModule with save ineq
This commit is contained in:
@@ -2,9 +2,7 @@ package handler
|
||||
|
||||
import (
|
||||
"context"
|
||||
"io"
|
||||
"net/http"
|
||||
|
||||
"encoding/json"
|
||||
cmsstorage "go.unistack.org/cms-service/storage"
|
||||
"go.unistack.org/micro/v3"
|
||||
"go.unistack.org/micro/v3/errors"
|
||||
@@ -13,6 +11,10 @@ import (
|
||||
cligit "go.unistack.org/unistack-org/pkgdash/service/client_git"
|
||||
"go.unistack.org/unistack-org/pkgdash/storage"
|
||||
"google.golang.org/protobuf/encoding/protojson"
|
||||
"google.golang.org/protobuf/proto"
|
||||
"io"
|
||||
"net/http"
|
||||
"net/url"
|
||||
)
|
||||
|
||||
type Handler struct {
|
||||
@@ -156,7 +158,37 @@ func (h *Handler) GetModule(w http.ResponseWriter, r *http.Request) {
|
||||
logger := h.svc.Logger()
|
||||
logger.Debug(ctx, "Start GetModule")
|
||||
|
||||
//rsp := new(pb.GetModuleRsp)
|
||||
req := new(pb.GetModuleReq)
|
||||
if err := h.URLValuesToProto(r.URL.Query(), req); err != nil {
|
||||
logger.Errorf(ctx, "Required parameter missing: %v", err)
|
||||
h.writer.Response(ctx, w, err)
|
||||
return
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
func (h *Handler) URLValuesToProto(vals url.Values, msg proto.Message) error {
|
||||
params := make(map[string]interface{})
|
||||
var err error
|
||||
for k, v := range vals {
|
||||
if len(v) == 0 {
|
||||
continue
|
||||
}
|
||||
switch k {
|
||||
case "id":
|
||||
params[k] = v
|
||||
default:
|
||||
params[k] = v[0]
|
||||
}
|
||||
}
|
||||
b, err := json.Marshal(params)
|
||||
if err != nil {
|
||||
return NewUnmarshalError(err)
|
||||
}
|
||||
if err = h.Unmarshal(b, msg); err != nil {
|
||||
return NewUnmarshalError(err)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func NewHandler(svc micro.Service, w writer, client cligit.Client) *Handler {
|
||||
|
Reference in New Issue
Block a user