mirror of
https://github.com/kevin-DL/services.git
synced 2026-01-18 21:55:08 +00:00
File diff suppressed because it is too large
Load Diff
@@ -6,6 +6,7 @@ package users
|
||||
import (
|
||||
fmt "fmt"
|
||||
proto "github.com/golang/protobuf/proto"
|
||||
_ "github.com/golang/protobuf/ptypes/wrappers"
|
||||
math "math"
|
||||
)
|
||||
|
||||
@@ -46,11 +47,13 @@ type UsersService interface {
|
||||
Read(ctx context.Context, in *ReadRequest, opts ...client.CallOption) (*ReadResponse, error)
|
||||
Update(ctx context.Context, in *UpdateRequest, opts ...client.CallOption) (*UpdateResponse, error)
|
||||
Delete(ctx context.Context, in *DeleteRequest, opts ...client.CallOption) (*DeleteResponse, error)
|
||||
Search(ctx context.Context, in *SearchRequest, opts ...client.CallOption) (*SearchResponse, error)
|
||||
UpdatePassword(ctx context.Context, in *UpdatePasswordRequest, opts ...client.CallOption) (*UpdatePasswordResponse, error)
|
||||
List(ctx context.Context, in *ListRequest, opts ...client.CallOption) (*ListResponse, error)
|
||||
// Login using email and password returns the users profile and a token
|
||||
Login(ctx context.Context, in *LoginRequest, opts ...client.CallOption) (*LoginResponse, error)
|
||||
// Logout expires all tokens for the user
|
||||
Logout(ctx context.Context, in *LogoutRequest, opts ...client.CallOption) (*LogoutResponse, error)
|
||||
ReadSession(ctx context.Context, in *ReadSessionRequest, opts ...client.CallOption) (*ReadSessionResponse, error)
|
||||
// Validate a token, each time a token is validated it extends its lifetime for another week
|
||||
Validate(ctx context.Context, in *ValidateRequest, opts ...client.CallOption) (*ValidateResponse, error)
|
||||
}
|
||||
|
||||
type usersService struct {
|
||||
@@ -105,19 +108,9 @@ func (c *usersService) Delete(ctx context.Context, in *DeleteRequest, opts ...cl
|
||||
return out, nil
|
||||
}
|
||||
|
||||
func (c *usersService) Search(ctx context.Context, in *SearchRequest, opts ...client.CallOption) (*SearchResponse, error) {
|
||||
req := c.c.NewRequest(c.name, "Users.Search", in)
|
||||
out := new(SearchResponse)
|
||||
err := c.c.Call(ctx, req, out, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return out, nil
|
||||
}
|
||||
|
||||
func (c *usersService) UpdatePassword(ctx context.Context, in *UpdatePasswordRequest, opts ...client.CallOption) (*UpdatePasswordResponse, error) {
|
||||
req := c.c.NewRequest(c.name, "Users.UpdatePassword", in)
|
||||
out := new(UpdatePasswordResponse)
|
||||
func (c *usersService) List(ctx context.Context, in *ListRequest, opts ...client.CallOption) (*ListResponse, error) {
|
||||
req := c.c.NewRequest(c.name, "Users.List", in)
|
||||
out := new(ListResponse)
|
||||
err := c.c.Call(ctx, req, out, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -145,9 +138,9 @@ func (c *usersService) Logout(ctx context.Context, in *LogoutRequest, opts ...cl
|
||||
return out, nil
|
||||
}
|
||||
|
||||
func (c *usersService) ReadSession(ctx context.Context, in *ReadSessionRequest, opts ...client.CallOption) (*ReadSessionResponse, error) {
|
||||
req := c.c.NewRequest(c.name, "Users.ReadSession", in)
|
||||
out := new(ReadSessionResponse)
|
||||
func (c *usersService) Validate(ctx context.Context, in *ValidateRequest, opts ...client.CallOption) (*ValidateResponse, error) {
|
||||
req := c.c.NewRequest(c.name, "Users.Validate", in)
|
||||
out := new(ValidateResponse)
|
||||
err := c.c.Call(ctx, req, out, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -162,11 +155,13 @@ type UsersHandler interface {
|
||||
Read(context.Context, *ReadRequest, *ReadResponse) error
|
||||
Update(context.Context, *UpdateRequest, *UpdateResponse) error
|
||||
Delete(context.Context, *DeleteRequest, *DeleteResponse) error
|
||||
Search(context.Context, *SearchRequest, *SearchResponse) error
|
||||
UpdatePassword(context.Context, *UpdatePasswordRequest, *UpdatePasswordResponse) error
|
||||
List(context.Context, *ListRequest, *ListResponse) error
|
||||
// Login using email and password returns the users profile and a token
|
||||
Login(context.Context, *LoginRequest, *LoginResponse) error
|
||||
// Logout expires all tokens for the user
|
||||
Logout(context.Context, *LogoutRequest, *LogoutResponse) error
|
||||
ReadSession(context.Context, *ReadSessionRequest, *ReadSessionResponse) error
|
||||
// Validate a token, each time a token is validated it extends its lifetime for another week
|
||||
Validate(context.Context, *ValidateRequest, *ValidateResponse) error
|
||||
}
|
||||
|
||||
func RegisterUsersHandler(s server.Server, hdlr UsersHandler, opts ...server.HandlerOption) error {
|
||||
@@ -175,11 +170,10 @@ func RegisterUsersHandler(s server.Server, hdlr UsersHandler, opts ...server.Han
|
||||
Read(ctx context.Context, in *ReadRequest, out *ReadResponse) error
|
||||
Update(ctx context.Context, in *UpdateRequest, out *UpdateResponse) error
|
||||
Delete(ctx context.Context, in *DeleteRequest, out *DeleteResponse) error
|
||||
Search(ctx context.Context, in *SearchRequest, out *SearchResponse) error
|
||||
UpdatePassword(ctx context.Context, in *UpdatePasswordRequest, out *UpdatePasswordResponse) error
|
||||
List(ctx context.Context, in *ListRequest, out *ListResponse) error
|
||||
Login(ctx context.Context, in *LoginRequest, out *LoginResponse) error
|
||||
Logout(ctx context.Context, in *LogoutRequest, out *LogoutResponse) error
|
||||
ReadSession(ctx context.Context, in *ReadSessionRequest, out *ReadSessionResponse) error
|
||||
Validate(ctx context.Context, in *ValidateRequest, out *ValidateResponse) error
|
||||
}
|
||||
type Users struct {
|
||||
users
|
||||
@@ -208,12 +202,8 @@ func (h *usersHandler) Delete(ctx context.Context, in *DeleteRequest, out *Delet
|
||||
return h.UsersHandler.Delete(ctx, in, out)
|
||||
}
|
||||
|
||||
func (h *usersHandler) Search(ctx context.Context, in *SearchRequest, out *SearchResponse) error {
|
||||
return h.UsersHandler.Search(ctx, in, out)
|
||||
}
|
||||
|
||||
func (h *usersHandler) UpdatePassword(ctx context.Context, in *UpdatePasswordRequest, out *UpdatePasswordResponse) error {
|
||||
return h.UsersHandler.UpdatePassword(ctx, in, out)
|
||||
func (h *usersHandler) List(ctx context.Context, in *ListRequest, out *ListResponse) error {
|
||||
return h.UsersHandler.List(ctx, in, out)
|
||||
}
|
||||
|
||||
func (h *usersHandler) Login(ctx context.Context, in *LoginRequest, out *LoginResponse) error {
|
||||
@@ -224,6 +214,6 @@ func (h *usersHandler) Logout(ctx context.Context, in *LogoutRequest, out *Logou
|
||||
return h.UsersHandler.Logout(ctx, in, out)
|
||||
}
|
||||
|
||||
func (h *usersHandler) ReadSession(ctx context.Context, in *ReadSessionRequest, out *ReadSessionResponse) error {
|
||||
return h.UsersHandler.ReadSession(ctx, in, out)
|
||||
func (h *usersHandler) Validate(ctx context.Context, in *ValidateRequest, out *ValidateResponse) error {
|
||||
return h.UsersHandler.Validate(ctx, in, out)
|
||||
}
|
||||
|
||||
@@ -2,112 +2,93 @@ syntax = "proto3";
|
||||
|
||||
package users;
|
||||
option go_package = "proto;users";
|
||||
import "google/protobuf/wrappers.proto";
|
||||
|
||||
service Users {
|
||||
rpc Create(CreateRequest) returns (CreateResponse) {}
|
||||
rpc Read(ReadRequest) returns (ReadResponse) {}
|
||||
rpc Update(UpdateRequest) returns (UpdateResponse) {}
|
||||
rpc Delete(DeleteRequest) returns (DeleteResponse) {}
|
||||
rpc Search(SearchRequest) returns (SearchResponse) {}
|
||||
rpc UpdatePassword(UpdatePasswordRequest) returns (UpdatePasswordResponse) {}
|
||||
rpc List(ListRequest) returns (ListResponse) {}
|
||||
|
||||
// Login using email and password returns the users profile and a token
|
||||
rpc Login(LoginRequest) returns (LoginResponse) {}
|
||||
// Logout expires all tokens for the user
|
||||
rpc Logout(LogoutRequest) returns (LogoutResponse) {}
|
||||
rpc ReadSession(ReadSessionRequest) returns(ReadSessionResponse) {}
|
||||
// Validate a token, each time a token is validated it extends its lifetime for another week
|
||||
rpc Validate(ValidateRequest) returns (ValidateResponse) {}
|
||||
}
|
||||
|
||||
message User {
|
||||
string id = 1; // uuid
|
||||
string username = 2; // alphanumeric user or org
|
||||
string email = 3;
|
||||
int64 created = 4; // unix
|
||||
int64 updated = 5; // unix
|
||||
}
|
||||
|
||||
message Session {
|
||||
string id = 1;
|
||||
string username = 2;
|
||||
string email = 3;
|
||||
int64 created = 4; // unix
|
||||
int64 expires = 5; // unix
|
||||
string id = 1;
|
||||
string first_name = 2;
|
||||
string last_name = 3;
|
||||
string email = 4;
|
||||
}
|
||||
|
||||
message CreateRequest {
|
||||
string id = 1; // uuid
|
||||
string username = 2; // alphanumeric user or org
|
||||
string first_name = 1;
|
||||
string last_name = 2;
|
||||
string email = 3;
|
||||
string password = 4;
|
||||
string password = 4;
|
||||
}
|
||||
|
||||
message CreateResponse {
|
||||
User user = 1;
|
||||
string token = 2;
|
||||
}
|
||||
|
||||
message ReadRequest {
|
||||
repeated string ids = 1;
|
||||
}
|
||||
|
||||
message ReadResponse {
|
||||
map<string,User> users = 1;
|
||||
}
|
||||
|
||||
message UpdateRequest {
|
||||
string id = 1;
|
||||
google.protobuf.StringValue first_name = 2;
|
||||
google.protobuf.StringValue last_name = 3;
|
||||
google.protobuf.StringValue email = 4;
|
||||
}
|
||||
|
||||
message UpdateResponse {
|
||||
User user = 1;
|
||||
}
|
||||
|
||||
message DeleteRequest {
|
||||
string id = 1;
|
||||
}
|
||||
|
||||
message DeleteResponse {
|
||||
}
|
||||
message DeleteResponse {}
|
||||
|
||||
message ReadRequest {
|
||||
string id = 1;
|
||||
}
|
||||
message ListRequest {}
|
||||
|
||||
message ReadResponse {
|
||||
User user = 1;
|
||||
}
|
||||
|
||||
message UpdateRequest {
|
||||
string id = 1; // uuid
|
||||
string username = 2; // alphanumeric user or org
|
||||
string email = 3;
|
||||
}
|
||||
|
||||
message UpdateResponse {
|
||||
}
|
||||
|
||||
message UpdatePasswordRequest {
|
||||
string userId = 1;
|
||||
string oldPassword = 2;
|
||||
string newPassword = 3;
|
||||
string confirm_password = 4;
|
||||
}
|
||||
|
||||
message UpdatePasswordResponse {
|
||||
}
|
||||
|
||||
message SearchRequest {
|
||||
string username = 1;
|
||||
string email = 2;
|
||||
int64 limit = 3;
|
||||
int64 offset = 4;
|
||||
}
|
||||
|
||||
message SearchResponse {
|
||||
message ListResponse {
|
||||
repeated User users = 1;
|
||||
}
|
||||
|
||||
message ReadSessionRequest {
|
||||
string sessionId = 1;
|
||||
}
|
||||
|
||||
message ReadSessionResponse {
|
||||
Session session = 1;
|
||||
}
|
||||
|
||||
message LoginRequest {
|
||||
string username = 1;
|
||||
string email = 2;
|
||||
string password = 3;
|
||||
string email = 1;
|
||||
string password = 2;
|
||||
}
|
||||
|
||||
message LoginResponse {
|
||||
Session session = 1;
|
||||
User user = 1;
|
||||
string token = 2;
|
||||
}
|
||||
|
||||
message LogoutRequest {
|
||||
string sessionId = 1;
|
||||
string id = 1;
|
||||
}
|
||||
|
||||
message LogoutResponse {
|
||||
message LogoutResponse {}
|
||||
|
||||
message ValidateRequest {
|
||||
string token = 1;
|
||||
}
|
||||
|
||||
message ValidateResponse {
|
||||
User user = 1;
|
||||
}
|
||||
Reference in New Issue
Block a user