mirror of
https://github.com/taigrr/wasm-experiments
synced 2025-01-18 04:03:21 -08:00
Use custom for of grpc-go and unify client and server
This commit is contained in:
@@ -9,7 +9,7 @@ import (
|
||||
"google.golang.org/grpc/codes"
|
||||
"google.golang.org/grpc/status"
|
||||
|
||||
"github.com/johanbrandhorst/wasm-experiments/grpc/proto/server"
|
||||
web "github.com/johanbrandhorst/wasm-experiments/grpc/proto"
|
||||
)
|
||||
|
||||
// Backend should be used to implement the server interface
|
||||
@@ -18,9 +18,9 @@ type Backend struct {
|
||||
}
|
||||
|
||||
// Ensure struct implements interface
|
||||
var _ server.BackendServer = (*Backend)(nil)
|
||||
var _ web.BackendServer = (*Backend)(nil)
|
||||
|
||||
func (b Backend) GetUser(ctx context.Context, req *server.GetUserRequest) (*server.User, error) {
|
||||
func (b Backend) GetUser(ctx context.Context, req *web.GetUserRequest) (*web.User, error) {
|
||||
if req.GetUserId() != "1234" {
|
||||
st := status.New(codes.InvalidArgument, "invalid id")
|
||||
detSt, err := st.WithDetails(&errdetails.BadRequest{
|
||||
@@ -36,14 +36,14 @@ func (b Backend) GetUser(ctx context.Context, req *server.GetUserRequest) (*serv
|
||||
}
|
||||
return nil, st.Err()
|
||||
}
|
||||
return &server.User{
|
||||
return &web.User{
|
||||
Id: req.GetUserId(),
|
||||
}, nil
|
||||
}
|
||||
|
||||
func (b Backend) GetUsers(req *server.GetUsersRequest, srv server.Backend_GetUsersServer) error {
|
||||
func (b Backend) GetUsers(req *web.GetUsersRequest, srv web.Backend_GetUsersServer) error {
|
||||
for index := 0; index < int(req.GetNumUsers()); index++ {
|
||||
err := srv.Send(&server.User{
|
||||
err := srv.Send(&web.User{
|
||||
Id: strconv.Itoa(index),
|
||||
})
|
||||
if err != nil {
|
||||
|
||||
Reference in New Issue
Block a user