测试嵌套消息和import功能
This commit is contained in:
@@ -7,7 +7,8 @@ import (
|
||||
"errors"
|
||||
|
||||
"google.golang.org/grpc"
|
||||
pb "tldemo/services/User"
|
||||
User "tldemo/services/User"
|
||||
Common "tldemo/services/Common"
|
||||
)
|
||||
|
||||
type UserAddress struct {
|
||||
@@ -18,16 +19,16 @@ type UserAddress struct {
|
||||
type UserData struct {
|
||||
Id int
|
||||
Name string
|
||||
Gender pb.GENDER_ENUM
|
||||
Gender Common.Gender
|
||||
Addresses [] *UserAddress
|
||||
}
|
||||
|
||||
type UserServer struct {
|
||||
pb.UnimplementedUserServiceServer
|
||||
User.UnimplementedUserServiceServer
|
||||
UserArray []*UserData
|
||||
}
|
||||
|
||||
func (s *UserServer) Register(ctx context.Context, in *pb.RegisterRequest) (*pb.RegisterResponse, error) {
|
||||
func (s *UserServer) Register(ctx context.Context, in *User.RegisterRequest) (*User.RegisterResponse, error) {
|
||||
userData := &UserData{Id:len(s.UserArray), Name:in.Name, Gender:in.Gender}
|
||||
userData.Addresses = make([]*UserAddress, 0)
|
||||
for i:=0; i<len(in.Address); i++ {
|
||||
@@ -38,11 +39,11 @@ func (s *UserServer) Register(ctx context.Context, in *pb.RegisterRequest) (*pb.
|
||||
|
||||
replyMessage := fmt.Sprintf("Hello %s, Your Id is %v", userData.Name, userData.Id)
|
||||
log.Printf("[Register User] %s", replyMessage)
|
||||
result := &pb.RegisterResponse{Id: uint64(userData.Id), Msg: replyMessage}
|
||||
result := &User.RegisterResponse{Id: uint64(userData.Id), Msg: replyMessage}
|
||||
return result, nil
|
||||
}
|
||||
|
||||
func (s *UserServer) Query(ctx context.Context, in *pb.QueryRequest) (*pb.QueryResponse, error) {
|
||||
func (s *UserServer) Query(ctx context.Context, in *User.QueryRequest) (*User.QueryResponse, error) {
|
||||
log.Printf("[Query User] %d", in.Id)
|
||||
|
||||
if(in.Id<0 || int(in.Id)>=len(s.UserArray)) {
|
||||
@@ -51,16 +52,15 @@ func (s *UserServer) Query(ctx context.Context, in *pb.QueryRequest) (*pb.QueryR
|
||||
|
||||
var userData = s.UserArray[int(in.Id)]
|
||||
|
||||
address := make([]*pb.Address, 0)
|
||||
for i:=0; i<len(userData.Addresses); i++ {
|
||||
address = append(address, &pb.Address{ Address: userData.Addresses[i].Address, PostalCode: userData.Addresses[i].PostalCode})
|
||||
}
|
||||
//address[0] = &pb.Address{ Address: "xxxx", PostalCode: "1234"}
|
||||
//address := make([]*User.RegisterRequest_Address, 0)
|
||||
//for i:=0; i<len(userData.Addresses); i++ {
|
||||
// address = append(address, &User.RegisterRequest_Address{ Address: userData.Addresses[i].Address, PostalCode: userData.Addresses[i].PostalCode})
|
||||
//}
|
||||
//address[0] = &User.Address{ Address: "xxxx", PostalCode: "1234"}
|
||||
|
||||
result := &pb.QueryResponse{
|
||||
result := &User.QueryResponse{
|
||||
Name: userData.Name,
|
||||
Gender: userData.Gender,
|
||||
Address : address,
|
||||
}
|
||||
return result, nil
|
||||
}
|
||||
@@ -69,6 +69,6 @@ func RegisterUserServer(s *grpc.Server) {
|
||||
userServer := &UserServer{}
|
||||
userServer.UserArray = make([]*UserData, 0)
|
||||
|
||||
pb.RegisterUserServiceServer(s, userServer)
|
||||
User.RegisterUserServiceServer(s, userServer)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user