diff --git a/proxy/member_service.go b/proxy/member_service.go index ebf0f4f..a95f100 100644 --- a/proxy/member_service.go +++ b/proxy/member_service.go @@ -1,41 +1,82 @@ package proxy -import "log" +import ( + "log" + "encoding/json" +) type MemberService struct { - Email string `json:"email"` - PwSalt string `json:"pwSalt"` - Name string `json:"name"` - Company string `json:"company"` - Phone string `json:"phone"` + Email string `json:"email"` + PwSalt string `json:"pwSalt"` + Digest string `json:"digest"` + Name string `json:"name"` + Company string `json:"company"` + Phone string `json:"phone"` } +var TARGET_DAO = "member" + func NewMember() *MemberService { m := MemberService{} return &m } +func (m *MemberService) getMemberMap() (map[string]string) { + memMap := make(map[string]string) + + str, err := json.Marshal(m) + + if err != nil { + log.Fatal("Json Marshal Error: ", err) + } + + memMap["com.loafle.overflow.member.model.Member"] = string(str) + + return memMap +} + func (m *MemberService) Regist() (string){ log.Println("Call Regist", m.Email, m.PwSalt) // Todo Call DB Gateway - return "" + m.Digest = "dddddddd" + + memMap := m.getMemberMap() + + re := invokeDB(TARGET_DAO, "create", memMap) + + return re } func (m *MemberService) Read() (string){ log.Println("Call Read", m.Email) // Todo Call DB Gateway - return "" + m.Digest = "read" + memMap := m.getMemberMap() + + re := invokeDB(TARGET_DAO, "find", memMap) + + return re } func (m *MemberService) Modify() (string){ log.Println("Call Modify", m.Email, "::", m.PwSalt) // Todo Call DB Gateway - return "" + m.Digest = "read" + memMap := m.getMemberMap() + + re := invokeDB(TARGET_DAO, "update", memMap) + + return re } func (m *MemberService) Remove() (string){ log.Println("Call Remove", m.Email) // Todo Call DB Gateway - return "" + m.Digest = "read" + memMap := m.getMemberMap() + + re := invokeDB(TARGET_DAO, "delete", memMap) + + return re } diff --git a/proxy/service.go b/proxy/service.go new file mode 100644 index 0000000..1d1b106 --- /dev/null +++ b/proxy/service.go @@ -0,0 +1,32 @@ +package proxy + +import ( + "log" + pb "loafle.com/overflow/overflow_api_db/build/golang" + "google.golang.org/grpc" + "golang.org/x/net/context" +) + +func invokeDB(targetDb, methodName string, param map[string]string) (string) { + + in := &pb.DBInput{} + in.TargetDao = targetDb + in.Method = methodName + in.Param = param + + conn, err := grpc.Dial("192.168.1.105:50006", grpc.WithInsecure()) + + if err != nil { + log.Fatal("Rpc Error: ", err) + } + defer conn.Close() + + client := pb.NewDBClient(conn) + out, err := client.Exec(context.Background(), in) + if err != nil { + log.Fatal("Rpc Client Error: ", err) + } + log.Print(out) + + return out.Result +} \ No newline at end of file