diff --git a/proxy/keystore/keystore_service.go b/proxy/keystore/keystore_service.go new file mode 100644 index 0000000..02716a6 --- /dev/null +++ b/proxy/keystore/keystore_service.go @@ -0,0 +1,76 @@ +package keystore + +import ( + "github.com/google/uuid" + "encoding/json" + "git.loafle.net/overflow/commons_go/model/timestamp" + "git.loafle.net/overflow/overflow_proxy_service/proxy" + "log" +) + +type KeyStoreService struct { + +} + + +type ApiKey struct { + Id json.Number `json:"id,Number,omitempty"` + Apikey string `json:"apiKey,omitempty"` + CreateDAte timestamp.Timestamp`json:"createDate,omitempty"` + HostName string `json:"hostName,omitempty"` +} + +func(k *KeyStoreService)CreateKey() (string,error) { + uu, err := uuid.NewUUID(); + + if err != nil { + return "", err + } + + return uu.String(), nil +} + +func(k *KeyStoreService)SaveApikey(key *ApiKey) (string, error) { + + + bytes, err := json.Marshal(key) + + if err != nil { + return "", err + } + + m := make(map[string]string) + + m["com.loafle.overflow.keystore.model.Apikey"] = string(bytes) + + out := proxy.InvokeDB("apiKey", "create", m) + + log.Print(out) + + return "", nil + +} + +func(k *KeyStoreService)CheckApikey(apikey string) (bool, error) { + + ak := ApiKey{ + Apikey:apikey, + } + + bytes, err := json.Marshal(ak) + + if err != nil { + return false, err + } + + m := make(map[string]string) + + m["com.loafle.overflow.keystore.model.Apikey"] = string(bytes) + + out := proxy.InvokeDB("apiKey", "findByApiKey", m) + + log.Print(out) + + return true, nil + +} \ No newline at end of file diff --git a/proxy/keystore/keystore_service_test.go b/proxy/keystore/keystore_service_test.go new file mode 100644 index 0000000..918d979 --- /dev/null +++ b/proxy/keystore/keystore_service_test.go @@ -0,0 +1 @@ +package keystore