Merge branch 'master' of sso://user/ahmetb/microservices-demo into createCartService

This commit is contained in:
Simon Zeltser 2018-06-21 11:22:43 -07:00
commit 238197008c
14 changed files with 667 additions and 701 deletions

BIN
.DS_Store vendored

Binary file not shown.

4
.gitignore vendored Normal file
View file

@ -0,0 +1,4 @@
.DS_Store
*.pyc
*.swp
*~

View file

@ -119,7 +119,7 @@ message Address {
service CurrencyService {
rpc GetSupportedCurrencies(Empty) returns (GetSupportedCurrenciesResponse) {}
rpc Convert(ConversionRequest) returns (ConversionResponse) {}
rpc Convert(CurrencyConversionRequest) returns (Money) {}
}
@ -141,17 +141,13 @@ message GetSupportedCurrenciesResponse {
repeated string currency_codes = 1;
}
message ConversionRequest {
message CurrencyConversionRequest {
Money from = 1;
// The 3-letter currency code defined in ISO 4217.
string to_code = 2;
}
message ConversionResponse {
Money result = 1;
}
// -------------Payment service-----------------
service PaymentService {

BIN
src/.DS_Store vendored

Binary file not shown.

View file

@ -35,7 +35,7 @@ func (m *CartItem) Reset() { *m = CartItem{} }
func (m *CartItem) String() string { return proto.CompactTextString(m) }
func (*CartItem) ProtoMessage() {}
func (*CartItem) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{0}
return fileDescriptor_demo_40506d781b7ed975, []int{0}
}
func (m *CartItem) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CartItem.Unmarshal(m, b)
@ -81,7 +81,7 @@ func (m *AddItemRequest) Reset() { *m = AddItemRequest{} }
func (m *AddItemRequest) String() string { return proto.CompactTextString(m) }
func (*AddItemRequest) ProtoMessage() {}
func (*AddItemRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{1}
return fileDescriptor_demo_40506d781b7ed975, []int{1}
}
func (m *AddItemRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_AddItemRequest.Unmarshal(m, b)
@ -126,7 +126,7 @@ func (m *EmptyCartRequest) Reset() { *m = EmptyCartRequest{} }
func (m *EmptyCartRequest) String() string { return proto.CompactTextString(m) }
func (*EmptyCartRequest) ProtoMessage() {}
func (*EmptyCartRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{2}
return fileDescriptor_demo_40506d781b7ed975, []int{2}
}
func (m *EmptyCartRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_EmptyCartRequest.Unmarshal(m, b)
@ -164,7 +164,7 @@ func (m *GetCartRequest) Reset() { *m = GetCartRequest{} }
func (m *GetCartRequest) String() string { return proto.CompactTextString(m) }
func (*GetCartRequest) ProtoMessage() {}
func (*GetCartRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{3}
return fileDescriptor_demo_40506d781b7ed975, []int{3}
}
func (m *GetCartRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetCartRequest.Unmarshal(m, b)
@ -203,7 +203,7 @@ func (m *Cart) Reset() { *m = Cart{} }
func (m *Cart) String() string { return proto.CompactTextString(m) }
func (*Cart) ProtoMessage() {}
func (*Cart) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{4}
return fileDescriptor_demo_40506d781b7ed975, []int{4}
}
func (m *Cart) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Cart.Unmarshal(m, b)
@ -247,7 +247,7 @@ func (m *Empty) Reset() { *m = Empty{} }
func (m *Empty) String() string { return proto.CompactTextString(m) }
func (*Empty) ProtoMessage() {}
func (*Empty) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{5}
return fileDescriptor_demo_40506d781b7ed975, []int{5}
}
func (m *Empty) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Empty.Unmarshal(m, b)
@ -279,7 +279,7 @@ func (m *ListRecommendationsRequest) Reset() { *m = ListRecommendationsR
func (m *ListRecommendationsRequest) String() string { return proto.CompactTextString(m) }
func (*ListRecommendationsRequest) ProtoMessage() {}
func (*ListRecommendationsRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{6}
return fileDescriptor_demo_40506d781b7ed975, []int{6}
}
func (m *ListRecommendationsRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListRecommendationsRequest.Unmarshal(m, b)
@ -324,7 +324,7 @@ func (m *ListRecommendationsResponse) Reset() { *m = ListRecommendations
func (m *ListRecommendationsResponse) String() string { return proto.CompactTextString(m) }
func (*ListRecommendationsResponse) ProtoMessage() {}
func (*ListRecommendationsResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{7}
return fileDescriptor_demo_40506d781b7ed975, []int{7}
}
func (m *ListRecommendationsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListRecommendationsResponse.Unmarshal(m, b)
@ -366,7 +366,7 @@ func (m *Product) Reset() { *m = Product{} }
func (m *Product) String() string { return proto.CompactTextString(m) }
func (*Product) ProtoMessage() {}
func (*Product) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{8}
return fileDescriptor_demo_40506d781b7ed975, []int{8}
}
func (m *Product) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Product.Unmarshal(m, b)
@ -432,7 +432,7 @@ func (m *ListProductsResponse) Reset() { *m = ListProductsResponse{} }
func (m *ListProductsResponse) String() string { return proto.CompactTextString(m) }
func (*ListProductsResponse) ProtoMessage() {}
func (*ListProductsResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{9}
return fileDescriptor_demo_40506d781b7ed975, []int{9}
}
func (m *ListProductsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListProductsResponse.Unmarshal(m, b)
@ -470,7 +470,7 @@ func (m *GetProductRequest) Reset() { *m = GetProductRequest{} }
func (m *GetProductRequest) String() string { return proto.CompactTextString(m) }
func (*GetProductRequest) ProtoMessage() {}
func (*GetProductRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{10}
return fileDescriptor_demo_40506d781b7ed975, []int{10}
}
func (m *GetProductRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetProductRequest.Unmarshal(m, b)
@ -508,7 +508,7 @@ func (m *SearchProductsRequest) Reset() { *m = SearchProductsRequest{} }
func (m *SearchProductsRequest) String() string { return proto.CompactTextString(m) }
func (*SearchProductsRequest) ProtoMessage() {}
func (*SearchProductsRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{11}
return fileDescriptor_demo_40506d781b7ed975, []int{11}
}
func (m *SearchProductsRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SearchProductsRequest.Unmarshal(m, b)
@ -546,7 +546,7 @@ func (m *SearchProductsResponse) Reset() { *m = SearchProductsResponse{}
func (m *SearchProductsResponse) String() string { return proto.CompactTextString(m) }
func (*SearchProductsResponse) ProtoMessage() {}
func (*SearchProductsResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{12}
return fileDescriptor_demo_40506d781b7ed975, []int{12}
}
func (m *SearchProductsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SearchProductsResponse.Unmarshal(m, b)
@ -585,7 +585,7 @@ func (m *GetQuoteRequest) Reset() { *m = GetQuoteRequest{} }
func (m *GetQuoteRequest) String() string { return proto.CompactTextString(m) }
func (*GetQuoteRequest) ProtoMessage() {}
func (*GetQuoteRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{13}
return fileDescriptor_demo_40506d781b7ed975, []int{13}
}
func (m *GetQuoteRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetQuoteRequest.Unmarshal(m, b)
@ -630,7 +630,7 @@ func (m *GetQuoteResponse) Reset() { *m = GetQuoteResponse{} }
func (m *GetQuoteResponse) String() string { return proto.CompactTextString(m) }
func (*GetQuoteResponse) ProtoMessage() {}
func (*GetQuoteResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{14}
return fileDescriptor_demo_40506d781b7ed975, []int{14}
}
func (m *GetQuoteResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetQuoteResponse.Unmarshal(m, b)
@ -669,7 +669,7 @@ func (m *ShipOrderRequest) Reset() { *m = ShipOrderRequest{} }
func (m *ShipOrderRequest) String() string { return proto.CompactTextString(m) }
func (*ShipOrderRequest) ProtoMessage() {}
func (*ShipOrderRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{15}
return fileDescriptor_demo_40506d781b7ed975, []int{15}
}
func (m *ShipOrderRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ShipOrderRequest.Unmarshal(m, b)
@ -714,7 +714,7 @@ func (m *ShipOrderResponse) Reset() { *m = ShipOrderResponse{} }
func (m *ShipOrderResponse) String() string { return proto.CompactTextString(m) }
func (*ShipOrderResponse) ProtoMessage() {}
func (*ShipOrderResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{16}
return fileDescriptor_demo_40506d781b7ed975, []int{16}
}
func (m *ShipOrderResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ShipOrderResponse.Unmarshal(m, b)
@ -756,7 +756,7 @@ func (m *Address) Reset() { *m = Address{} }
func (m *Address) String() string { return proto.CompactTextString(m) }
func (*Address) ProtoMessage() {}
func (*Address) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{17}
return fileDescriptor_demo_40506d781b7ed975, []int{17}
}
func (m *Address) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Address.Unmarshal(m, b)
@ -825,7 +825,7 @@ func (m *MoneyAmount) Reset() { *m = MoneyAmount{} }
func (m *MoneyAmount) String() string { return proto.CompactTextString(m) }
func (*MoneyAmount) ProtoMessage() {}
func (*MoneyAmount) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{18}
return fileDescriptor_demo_40506d781b7ed975, []int{18}
}
func (m *MoneyAmount) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MoneyAmount.Unmarshal(m, b)
@ -872,7 +872,7 @@ func (m *Money) Reset() { *m = Money{} }
func (m *Money) String() string { return proto.CompactTextString(m) }
func (*Money) ProtoMessage() {}
func (*Money) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{19}
return fileDescriptor_demo_40506d781b7ed975, []int{19}
}
func (m *Money) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Money.Unmarshal(m, b)
@ -918,7 +918,7 @@ func (m *GetSupportedCurrenciesResponse) Reset() { *m = GetSupportedCurr
func (m *GetSupportedCurrenciesResponse) String() string { return proto.CompactTextString(m) }
func (*GetSupportedCurrenciesResponse) ProtoMessage() {}
func (*GetSupportedCurrenciesResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{20}
return fileDescriptor_demo_40506d781b7ed975, []int{20}
}
func (m *GetSupportedCurrenciesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetSupportedCurrenciesResponse.Unmarshal(m, b)
@ -945,7 +945,7 @@ func (m *GetSupportedCurrenciesResponse) GetCurrencyCodes() []string {
return nil
}
type ConversionRequest struct {
type CurrencyConversionRequest struct {
From *Money `protobuf:"bytes,1,opt,name=from" json:"from,omitempty"`
// The 3-letter currency code defined in ISO 4217.
ToCode string `protobuf:"bytes,2,opt,name=to_code,json=toCode" json:"to_code,omitempty"`
@ -954,82 +954,44 @@ type ConversionRequest struct {
XXX_sizecache int32 `json:"-"`
}
func (m *ConversionRequest) Reset() { *m = ConversionRequest{} }
func (m *ConversionRequest) String() string { return proto.CompactTextString(m) }
func (*ConversionRequest) ProtoMessage() {}
func (*ConversionRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{21}
func (m *CurrencyConversionRequest) Reset() { *m = CurrencyConversionRequest{} }
func (m *CurrencyConversionRequest) String() string { return proto.CompactTextString(m) }
func (*CurrencyConversionRequest) ProtoMessage() {}
func (*CurrencyConversionRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_40506d781b7ed975, []int{21}
}
func (m *ConversionRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ConversionRequest.Unmarshal(m, b)
func (m *CurrencyConversionRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CurrencyConversionRequest.Unmarshal(m, b)
}
func (m *ConversionRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ConversionRequest.Marshal(b, m, deterministic)
func (m *CurrencyConversionRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_CurrencyConversionRequest.Marshal(b, m, deterministic)
}
func (dst *ConversionRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_ConversionRequest.Merge(dst, src)
func (dst *CurrencyConversionRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_CurrencyConversionRequest.Merge(dst, src)
}
func (m *ConversionRequest) XXX_Size() int {
return xxx_messageInfo_ConversionRequest.Size(m)
func (m *CurrencyConversionRequest) XXX_Size() int {
return xxx_messageInfo_CurrencyConversionRequest.Size(m)
}
func (m *ConversionRequest) XXX_DiscardUnknown() {
xxx_messageInfo_ConversionRequest.DiscardUnknown(m)
func (m *CurrencyConversionRequest) XXX_DiscardUnknown() {
xxx_messageInfo_CurrencyConversionRequest.DiscardUnknown(m)
}
var xxx_messageInfo_ConversionRequest proto.InternalMessageInfo
var xxx_messageInfo_CurrencyConversionRequest proto.InternalMessageInfo
func (m *ConversionRequest) GetFrom() *Money {
func (m *CurrencyConversionRequest) GetFrom() *Money {
if m != nil {
return m.From
}
return nil
}
func (m *ConversionRequest) GetToCode() string {
func (m *CurrencyConversionRequest) GetToCode() string {
if m != nil {
return m.ToCode
}
return ""
}
type ConversionResponse struct {
Result *Money `protobuf:"bytes,1,opt,name=result" json:"result,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ConversionResponse) Reset() { *m = ConversionResponse{} }
func (m *ConversionResponse) String() string { return proto.CompactTextString(m) }
func (*ConversionResponse) ProtoMessage() {}
func (*ConversionResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{22}
}
func (m *ConversionResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ConversionResponse.Unmarshal(m, b)
}
func (m *ConversionResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ConversionResponse.Marshal(b, m, deterministic)
}
func (dst *ConversionResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_ConversionResponse.Merge(dst, src)
}
func (m *ConversionResponse) XXX_Size() int {
return xxx_messageInfo_ConversionResponse.Size(m)
}
func (m *ConversionResponse) XXX_DiscardUnknown() {
xxx_messageInfo_ConversionResponse.DiscardUnknown(m)
}
var xxx_messageInfo_ConversionResponse proto.InternalMessageInfo
func (m *ConversionResponse) GetResult() *Money {
if m != nil {
return m.Result
}
return nil
}
type CreditCardInfo struct {
CreditCardNumber string `protobuf:"bytes,1,opt,name=credit_card_number,json=creditCardNumber" json:"credit_card_number,omitempty"`
CreditCardCvv int32 `protobuf:"varint,2,opt,name=credit_card_cvv,json=creditCardCvv" json:"credit_card_cvv,omitempty"`
@ -1044,7 +1006,7 @@ func (m *CreditCardInfo) Reset() { *m = CreditCardInfo{} }
func (m *CreditCardInfo) String() string { return proto.CompactTextString(m) }
func (*CreditCardInfo) ProtoMessage() {}
func (*CreditCardInfo) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{23}
return fileDescriptor_demo_40506d781b7ed975, []int{22}
}
func (m *CreditCardInfo) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreditCardInfo.Unmarshal(m, b)
@ -1104,7 +1066,7 @@ func (m *ChargeRequest) Reset() { *m = ChargeRequest{} }
func (m *ChargeRequest) String() string { return proto.CompactTextString(m) }
func (*ChargeRequest) ProtoMessage() {}
func (*ChargeRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{24}
return fileDescriptor_demo_40506d781b7ed975, []int{23}
}
func (m *ChargeRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ChargeRequest.Unmarshal(m, b)
@ -1149,7 +1111,7 @@ func (m *ChargeResponse) Reset() { *m = ChargeResponse{} }
func (m *ChargeResponse) String() string { return proto.CompactTextString(m) }
func (*ChargeResponse) ProtoMessage() {}
func (*ChargeResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{25}
return fileDescriptor_demo_40506d781b7ed975, []int{24}
}
func (m *ChargeResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ChargeResponse.Unmarshal(m, b)
@ -1188,7 +1150,7 @@ func (m *OrderItem) Reset() { *m = OrderItem{} }
func (m *OrderItem) String() string { return proto.CompactTextString(m) }
func (*OrderItem) ProtoMessage() {}
func (*OrderItem) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{26}
return fileDescriptor_demo_40506d781b7ed975, []int{25}
}
func (m *OrderItem) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_OrderItem.Unmarshal(m, b)
@ -1237,7 +1199,7 @@ func (m *OrderResult) Reset() { *m = OrderResult{} }
func (m *OrderResult) String() string { return proto.CompactTextString(m) }
func (*OrderResult) ProtoMessage() {}
func (*OrderResult) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{27}
return fileDescriptor_demo_40506d781b7ed975, []int{26}
}
func (m *OrderResult) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_OrderResult.Unmarshal(m, b)
@ -1304,7 +1266,7 @@ func (m *SendOrderConfirmationRequest) Reset() { *m = SendOrderConfirmat
func (m *SendOrderConfirmationRequest) String() string { return proto.CompactTextString(m) }
func (*SendOrderConfirmationRequest) ProtoMessage() {}
func (*SendOrderConfirmationRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{28}
return fileDescriptor_demo_40506d781b7ed975, []int{27}
}
func (m *SendOrderConfirmationRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SendOrderConfirmationRequest.Unmarshal(m, b)
@ -1351,7 +1313,7 @@ func (m *CreateOrderRequest) Reset() { *m = CreateOrderRequest{} }
func (m *CreateOrderRequest) String() string { return proto.CompactTextString(m) }
func (*CreateOrderRequest) ProtoMessage() {}
func (*CreateOrderRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{29}
return fileDescriptor_demo_40506d781b7ed975, []int{28}
}
func (m *CreateOrderRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateOrderRequest.Unmarshal(m, b)
@ -1404,7 +1366,7 @@ func (m *CreateOrderResponse) Reset() { *m = CreateOrderResponse{} }
func (m *CreateOrderResponse) String() string { return proto.CompactTextString(m) }
func (*CreateOrderResponse) ProtoMessage() {}
func (*CreateOrderResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{30}
return fileDescriptor_demo_40506d781b7ed975, []int{29}
}
func (m *CreateOrderResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateOrderResponse.Unmarshal(m, b)
@ -1453,7 +1415,7 @@ func (m *PlaceOrderRequest) Reset() { *m = PlaceOrderRequest{} }
func (m *PlaceOrderRequest) String() string { return proto.CompactTextString(m) }
func (*PlaceOrderRequest) ProtoMessage() {}
func (*PlaceOrderRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{31}
return fileDescriptor_demo_40506d781b7ed975, []int{30}
}
func (m *PlaceOrderRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PlaceOrderRequest.Unmarshal(m, b)
@ -1519,7 +1481,7 @@ func (m *PlaceOrderResponse) Reset() { *m = PlaceOrderResponse{} }
func (m *PlaceOrderResponse) String() string { return proto.CompactTextString(m) }
func (*PlaceOrderResponse) ProtoMessage() {}
func (*PlaceOrderResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{32}
return fileDescriptor_demo_40506d781b7ed975, []int{31}
}
func (m *PlaceOrderResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PlaceOrderResponse.Unmarshal(m, b)
@ -1568,8 +1530,7 @@ func init() {
proto.RegisterType((*MoneyAmount)(nil), "hipstershop.MoneyAmount")
proto.RegisterType((*Money)(nil), "hipstershop.Money")
proto.RegisterType((*GetSupportedCurrenciesResponse)(nil), "hipstershop.GetSupportedCurrenciesResponse")
proto.RegisterType((*ConversionRequest)(nil), "hipstershop.ConversionRequest")
proto.RegisterType((*ConversionResponse)(nil), "hipstershop.ConversionResponse")
proto.RegisterType((*CurrencyConversionRequest)(nil), "hipstershop.CurrencyConversionRequest")
proto.RegisterType((*CreditCardInfo)(nil), "hipstershop.CreditCardInfo")
proto.RegisterType((*ChargeRequest)(nil), "hipstershop.ChargeRequest")
proto.RegisterType((*ChargeResponse)(nil), "hipstershop.ChargeResponse")
@ -2016,7 +1977,7 @@ var _ShippingService_serviceDesc = grpc.ServiceDesc{
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type CurrencyServiceClient interface {
GetSupportedCurrencies(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*GetSupportedCurrenciesResponse, error)
Convert(ctx context.Context, in *ConversionRequest, opts ...grpc.CallOption) (*ConversionResponse, error)
Convert(ctx context.Context, in *CurrencyConversionRequest, opts ...grpc.CallOption) (*Money, error)
}
type currencyServiceClient struct {
@ -2036,8 +1997,8 @@ func (c *currencyServiceClient) GetSupportedCurrencies(ctx context.Context, in *
return out, nil
}
func (c *currencyServiceClient) Convert(ctx context.Context, in *ConversionRequest, opts ...grpc.CallOption) (*ConversionResponse, error) {
out := new(ConversionResponse)
func (c *currencyServiceClient) Convert(ctx context.Context, in *CurrencyConversionRequest, opts ...grpc.CallOption) (*Money, error) {
out := new(Money)
err := c.cc.Invoke(ctx, "/hipstershop.CurrencyService/Convert", in, out, opts...)
if err != nil {
return nil, err
@ -2048,7 +2009,7 @@ func (c *currencyServiceClient) Convert(ctx context.Context, in *ConversionReque
// CurrencyServiceServer is the server API for CurrencyService service.
type CurrencyServiceServer interface {
GetSupportedCurrencies(context.Context, *Empty) (*GetSupportedCurrenciesResponse, error)
Convert(context.Context, *ConversionRequest) (*ConversionResponse, error)
Convert(context.Context, *CurrencyConversionRequest) (*Money, error)
}
func RegisterCurrencyServiceServer(s *grpc.Server, srv CurrencyServiceServer) {
@ -2074,7 +2035,7 @@ func _CurrencyService_GetSupportedCurrencies_Handler(srv interface{}, ctx contex
}
func _CurrencyService_Convert_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ConversionRequest)
in := new(CurrencyConversionRequest)
if err := dec(in); err != nil {
return nil, err
}
@ -2086,7 +2047,7 @@ func _CurrencyService_Convert_Handler(srv interface{}, ctx context.Context, dec
FullMethod: "/hipstershop.CurrencyService/Convert",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(CurrencyServiceServer).Convert(ctx, req.(*ConversionRequest))
return srv.(CurrencyServiceServer).Convert(ctx, req.(*CurrencyConversionRequest))
}
return interceptor(ctx, in, info, handler)
}
@ -2333,101 +2294,100 @@ var _CheckoutService_serviceDesc = grpc.ServiceDesc{
Metadata: "demo.proto",
}
func init() { proto.RegisterFile("demo.proto", fileDescriptor_demo_957798eed1991a59) }
func init() { proto.RegisterFile("demo.proto", fileDescriptor_demo_40506d781b7ed975) }
var fileDescriptor_demo_957798eed1991a59 = []byte{
// 1480 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x58, 0xdd, 0x72, 0xd3, 0x46,
0x1b, 0x8e, 0x92, 0x38, 0xb6, 0x5f, 0xc7, 0x4e, 0xb2, 0x24, 0x7c, 0x46, 0x81, 0x90, 0x6f, 0x33,
0x1f, 0x5f, 0xf8, 0x69, 0x06, 0x42, 0x3b, 0x1c, 0x94, 0x16, 0x18, 0x93, 0x31, 0x9e, 0x81, 0x42,
0x15, 0xe8, 0xb4, 0xc3, 0x0c, 0x1e, 0x21, 0x6d, 0xb0, 0x8a, 0xa5, 0x15, 0xab, 0x55, 0xa6, 0x66,
0x7a, 0x44, 0x6f, 0xa4, 0x47, 0x3d, 0xe8, 0x05, 0xf4, 0xa8, 0x57, 0xd0, 0xf3, 0xde, 0x42, 0xaf,
0xa3, 0xb3, 0xab, 0x5d, 0xfd, 0x59, 0x4e, 0xc2, 0x49, 0x7b, 0xe6, 0xdd, 0x7d, 0xf6, 0x7d, 0x9f,
0x7d, 0xff, 0x65, 0x00, 0x97, 0xf8, 0x74, 0x2f, 0x64, 0x94, 0x53, 0xd4, 0x1a, 0x79, 0x61, 0xc4,
0x09, 0x8b, 0x46, 0x34, 0xc4, 0x07, 0xd0, 0xe8, 0xd9, 0x8c, 0x0f, 0x38, 0xf1, 0xd1, 0x25, 0x80,
0x90, 0x51, 0x37, 0x76, 0xf8, 0xd0, 0x73, 0xbb, 0xc6, 0xb6, 0xb1, 0xdb, 0xb4, 0x9a, 0x6a, 0x67,
0xe0, 0x22, 0x13, 0x1a, 0xef, 0x62, 0x3b, 0xe0, 0x1e, 0x9f, 0x74, 0xe7, 0xb7, 0x8d, 0xdd, 0x9a,
0x95, 0xae, 0xf1, 0x73, 0xe8, 0x3c, 0x70, 0x5d, 0x21, 0xc5, 0x22, 0xef, 0x62, 0x12, 0x71, 0xf4,
0x1f, 0xa8, 0xc7, 0x11, 0x61, 0x99, 0xa4, 0x25, 0xb1, 0x1c, 0xb8, 0xe8, 0x2a, 0x2c, 0x7a, 0x9c,
0xf8, 0x52, 0x44, 0x6b, 0x7f, 0x63, 0x2f, 0xc7, 0x66, 0x4f, 0x53, 0xb1, 0x24, 0x04, 0x5f, 0x87,
0xd5, 0x03, 0x3f, 0xe4, 0x13, 0xb1, 0x7d, 0x9a, 0x5c, 0x7c, 0x15, 0x3a, 0x7d, 0xc2, 0xcf, 0x04,
0x7d, 0x0c, 0x8b, 0x02, 0x37, 0x9b, 0xe3, 0x75, 0xa8, 0x09, 0x02, 0x51, 0x77, 0x7e, 0x7b, 0x61,
0x36, 0xc9, 0x04, 0x83, 0xeb, 0x50, 0x93, 0x2c, 0xf1, 0x37, 0x60, 0x3e, 0xf6, 0x22, 0x6e, 0x11,
0x87, 0xfa, 0x3e, 0x09, 0x5c, 0x9b, 0x7b, 0x34, 0x88, 0x4e, 0x35, 0xc8, 0x65, 0x68, 0x65, 0x66,
0x4f, 0x54, 0x36, 0x2d, 0x48, 0xed, 0x1e, 0xe1, 0x2f, 0x61, 0xb3, 0x52, 0x6e, 0x14, 0xd2, 0x20,
0x22, 0xe5, 0xfb, 0xc6, 0xd4, 0xfd, 0x9f, 0x0d, 0xa8, 0x3f, 0x4b, 0x96, 0xa8, 0x03, 0xf3, 0x29,
0x81, 0x79, 0xcf, 0x45, 0x08, 0x16, 0x03, 0xdb, 0x27, 0xd2, 0x1b, 0x4d, 0x4b, 0xfe, 0x46, 0xdb,
0xd0, 0x72, 0x49, 0xe4, 0x30, 0x2f, 0x14, 0x8a, 0xba, 0x0b, 0xf2, 0x28, 0xbf, 0x85, 0xba, 0x50,
0x0f, 0x3d, 0x87, 0xc7, 0x8c, 0x74, 0x17, 0xe5, 0xa9, 0x5e, 0xa2, 0xcf, 0xa0, 0x19, 0x32, 0xcf,
0x21, 0xc3, 0x38, 0x72, 0xbb, 0x35, 0xe9, 0xe2, 0x6e, 0xc1, 0x7a, 0x4f, 0x68, 0x40, 0x26, 0x0f,
0x7c, 0x1a, 0x07, 0xdc, 0x6a, 0x48, 0xe8, 0x8b, 0xc8, 0xc5, 0x8f, 0x60, 0x5d, 0x3c, 0x51, 0xb1,
0xcc, 0xde, 0x76, 0x13, 0x1a, 0xea, 0x21, 0xc9, 0xc3, 0x5a, 0xfb, 0xeb, 0x05, 0x69, 0xea, 0x82,
0x95, 0xa2, 0xf0, 0x0e, 0xac, 0xf5, 0x89, 0x16, 0xa4, 0x6d, 0x5f, 0x7a, 0x35, 0xfe, 0x04, 0x36,
0x0e, 0x89, 0xcd, 0x9c, 0x51, 0xa6, 0x30, 0x01, 0xae, 0x43, 0xed, 0x5d, 0x4c, 0xd8, 0x44, 0x61,
0x93, 0x05, 0x7e, 0x04, 0xe7, 0xcb, 0x70, 0xc5, 0x6f, 0x0f, 0xea, 0x8c, 0x44, 0xf1, 0xf8, 0x14,
0x7a, 0x1a, 0x84, 0x03, 0x58, 0xe9, 0x13, 0xfe, 0x75, 0x4c, 0x39, 0xd1, 0x2a, 0xf7, 0xa0, 0x6e,
0xbb, 0x2e, 0x23, 0x51, 0x24, 0x95, 0x96, 0x45, 0x3c, 0x48, 0xce, 0x2c, 0x0d, 0xfa, 0xb8, 0xd8,
0xec, 0xc3, 0x6a, 0xa6, 0x4f, 0x71, 0xbe, 0x0d, 0x0d, 0x87, 0x46, 0x5c, 0x7a, 0xc8, 0x38, 0xc5,
0x43, 0x75, 0x81, 0x14, 0x0e, 0xa2, 0xb0, 0x7a, 0x38, 0xf2, 0xc2, 0xa7, 0xcc, 0x25, 0xec, 0x1f,
0x61, 0xfe, 0x29, 0xac, 0xe5, 0x14, 0x66, 0xa1, 0xce, 0x99, 0xed, 0xbc, 0xf5, 0x82, 0x37, 0x59,
0x1e, 0x81, 0xde, 0x1a, 0xb8, 0xf8, 0x17, 0x03, 0xea, 0x4a, 0x2f, 0xda, 0x85, 0xd5, 0x88, 0x33,
0x42, 0xf8, 0x50, 0x11, 0x18, 0xde, 0x52, 0x37, 0x3a, 0xc9, 0xbe, 0x02, 0xde, 0xaa, 0x40, 0xee,
0xab, 0x84, 0x28, 0x22, 0xf7, 0x45, 0xba, 0x38, 0xa2, 0xfe, 0x25, 0x39, 0x21, 0x7f, 0x8b, 0x64,
0x70, 0x84, 0xb1, 0xd8, 0x44, 0x27, 0x83, 0x5a, 0xa2, 0x0b, 0xd0, 0x78, 0xef, 0x85, 0x43, 0x87,
0xba, 0x44, 0xe6, 0x42, 0xcd, 0xaa, 0xbf, 0xf7, 0xc2, 0x1e, 0x75, 0x09, 0xee, 0x43, 0x2b, 0x67,
0x67, 0x21, 0xc3, 0x25, 0x8e, 0xe7, 0xdb, 0x63, 0x49, 0xb1, 0x6d, 0xe9, 0x25, 0xda, 0x02, 0x38,
0x62, 0xb6, 0x23, 0xd2, 0xce, 0x1e, 0x4b, 0x56, 0x6d, 0x2b, 0xb7, 0x83, 0x5f, 0x41, 0x4d, 0x0a,
0x42, 0x3b, 0xd0, 0x76, 0x62, 0xc6, 0x48, 0xe0, 0x4c, 0x12, 0x8d, 0xc9, 0x5b, 0x97, 0xf5, 0xa6,
0x50, 0x8b, 0x6e, 0xc2, 0x92, 0x2d, 0x35, 0xaa, 0xf2, 0x3b, 0xdb, 0xf3, 0x0a, 0x87, 0xfb, 0xb0,
0xd5, 0x27, 0xfc, 0x30, 0x0e, 0x43, 0xca, 0x38, 0x71, 0x7b, 0x89, 0x34, 0x8f, 0x64, 0x39, 0xf0,
0x3f, 0xe8, 0x14, 0x14, 0xeb, 0x12, 0xd4, 0xce, 0x6b, 0x8e, 0xf0, 0x73, 0x58, 0xeb, 0xd1, 0xe0,
0x98, 0xb0, 0xc8, 0xa3, 0x81, 0x0e, 0xa1, 0x2b, 0xb0, 0x78, 0xc4, 0xa8, 0xaf, 0xe2, 0x07, 0x4d,
0xb3, 0xb1, 0xe4, 0xb9, 0x28, 0x9e, 0x9c, 0x26, 0xcf, 0x4a, 0x1c, 0xb3, 0xc4, 0xa9, 0xb4, 0xe3,
0x7d, 0x40, 0x79, 0xa9, 0x8a, 0xd2, 0x35, 0x58, 0x4a, 0x32, 0xee, 0x04, 0xc1, 0x0a, 0x81, 0xff,
0x32, 0xa0, 0xd3, 0x63, 0xc4, 0xf5, 0x44, 0xef, 0x70, 0x07, 0xc1, 0x11, 0x45, 0x37, 0x00, 0x39,
0x72, 0x67, 0xe8, 0xd8, 0xcc, 0x1d, 0x06, 0xb1, 0xff, 0x9a, 0x30, 0x65, 0xcf, 0x55, 0x27, 0xc5,
0x7e, 0x25, 0xf7, 0xd1, 0x15, 0x58, 0xc9, 0xa3, 0x9d, 0xe3, 0x63, 0xd5, 0x1e, 0xdb, 0x19, 0xb4,
0x77, 0x7c, 0x8c, 0xbe, 0x80, 0xcd, 0x3c, 0x8e, 0xfc, 0x10, 0x7a, 0x4c, 0x96, 0xf2, 0xe1, 0x84,
0xd8, 0x4c, 0x86, 0x54, 0xcd, 0xea, 0x66, 0x77, 0x0e, 0x52, 0xc0, 0x77, 0xc4, 0x66, 0xe8, 0x1e,
0x5c, 0x9c, 0x71, 0xdd, 0xa7, 0x01, 0x1f, 0xc9, 0xd8, 0xab, 0x59, 0x17, 0xaa, 0xee, 0x3f, 0x11,
0x00, 0x3c, 0x81, 0x76, 0x6f, 0x64, 0xb3, 0x37, 0x69, 0xe5, 0xb9, 0x96, 0x06, 0xc3, 0x09, 0x56,
0x4a, 0x10, 0xe8, 0x2e, 0xb4, 0x72, 0xda, 0x55, 0xf4, 0x6c, 0x16, 0x33, 0xb8, 0x60, 0x44, 0x0b,
0x32, 0x26, 0xf8, 0x0e, 0x74, 0xb4, 0xea, 0x2c, 0x68, 0x38, 0xb3, 0x83, 0x28, 0x89, 0xe3, 0x2c,
0x99, 0xdb, 0xb9, 0xdd, 0x81, 0x8b, 0x5f, 0x41, 0x53, 0x56, 0x00, 0x39, 0x9f, 0xe8, 0xc9, 0xc1,
0x38, 0x75, 0x72, 0x10, 0x71, 0x25, 0x2a, 0x97, 0xe2, 0x59, 0x19, 0x57, 0xe2, 0x1c, 0x7f, 0x98,
0x87, 0x96, 0x2e, 0x31, 0xf1, 0x98, 0x8b, 0x8c, 0xa5, 0x62, 0x99, 0x11, 0xaa, 0xcb, 0xf5, 0xc0,
0x45, 0x37, 0x61, 0x3d, 0x1a, 0x79, 0x61, 0x28, 0x6a, 0x4f, 0xbe, 0x08, 0x25, 0xf1, 0x88, 0xf4,
0xd9, 0xf3, 0xb4, 0x18, 0xa1, 0x3b, 0xd0, 0x4e, 0x6f, 0x48, 0x36, 0x0b, 0x33, 0xd9, 0x2c, 0x6b,
0x60, 0x8f, 0x46, 0x1c, 0xdd, 0x83, 0xd5, 0xf4, 0xa2, 0xae, 0xb0, 0x8b, 0x27, 0x54, 0xd8, 0x15,
0x8d, 0xd6, 0xa5, 0xef, 0x86, 0xae, 0xb4, 0x35, 0x59, 0x69, 0xcf, 0x17, 0x6e, 0xa5, 0x06, 0xd5,
0xa5, 0xd6, 0x85, 0x8b, 0x87, 0x24, 0x70, 0xe5, 0x7e, 0x8f, 0x06, 0x47, 0x1e, 0xf3, 0x65, 0xd8,
0xe4, 0x9a, 0x22, 0xf1, 0x6d, 0x6f, 0xac, 0x9b, 0xa2, 0x5c, 0xa0, 0x3d, 0xa8, 0x49, 0xd3, 0x54,
0x56, 0x92, 0x9c, 0x4d, 0xad, 0x04, 0x86, 0x3f, 0x18, 0x80, 0x7a, 0x8c, 0xd8, 0x9c, 0x14, 0x9a,
0xc8, 0xcc, 0xb1, 0x68, 0x07, 0xda, 0xf2, 0x40, 0x57, 0x11, 0x65, 0xe8, 0x65, 0xb1, 0xa9, 0xaa,
0xd0, 0x24, 0xdf, 0x82, 0x16, 0xce, 0xd0, 0x82, 0xf0, 0x8f, 0x70, 0xae, 0xc0, 0x41, 0x45, 0x63,
0x6a, 0x2f, 0xe3, 0x0c, 0xf6, 0x9a, 0xf6, 0xeb, 0xfc, 0xd9, 0xfc, 0x8a, 0xff, 0x34, 0x60, 0xed,
0xd9, 0xd8, 0x76, 0xfe, 0x45, 0x0b, 0x64, 0xce, 0xac, 0xe5, 0x9d, 0x59, 0x4a, 0xef, 0xa5, 0x8f,
0x4b, 0xef, 0x87, 0x80, 0xf2, 0xcf, 0x4a, 0x67, 0x23, 0x15, 0x20, 0xc6, 0x99, 0x02, 0x64, 0xff,
0x0f, 0x03, 0x5a, 0x22, 0x8d, 0x0f, 0x09, 0x3b, 0xf6, 0x1c, 0x82, 0xee, 0xca, 0x56, 0x2e, 0x33,
0x7f, 0xb3, 0xfc, 0xa6, 0xdc, 0x97, 0x86, 0x59, 0xb4, 0x7b, 0x32, 0x8a, 0xcf, 0xa1, 0xcf, 0xa1,
0xae, 0x3e, 0x07, 0x4a, 0xb7, 0x8b, 0x1f, 0x09, 0xe6, 0xda, 0x54, 0x19, 0xc1, 0x73, 0xe8, 0x3e,
0x34, 0xd3, 0x0f, 0x0f, 0x74, 0x69, 0x5a, 0x7e, 0x5e, 0x40, 0xa5, 0xfa, 0xfd, 0x9f, 0x0c, 0xd8,
0x28, 0x0e, 0xec, 0xfa, 0x59, 0xdf, 0xc3, 0xb9, 0x8a, 0x69, 0x1e, 0xfd, 0xbf, 0x20, 0x66, 0xf6,
0x77, 0x84, 0xb9, 0x7b, 0x3a, 0x30, 0x71, 0x80, 0x60, 0x31, 0x0f, 0x1b, 0x6a, 0x06, 0xed, 0xd9,
0xdc, 0x1e, 0xd3, 0x37, 0x9a, 0x45, 0x1f, 0x96, 0xf3, 0x03, 0x37, 0xaa, 0x78, 0x85, 0xf9, 0xdf,
0x29, 0x4d, 0xe5, 0xf9, 0x17, 0xcf, 0xa1, 0x87, 0x00, 0xd9, 0xbc, 0x8d, 0xb6, 0xca, 0xa6, 0x2e,
0x0e, 0xe2, 0x66, 0xe5, 0x78, 0x8c, 0xe7, 0xd0, 0x4b, 0xe8, 0x14, 0x27, 0x6c, 0x84, 0x0b, 0xc8,
0xca, 0x69, 0xdd, 0xdc, 0x39, 0x11, 0x93, 0x5a, 0xe1, 0x57, 0x03, 0x56, 0x0e, 0x55, 0x1e, 0xea,
0xf7, 0x0f, 0xa0, 0xa1, 0x07, 0x63, 0x74, 0xb1, 0x4c, 0x3a, 0x3f, 0x9f, 0x9b, 0x97, 0x66, 0x9c,
0xa6, 0x16, 0x78, 0x0c, 0xcd, 0x74, 0x52, 0x2d, 0x05, 0x4b, 0x79, 0x64, 0x36, 0xb7, 0x66, 0x1d,
0xa7, 0x64, 0x7f, 0x37, 0x60, 0x45, 0x27, 0xb7, 0x26, 0xfb, 0x12, 0xce, 0x57, 0xcf, 0x60, 0x95,
0x6e, 0xbb, 0x5e, 0x26, 0x7c, 0xc2, 0xf0, 0x26, 0xe9, 0xd7, 0x93, 0x09, 0xaa, 0xec, 0xbd, 0xa9,
0x69, 0xcd, 0xbc, 0x3c, 0xf3, 0x3c, 0xa5, 0xff, 0x02, 0x3a, 0xcf, 0xec, 0x89, 0x4f, 0x82, 0x34,
0x8d, 0x7b, 0xb0, 0x94, 0xf4, 0x7e, 0x64, 0x16, 0xaf, 0xe7, 0x67, 0x11, 0x73, 0xb3, 0xf2, 0x2c,
0x15, 0x3b, 0x82, 0xe5, 0x03, 0x51, 0xa8, 0xb4, 0xd0, 0x6f, 0xc5, 0x07, 0x5c, 0x45, 0xcb, 0x42,
0x57, 0x4b, 0x21, 0x31, 0xbb, 0xad, 0xcd, 0x48, 0xdc, 0xdf, 0x84, 0xfd, 0x47, 0xc4, 0x79, 0x4b,
0xe3, 0xf4, 0x09, 0x16, 0xb4, 0x72, 0x5d, 0x03, 0x5d, 0x2e, 0xd7, 0xc5, 0x52, 0x4f, 0x33, 0xb7,
0x67, 0x03, 0x52, 0xb3, 0x3f, 0x05, 0xc8, 0x6a, 0x66, 0xc9, 0xf2, 0x53, 0x3d, 0xa2, 0x64, 0xf9,
0xe9, 0x62, 0x8b, 0xe7, 0x5e, 0x2f, 0xc9, 0x7f, 0x77, 0x6e, 0xff, 0x1d, 0x00, 0x00, 0xff, 0xff,
0x51, 0x5f, 0x0f, 0xde, 0xeb, 0x11, 0x00, 0x00,
var fileDescriptor_demo_40506d781b7ed975 = []byte{
// 1466 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x58, 0xdd, 0x72, 0xd3, 0xc6,
0x17, 0x8f, 0x9c, 0x38, 0xb6, 0x8f, 0x63, 0x27, 0x59, 0x12, 0xfe, 0x46, 0x81, 0x90, 0xff, 0x66,
0x4a, 0x43, 0xa1, 0x19, 0x30, 0xed, 0x70, 0x51, 0x5a, 0xca, 0x98, 0x8c, 0xf1, 0x0c, 0x14, 0xaa,
0x40, 0xa7, 0x1d, 0x3a, 0x78, 0x84, 0xb4, 0xc1, 0x2a, 0xd6, 0x07, 0xab, 0x55, 0xa6, 0x66, 0x7a,
0x45, 0x5f, 0xa4, 0x57, 0xbd, 0xe8, 0x03, 0xb4, 0xef, 0xd0, 0xfb, 0xbe, 0x42, 0x9f, 0xa3, 0xb3,
0xab, 0x5d, 0x7d, 0x59, 0x4a, 0xc2, 0x4d, 0x7b, 0xe7, 0xdd, 0xfd, 0xed, 0x39, 0xbf, 0x3d, 0xdf,
0x32, 0x80, 0x4d, 0x5c, 0x7f, 0x3f, 0xa0, 0x3e, 0xf3, 0x51, 0x7b, 0xe2, 0x04, 0x21, 0x23, 0x34,
0x9c, 0xf8, 0x01, 0x3e, 0x80, 0xe6, 0xc0, 0xa4, 0x6c, 0xc4, 0x88, 0x8b, 0x2e, 0x01, 0x04, 0xd4,
0xb7, 0x23, 0x8b, 0x8d, 0x1d, 0xbb, 0xa7, 0xed, 0x68, 0x7b, 0x2d, 0xa3, 0x25, 0x77, 0x46, 0x36,
0xd2, 0xa1, 0xf9, 0x26, 0x32, 0x3d, 0xe6, 0xb0, 0x59, 0xaf, 0xb6, 0xa3, 0xed, 0xd5, 0x8d, 0x64,
0x8d, 0x9f, 0x42, 0xf7, 0x9e, 0x6d, 0x73, 0x29, 0x06, 0x79, 0x13, 0x91, 0x90, 0xa1, 0xff, 0x41,
0x23, 0x0a, 0x09, 0x4d, 0x25, 0x2d, 0xf3, 0xe5, 0xc8, 0x46, 0x57, 0x61, 0xc9, 0x61, 0xc4, 0x15,
0x22, 0xda, 0xfd, 0xcd, 0xfd, 0x0c, 0x9b, 0x7d, 0x45, 0xc5, 0x10, 0x10, 0x7c, 0x0d, 0xd6, 0x0e,
0xdc, 0x80, 0xcd, 0xf8, 0xf6, 0x69, 0x72, 0xf1, 0x55, 0xe8, 0x0e, 0x09, 0x3b, 0x13, 0xf4, 0x21,
0x2c, 0x71, 0x5c, 0x35, 0xc7, 0x6b, 0x50, 0xe7, 0x04, 0xc2, 0x5e, 0x6d, 0x67, 0xb1, 0x9a, 0x64,
0x8c, 0xc1, 0x0d, 0xa8, 0x0b, 0x96, 0xf8, 0x1b, 0xd0, 0x1f, 0x3a, 0x21, 0x33, 0x88, 0xe5, 0xbb,
0x2e, 0xf1, 0x6c, 0x93, 0x39, 0xbe, 0x17, 0x9e, 0x6a, 0x90, 0xcb, 0xd0, 0x4e, 0xcd, 0x1e, 0xab,
0x6c, 0x19, 0x90, 0xd8, 0x3d, 0xc4, 0x5f, 0xc0, 0x56, 0xa9, 0xdc, 0x30, 0xf0, 0xbd, 0x90, 0x14,
0xef, 0x6b, 0x73, 0xf7, 0x7f, 0xd1, 0xa0, 0xf1, 0x24, 0x5e, 0xa2, 0x2e, 0xd4, 0x12, 0x02, 0x35,
0xc7, 0x46, 0x08, 0x96, 0x3c, 0xd3, 0x25, 0xc2, 0x1b, 0x2d, 0x43, 0xfc, 0x46, 0x3b, 0xd0, 0xb6,
0x49, 0x68, 0x51, 0x27, 0xe0, 0x8a, 0x7a, 0x8b, 0xe2, 0x28, 0xbb, 0x85, 0x7a, 0xd0, 0x08, 0x1c,
0x8b, 0x45, 0x94, 0xf4, 0x96, 0xc4, 0xa9, 0x5a, 0xa2, 0x4f, 0xa1, 0x15, 0x50, 0xc7, 0x22, 0xe3,
0x28, 0xb4, 0x7b, 0x75, 0xe1, 0xe2, 0x5e, 0xce, 0x7a, 0x8f, 0x7c, 0x8f, 0xcc, 0xee, 0xb9, 0x7e,
0xe4, 0x31, 0xa3, 0x29, 0xa0, 0xcf, 0x42, 0x1b, 0x3f, 0x80, 0x0d, 0xfe, 0x44, 0xc9, 0x32, 0x7d,
0xdb, 0x0d, 0x68, 0xca, 0x87, 0xc4, 0x0f, 0x6b, 0xf7, 0x37, 0x72, 0xd2, 0xe4, 0x05, 0x23, 0x41,
0xe1, 0x5d, 0x58, 0x1f, 0x12, 0x25, 0x48, 0xd9, 0xbe, 0xf0, 0x6a, 0xfc, 0x31, 0x6c, 0x1e, 0x12,
0x93, 0x5a, 0x93, 0x54, 0x61, 0x0c, 0xdc, 0x80, 0xfa, 0x9b, 0x88, 0xd0, 0x99, 0xc4, 0xc6, 0x0b,
0xfc, 0x00, 0xce, 0x17, 0xe1, 0x92, 0xdf, 0x3e, 0x34, 0x28, 0x09, 0xa3, 0xe9, 0x29, 0xf4, 0x14,
0x08, 0x7b, 0xb0, 0x3a, 0x24, 0xec, 0xeb, 0xc8, 0x67, 0x44, 0xa9, 0xdc, 0x87, 0x86, 0x69, 0xdb,
0x94, 0x84, 0xa1, 0x50, 0x5a, 0x14, 0x71, 0x2f, 0x3e, 0x33, 0x14, 0xe8, 0xfd, 0x62, 0x73, 0x08,
0x6b, 0xa9, 0x3e, 0xc9, 0xf9, 0x16, 0x34, 0x2d, 0x3f, 0x64, 0xc2, 0x43, 0xda, 0x29, 0x1e, 0x6a,
0x70, 0x24, 0x77, 0x90, 0x0f, 0x6b, 0x87, 0x13, 0x27, 0x78, 0x4c, 0x6d, 0x42, 0xff, 0x15, 0xe6,
0x9f, 0xc0, 0x7a, 0x46, 0x61, 0x1a, 0xea, 0x8c, 0x9a, 0xd6, 0x6b, 0xc7, 0x7b, 0x95, 0xe6, 0x11,
0xa8, 0xad, 0x91, 0x8d, 0x7f, 0xd5, 0xa0, 0x21, 0xf5, 0xa2, 0x3d, 0x58, 0x0b, 0x19, 0x25, 0x84,
0x8d, 0x25, 0x81, 0xf1, 0x4d, 0x79, 0xa3, 0x1b, 0xef, 0x4b, 0xe0, 0xcd, 0x12, 0x64, 0x5f, 0x26,
0x44, 0x1e, 0xd9, 0xe7, 0xe9, 0x62, 0xf1, 0xfa, 0x17, 0xe7, 0x84, 0xf8, 0xcd, 0x93, 0xc1, 0xe2,
0xc6, 0xa2, 0x33, 0x95, 0x0c, 0x72, 0x89, 0x2e, 0x40, 0xf3, 0xad, 0x13, 0x8c, 0x2d, 0xdf, 0x26,
0x22, 0x17, 0xea, 0x46, 0xe3, 0xad, 0x13, 0x0c, 0x7c, 0x9b, 0xe0, 0x21, 0xb4, 0x33, 0x76, 0xe6,
0x32, 0x6c, 0x62, 0x39, 0xae, 0x39, 0x15, 0x14, 0x3b, 0x86, 0x5a, 0xa2, 0x6d, 0x80, 0x23, 0x6a,
0x5a, 0x3c, 0xed, 0xcc, 0xa9, 0x60, 0xd5, 0x31, 0x32, 0x3b, 0xf8, 0x05, 0xd4, 0x85, 0x20, 0xb4,
0x0b, 0x1d, 0x2b, 0xa2, 0x94, 0x78, 0xd6, 0x2c, 0xd6, 0x18, 0xbf, 0x75, 0x45, 0x6d, 0x72, 0xb5,
0xe8, 0x06, 0x2c, 0x9b, 0x42, 0xa3, 0x2c, 0xbf, 0xd5, 0x9e, 0x97, 0x38, 0x3c, 0x84, 0xed, 0x21,
0x61, 0x87, 0x51, 0x10, 0xf8, 0x94, 0x11, 0x7b, 0x10, 0x4b, 0x73, 0x48, 0x9a, 0x03, 0x1f, 0x40,
0x37, 0xa7, 0x58, 0x95, 0xa0, 0x4e, 0x56, 0x73, 0x88, 0xbf, 0x87, 0x0b, 0x83, 0x64, 0xc3, 0x3b,
0x26, 0x34, 0x74, 0x7c, 0x4f, 0x85, 0xd2, 0x15, 0x58, 0x3a, 0xa2, 0xbe, 0x2b, 0xe3, 0x08, 0xcd,
0xb3, 0x32, 0xc4, 0x39, 0x2f, 0xa2, 0xcc, 0x8f, 0x9f, 0x17, 0x3b, 0x68, 0x99, 0xf9, 0xc2, 0x9e,
0x7f, 0x6b, 0xd0, 0x1d, 0x50, 0x62, 0x3b, 0xbc, 0x03, 0xd8, 0x23, 0xef, 0xc8, 0x47, 0xd7, 0x01,
0x59, 0x62, 0x67, 0x6c, 0x99, 0xd4, 0x1e, 0x7b, 0x91, 0xfb, 0x92, 0x50, 0x69, 0x95, 0x35, 0x2b,
0xc1, 0x7e, 0x25, 0xf6, 0xd1, 0x15, 0x58, 0xcd, 0xa2, 0xad, 0xe3, 0x63, 0xd9, 0xe4, 0x3a, 0x29,
0x74, 0x70, 0x7c, 0x8c, 0x3e, 0x87, 0xad, 0x2c, 0x8e, 0xfc, 0x18, 0x38, 0x54, 0x14, 0xe4, 0xf1,
0x8c, 0x98, 0x54, 0x04, 0x46, 0xdd, 0xe8, 0xa5, 0x77, 0x0e, 0x12, 0xc0, 0x77, 0xc4, 0xa4, 0xe8,
0x2e, 0x5c, 0xac, 0xb8, 0xee, 0xfa, 0x1e, 0x9b, 0x88, 0x08, 0xaa, 0x1b, 0x17, 0xca, 0xee, 0x3f,
0xe2, 0x00, 0x3c, 0x83, 0xce, 0x60, 0x62, 0xd2, 0x57, 0x49, 0xfd, 0xf8, 0x28, 0x71, 0x69, 0xb5,
0xf1, 0x24, 0x02, 0xdd, 0x81, 0x76, 0x46, 0xbb, 0x8c, 0x81, 0xad, 0x7c, 0x1e, 0xe6, 0x8c, 0x68,
0x40, 0xca, 0x04, 0xdf, 0x86, 0xae, 0x52, 0x9d, 0xba, 0x9e, 0x51, 0xd3, 0x0b, 0xe3, 0x68, 0x4c,
0x53, 0xb2, 0x93, 0xd9, 0x1d, 0xd9, 0xf8, 0x05, 0xb4, 0x44, 0x1e, 0x8b, 0x29, 0x43, 0xf5, 0x7f,
0xed, 0xd4, 0xfe, 0xcf, 0xa3, 0x82, 0xd7, 0x1f, 0xc9, 0xb3, 0x34, 0x2a, 0xf8, 0x39, 0x7e, 0x57,
0x83, 0xb6, 0x2a, 0x14, 0xd1, 0x94, 0xf1, 0xbc, 0xf3, 0xf9, 0x32, 0x25, 0xd4, 0x10, 0xeb, 0x91,
0x8d, 0x6e, 0xc0, 0x46, 0x38, 0x71, 0x82, 0x80, 0x57, 0x90, 0x6c, 0x29, 0x89, 0xa3, 0x09, 0xa9,
0xb3, 0xa7, 0x49, 0x49, 0x41, 0xb7, 0xa1, 0x93, 0xdc, 0x10, 0x6c, 0x16, 0x2b, 0xd9, 0xac, 0x28,
0xe0, 0xc0, 0x0f, 0x19, 0xba, 0x0b, 0x6b, 0xc9, 0x45, 0x55, 0x27, 0x97, 0x4e, 0xa8, 0x93, 0xab,
0x0a, 0xad, 0x0a, 0xd8, 0x75, 0x55, 0x2f, 0xeb, 0xa2, 0x5e, 0x9e, 0xcf, 0xdd, 0x4a, 0x0c, 0xaa,
0x0a, 0xa6, 0x0d, 0x17, 0x0f, 0x89, 0x67, 0x8b, 0xfd, 0x81, 0xef, 0x1d, 0x39, 0xd4, 0x15, 0x61,
0x93, 0x69, 0x6d, 0xc4, 0x35, 0x9d, 0xa9, 0x6a, 0x6d, 0x62, 0x81, 0xf6, 0xa1, 0x2e, 0x4c, 0x53,
0x5a, 0x0f, 0x32, 0x36, 0x35, 0x62, 0x18, 0x7e, 0xa7, 0x01, 0x1a, 0x50, 0x62, 0x32, 0x92, 0x6b,
0x05, 0x95, 0xc3, 0xcd, 0x2e, 0x74, 0xc4, 0x81, 0xaa, 0x05, 0xd2, 0xd0, 0x2b, 0x7c, 0x53, 0x95,
0x83, 0x6c, 0x23, 0x59, 0x3c, 0x43, 0x23, 0xc1, 0x3f, 0xc1, 0xb9, 0x1c, 0x07, 0x19, 0x8d, 0x89,
0xbd, 0xb4, 0x33, 0xd8, 0x6b, 0xde, 0xaf, 0xb5, 0xb3, 0xf9, 0x15, 0xff, 0xa5, 0xc1, 0xfa, 0x93,
0xa9, 0x69, 0xfd, 0x87, 0x16, 0x48, 0x9d, 0x59, 0xcf, 0x3a, 0xb3, 0x90, 0xde, 0xcb, 0xef, 0x97,
0xde, 0xf7, 0x01, 0x65, 0x9f, 0x95, 0x4c, 0x38, 0x32, 0x40, 0xb4, 0x33, 0x05, 0x48, 0xff, 0x4f,
0x0d, 0xda, 0x3c, 0x8d, 0x0f, 0x09, 0x3d, 0x76, 0x2c, 0x82, 0xee, 0x88, 0x86, 0x2c, 0x32, 0x7f,
0xab, 0xf8, 0xa6, 0xcc, 0xf7, 0x82, 0x9e, 0xb7, 0x7b, 0x3c, 0x50, 0x2f, 0xa0, 0xcf, 0xa0, 0x21,
0x87, 0xfa, 0xc2, 0xed, 0xfc, 0xa8, 0xaf, 0xaf, 0xcf, 0x95, 0x11, 0xbc, 0x80, 0xbe, 0x84, 0x56,
0xf2, 0xf9, 0x80, 0x2e, 0xcd, 0xcb, 0xcf, 0x0a, 0x28, 0x55, 0xdf, 0xff, 0x59, 0x83, 0xcd, 0xfc,
0xd8, 0xad, 0x9e, 0xf5, 0x03, 0x9c, 0x2b, 0x99, 0xc9, 0xd1, 0x87, 0x39, 0x31, 0xd5, 0x5f, 0x03,
0xfa, 0xde, 0xe9, 0xc0, 0xd8, 0x01, 0x9c, 0x45, 0x0d, 0x36, 0xe5, 0x24, 0x39, 0x30, 0x99, 0x39,
0xf5, 0x5f, 0x29, 0x16, 0x43, 0x58, 0xc9, 0x8e, 0xcd, 0xa8, 0xe4, 0x15, 0xfa, 0xff, 0xe7, 0x34,
0x15, 0xa7, 0x58, 0xbc, 0x80, 0xee, 0x03, 0xa4, 0x53, 0x33, 0xda, 0x2e, 0x9a, 0x3a, 0x3f, 0x4e,
0xeb, 0xa5, 0x43, 0x2e, 0x5e, 0x40, 0xcf, 0xa1, 0x9b, 0x9f, 0x93, 0x11, 0xce, 0x21, 0x4b, 0x67,
0x6e, 0x7d, 0xf7, 0x44, 0x4c, 0x62, 0x85, 0xdf, 0x34, 0x58, 0x3d, 0x94, 0x79, 0xa8, 0xde, 0x3f,
0x82, 0xa6, 0x1a, 0x6f, 0xd1, 0xc5, 0x22, 0xe9, 0xec, 0x94, 0xad, 0x5f, 0xaa, 0x38, 0x4d, 0x2c,
0xf0, 0x10, 0x5a, 0xc9, 0xbc, 0x59, 0x08, 0x96, 0xe2, 0xe0, 0xab, 0x6f, 0x57, 0x1d, 0x27, 0x64,
0xff, 0xd0, 0x60, 0x55, 0x25, 0xb7, 0x22, 0xfb, 0x1c, 0xce, 0x97, 0x4f, 0x52, 0xa5, 0x6e, 0xbb,
0x56, 0x24, 0x7c, 0xc2, 0x08, 0x86, 0x17, 0xd0, 0x10, 0x1a, 0xf1, 0x54, 0xc5, 0xd0, 0x95, 0x7c,
0x2e, 0x54, 0xcd, 0x5c, 0x7a, 0x49, 0xa5, 0xc3, 0x0b, 0xfd, 0x67, 0xd0, 0x7d, 0x62, 0xce, 0x5c,
0xe2, 0x25, 0x19, 0x3c, 0x80, 0xe5, 0xb8, 0xed, 0x23, 0x3d, 0x2f, 0x39, 0x3b, 0x86, 0xe8, 0x5b,
0xa5, 0x67, 0x89, 0x41, 0x26, 0xb0, 0x72, 0xc0, 0x6b, 0x94, 0x12, 0xfa, 0x2d, 0xff, 0x02, 0x2b,
0xe9, 0x56, 0xe8, 0x6a, 0x21, 0x1a, 0xaa, 0x3b, 0x5a, 0x45, 0xce, 0xfe, 0xce, 0x4d, 0x3f, 0x21,
0xd6, 0x6b, 0x3f, 0x4a, 0x9e, 0x60, 0x40, 0x3b, 0xd3, 0x30, 0xd0, 0xe5, 0x62, 0x49, 0x2c, 0xb4,
0x33, 0x7d, 0xa7, 0x1a, 0x90, 0x58, 0xfc, 0x31, 0x40, 0x5a, 0x2e, 0x0b, 0x29, 0x33, 0xd7, 0x1e,
0xf4, 0xcb, 0x95, 0xe7, 0x4a, 0xe0, 0xcb, 0x65, 0xf1, 0xf7, 0xcc, 0xad, 0x7f, 0x02, 0x00, 0x00,
0xff, 0xff, 0xdd, 0xe8, 0xfb, 0x77, 0xac, 0x11, 0x00, 0x00,
}

View file

@ -8,6 +8,7 @@ ADD ./*.py /home/
WORKDIR /home
# set listen port
ENV PORT=8080
ENV PORT "8080"
EXPOSE 8080
ENTRYPOINT python /home/recommendation_server.py $PORT
ENTRYPOINT python /home/recommendation_server.py

File diff suppressed because one or more lines are too long

View file

@ -283,8 +283,8 @@ class CurrencyServiceStub(object):
)
self.Convert = channel.unary_unary(
'/hipstershop.CurrencyService/Convert',
request_serializer=demo__pb2.ConversionRequest.SerializeToString,
response_deserializer=demo__pb2.ConversionResponse.FromString,
request_serializer=demo__pb2.CurrencyConversionRequest.SerializeToString,
response_deserializer=demo__pb2.Money.FromString,
)
@ -317,8 +317,8 @@ def add_CurrencyServiceServicer_to_server(servicer, server):
),
'Convert': grpc.unary_unary_rpc_method_handler(
servicer.Convert,
request_deserializer=demo__pb2.ConversionRequest.FromString,
response_serializer=demo__pb2.ConversionResponse.SerializeToString,
request_deserializer=demo__pb2.CurrencyConversionRequest.FromString,
response_serializer=demo__pb2.Money.SerializeToString,
),
}
generic_handler = grpc.method_handlers_generic_handler(

View file

@ -0,0 +1,9 @@
#!/bin/bash
set -e
# script to compile python protos
#
# requires gRPC tools:
# pip install -r requirements.txt
python -m grpc_tools.protoc -I../../pb --python_out=. --grpc_python_out=. ../../pb/demo.proto

View file

@ -3,25 +3,43 @@ import demo_pb2
import demo_pb2_grpc
from concurrent import futures
import time
import sys
import random
import os
class RecommendationService(demo_pb2_grpc.RecommendationServiceServicer):
def ListRecommendations(self, request, context):
print("handling request")
max_responses = 5
# fetch list of products from product catalog stub
cat_response = stub.ListProducts(demo_pb2.Empty())
num_prodcuts = len(cat_response.products)
num_return = min(max_responses, num_prodcuts)
# sample list of indicies to return
indices = random.sample(range(num_prodcuts), num_return)
# fetch product ids from indices
prod_list = [cat_response.products[i].id for i in indices]
print("handling request: {}".format(prod_list))
# build and return response
response = demo_pb2.ListRecommendationsResponse()
prod_list = []
for i in range(5):
prod_list.append(str(random.randint(1,100)))
response.product_ids.extend(prod_list)
return response
if __name__ == "__main__":
# get port
if len(sys.argv) > 1:
port = sys.argv[1]
else:
port = "8080"
# get port from $PORT envar
port = os.environ.get('PORT', "8080")
# get product catalog service address from $PRODUCT_CATALOG_SERVICE_ADDR envar
catalog_addr = os.environ.get('PRODUCT_CATALOG_SERVICE_ADDR', '')
if catalog_addr == "":
raise Exception('PRODUCT_CATALOG_SERVICE_ADDR environment not set')
print("product catalog address: " + catalog_addr)
print("listening on port: " + port)
# stub for product catalog service
channel = grpc.insecure_channel(catalog_addr)
stub = demo_pb2_grpc.ProductCatalogServiceStub(channel)
# create gRPC server
server = grpc.server(futures.ThreadPoolExecutor(max_workers=10))
@ -30,7 +48,6 @@ if __name__ == "__main__":
demo_pb2_grpc.add_RecommendationServiceServicer_to_server(RecommendationService(), server)
# start server
print("Listening on port " + port)
server.add_insecure_port('[::]:'+port)
server.start()

View file

@ -0,0 +1,2 @@
grpcio-tools
googleapis-common-protos

View file

@ -35,7 +35,7 @@ func (m *CartItem) Reset() { *m = CartItem{} }
func (m *CartItem) String() string { return proto.CompactTextString(m) }
func (*CartItem) ProtoMessage() {}
func (*CartItem) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{0}
return fileDescriptor_demo_40506d781b7ed975, []int{0}
}
func (m *CartItem) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CartItem.Unmarshal(m, b)
@ -81,7 +81,7 @@ func (m *AddItemRequest) Reset() { *m = AddItemRequest{} }
func (m *AddItemRequest) String() string { return proto.CompactTextString(m) }
func (*AddItemRequest) ProtoMessage() {}
func (*AddItemRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{1}
return fileDescriptor_demo_40506d781b7ed975, []int{1}
}
func (m *AddItemRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_AddItemRequest.Unmarshal(m, b)
@ -126,7 +126,7 @@ func (m *EmptyCartRequest) Reset() { *m = EmptyCartRequest{} }
func (m *EmptyCartRequest) String() string { return proto.CompactTextString(m) }
func (*EmptyCartRequest) ProtoMessage() {}
func (*EmptyCartRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{2}
return fileDescriptor_demo_40506d781b7ed975, []int{2}
}
func (m *EmptyCartRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_EmptyCartRequest.Unmarshal(m, b)
@ -164,7 +164,7 @@ func (m *GetCartRequest) Reset() { *m = GetCartRequest{} }
func (m *GetCartRequest) String() string { return proto.CompactTextString(m) }
func (*GetCartRequest) ProtoMessage() {}
func (*GetCartRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{3}
return fileDescriptor_demo_40506d781b7ed975, []int{3}
}
func (m *GetCartRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetCartRequest.Unmarshal(m, b)
@ -203,7 +203,7 @@ func (m *Cart) Reset() { *m = Cart{} }
func (m *Cart) String() string { return proto.CompactTextString(m) }
func (*Cart) ProtoMessage() {}
func (*Cart) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{4}
return fileDescriptor_demo_40506d781b7ed975, []int{4}
}
func (m *Cart) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Cart.Unmarshal(m, b)
@ -247,7 +247,7 @@ func (m *Empty) Reset() { *m = Empty{} }
func (m *Empty) String() string { return proto.CompactTextString(m) }
func (*Empty) ProtoMessage() {}
func (*Empty) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{5}
return fileDescriptor_demo_40506d781b7ed975, []int{5}
}
func (m *Empty) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Empty.Unmarshal(m, b)
@ -279,7 +279,7 @@ func (m *ListRecommendationsRequest) Reset() { *m = ListRecommendationsR
func (m *ListRecommendationsRequest) String() string { return proto.CompactTextString(m) }
func (*ListRecommendationsRequest) ProtoMessage() {}
func (*ListRecommendationsRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{6}
return fileDescriptor_demo_40506d781b7ed975, []int{6}
}
func (m *ListRecommendationsRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListRecommendationsRequest.Unmarshal(m, b)
@ -324,7 +324,7 @@ func (m *ListRecommendationsResponse) Reset() { *m = ListRecommendations
func (m *ListRecommendationsResponse) String() string { return proto.CompactTextString(m) }
func (*ListRecommendationsResponse) ProtoMessage() {}
func (*ListRecommendationsResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{7}
return fileDescriptor_demo_40506d781b7ed975, []int{7}
}
func (m *ListRecommendationsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListRecommendationsResponse.Unmarshal(m, b)
@ -352,7 +352,7 @@ func (m *ListRecommendationsResponse) GetProductIds() []string {
}
type Product struct {
Id int32 `protobuf:"varint,1,opt,name=id" json:"id,omitempty"`
Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"`
Name string `protobuf:"bytes,2,opt,name=name" json:"name,omitempty"`
Description string `protobuf:"bytes,3,opt,name=description" json:"description,omitempty"`
Picture string `protobuf:"bytes,4,opt,name=picture" json:"picture,omitempty"`
@ -366,7 +366,7 @@ func (m *Product) Reset() { *m = Product{} }
func (m *Product) String() string { return proto.CompactTextString(m) }
func (*Product) ProtoMessage() {}
func (*Product) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{8}
return fileDescriptor_demo_40506d781b7ed975, []int{8}
}
func (m *Product) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Product.Unmarshal(m, b)
@ -386,11 +386,11 @@ func (m *Product) XXX_DiscardUnknown() {
var xxx_messageInfo_Product proto.InternalMessageInfo
func (m *Product) GetId() int32 {
func (m *Product) GetId() string {
if m != nil {
return m.Id
}
return 0
return ""
}
func (m *Product) GetName() string {
@ -432,7 +432,7 @@ func (m *ListProductsResponse) Reset() { *m = ListProductsResponse{} }
func (m *ListProductsResponse) String() string { return proto.CompactTextString(m) }
func (*ListProductsResponse) ProtoMessage() {}
func (*ListProductsResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{9}
return fileDescriptor_demo_40506d781b7ed975, []int{9}
}
func (m *ListProductsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListProductsResponse.Unmarshal(m, b)
@ -460,7 +460,7 @@ func (m *ListProductsResponse) GetProducts() []*Product {
}
type GetProductRequest struct {
Id int32 `protobuf:"varint,1,opt,name=id" json:"id,omitempty"`
Id string `protobuf:"bytes,1,opt,name=id" json:"id,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
@ -470,7 +470,7 @@ func (m *GetProductRequest) Reset() { *m = GetProductRequest{} }
func (m *GetProductRequest) String() string { return proto.CompactTextString(m) }
func (*GetProductRequest) ProtoMessage() {}
func (*GetProductRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{10}
return fileDescriptor_demo_40506d781b7ed975, []int{10}
}
func (m *GetProductRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetProductRequest.Unmarshal(m, b)
@ -490,11 +490,11 @@ func (m *GetProductRequest) XXX_DiscardUnknown() {
var xxx_messageInfo_GetProductRequest proto.InternalMessageInfo
func (m *GetProductRequest) GetId() int32 {
func (m *GetProductRequest) GetId() string {
if m != nil {
return m.Id
}
return 0
return ""
}
type SearchProductsRequest struct {
@ -508,7 +508,7 @@ func (m *SearchProductsRequest) Reset() { *m = SearchProductsRequest{} }
func (m *SearchProductsRequest) String() string { return proto.CompactTextString(m) }
func (*SearchProductsRequest) ProtoMessage() {}
func (*SearchProductsRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{11}
return fileDescriptor_demo_40506d781b7ed975, []int{11}
}
func (m *SearchProductsRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SearchProductsRequest.Unmarshal(m, b)
@ -546,7 +546,7 @@ func (m *SearchProductsResponse) Reset() { *m = SearchProductsResponse{}
func (m *SearchProductsResponse) String() string { return proto.CompactTextString(m) }
func (*SearchProductsResponse) ProtoMessage() {}
func (*SearchProductsResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{12}
return fileDescriptor_demo_40506d781b7ed975, []int{12}
}
func (m *SearchProductsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SearchProductsResponse.Unmarshal(m, b)
@ -585,7 +585,7 @@ func (m *GetQuoteRequest) Reset() { *m = GetQuoteRequest{} }
func (m *GetQuoteRequest) String() string { return proto.CompactTextString(m) }
func (*GetQuoteRequest) ProtoMessage() {}
func (*GetQuoteRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{13}
return fileDescriptor_demo_40506d781b7ed975, []int{13}
}
func (m *GetQuoteRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetQuoteRequest.Unmarshal(m, b)
@ -630,7 +630,7 @@ func (m *GetQuoteResponse) Reset() { *m = GetQuoteResponse{} }
func (m *GetQuoteResponse) String() string { return proto.CompactTextString(m) }
func (*GetQuoteResponse) ProtoMessage() {}
func (*GetQuoteResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{14}
return fileDescriptor_demo_40506d781b7ed975, []int{14}
}
func (m *GetQuoteResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetQuoteResponse.Unmarshal(m, b)
@ -669,7 +669,7 @@ func (m *ShipOrderRequest) Reset() { *m = ShipOrderRequest{} }
func (m *ShipOrderRequest) String() string { return proto.CompactTextString(m) }
func (*ShipOrderRequest) ProtoMessage() {}
func (*ShipOrderRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{15}
return fileDescriptor_demo_40506d781b7ed975, []int{15}
}
func (m *ShipOrderRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ShipOrderRequest.Unmarshal(m, b)
@ -714,7 +714,7 @@ func (m *ShipOrderResponse) Reset() { *m = ShipOrderResponse{} }
func (m *ShipOrderResponse) String() string { return proto.CompactTextString(m) }
func (*ShipOrderResponse) ProtoMessage() {}
func (*ShipOrderResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{16}
return fileDescriptor_demo_40506d781b7ed975, []int{16}
}
func (m *ShipOrderResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ShipOrderResponse.Unmarshal(m, b)
@ -756,7 +756,7 @@ func (m *Address) Reset() { *m = Address{} }
func (m *Address) String() string { return proto.CompactTextString(m) }
func (*Address) ProtoMessage() {}
func (*Address) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{17}
return fileDescriptor_demo_40506d781b7ed975, []int{17}
}
func (m *Address) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Address.Unmarshal(m, b)
@ -825,7 +825,7 @@ func (m *MoneyAmount) Reset() { *m = MoneyAmount{} }
func (m *MoneyAmount) String() string { return proto.CompactTextString(m) }
func (*MoneyAmount) ProtoMessage() {}
func (*MoneyAmount) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{18}
return fileDescriptor_demo_40506d781b7ed975, []int{18}
}
func (m *MoneyAmount) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MoneyAmount.Unmarshal(m, b)
@ -872,7 +872,7 @@ func (m *Money) Reset() { *m = Money{} }
func (m *Money) String() string { return proto.CompactTextString(m) }
func (*Money) ProtoMessage() {}
func (*Money) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{19}
return fileDescriptor_demo_40506d781b7ed975, []int{19}
}
func (m *Money) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Money.Unmarshal(m, b)
@ -918,7 +918,7 @@ func (m *GetSupportedCurrenciesResponse) Reset() { *m = GetSupportedCurr
func (m *GetSupportedCurrenciesResponse) String() string { return proto.CompactTextString(m) }
func (*GetSupportedCurrenciesResponse) ProtoMessage() {}
func (*GetSupportedCurrenciesResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{20}
return fileDescriptor_demo_40506d781b7ed975, []int{20}
}
func (m *GetSupportedCurrenciesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetSupportedCurrenciesResponse.Unmarshal(m, b)
@ -945,7 +945,7 @@ func (m *GetSupportedCurrenciesResponse) GetCurrencyCodes() []string {
return nil
}
type ConversionRequest struct {
type CurrencyConversionRequest struct {
From *Money `protobuf:"bytes,1,opt,name=from" json:"from,omitempty"`
// The 3-letter currency code defined in ISO 4217.
ToCode string `protobuf:"bytes,2,opt,name=to_code,json=toCode" json:"to_code,omitempty"`
@ -954,82 +954,44 @@ type ConversionRequest struct {
XXX_sizecache int32 `json:"-"`
}
func (m *ConversionRequest) Reset() { *m = ConversionRequest{} }
func (m *ConversionRequest) String() string { return proto.CompactTextString(m) }
func (*ConversionRequest) ProtoMessage() {}
func (*ConversionRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{21}
func (m *CurrencyConversionRequest) Reset() { *m = CurrencyConversionRequest{} }
func (m *CurrencyConversionRequest) String() string { return proto.CompactTextString(m) }
func (*CurrencyConversionRequest) ProtoMessage() {}
func (*CurrencyConversionRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_40506d781b7ed975, []int{21}
}
func (m *ConversionRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ConversionRequest.Unmarshal(m, b)
func (m *CurrencyConversionRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CurrencyConversionRequest.Unmarshal(m, b)
}
func (m *ConversionRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ConversionRequest.Marshal(b, m, deterministic)
func (m *CurrencyConversionRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_CurrencyConversionRequest.Marshal(b, m, deterministic)
}
func (dst *ConversionRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_ConversionRequest.Merge(dst, src)
func (dst *CurrencyConversionRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_CurrencyConversionRequest.Merge(dst, src)
}
func (m *ConversionRequest) XXX_Size() int {
return xxx_messageInfo_ConversionRequest.Size(m)
func (m *CurrencyConversionRequest) XXX_Size() int {
return xxx_messageInfo_CurrencyConversionRequest.Size(m)
}
func (m *ConversionRequest) XXX_DiscardUnknown() {
xxx_messageInfo_ConversionRequest.DiscardUnknown(m)
func (m *CurrencyConversionRequest) XXX_DiscardUnknown() {
xxx_messageInfo_CurrencyConversionRequest.DiscardUnknown(m)
}
var xxx_messageInfo_ConversionRequest proto.InternalMessageInfo
var xxx_messageInfo_CurrencyConversionRequest proto.InternalMessageInfo
func (m *ConversionRequest) GetFrom() *Money {
func (m *CurrencyConversionRequest) GetFrom() *Money {
if m != nil {
return m.From
}
return nil
}
func (m *ConversionRequest) GetToCode() string {
func (m *CurrencyConversionRequest) GetToCode() string {
if m != nil {
return m.ToCode
}
return ""
}
type ConversionResponse struct {
Result *Money `protobuf:"bytes,1,opt,name=result" json:"result,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ConversionResponse) Reset() { *m = ConversionResponse{} }
func (m *ConversionResponse) String() string { return proto.CompactTextString(m) }
func (*ConversionResponse) ProtoMessage() {}
func (*ConversionResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{22}
}
func (m *ConversionResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ConversionResponse.Unmarshal(m, b)
}
func (m *ConversionResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ConversionResponse.Marshal(b, m, deterministic)
}
func (dst *ConversionResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_ConversionResponse.Merge(dst, src)
}
func (m *ConversionResponse) XXX_Size() int {
return xxx_messageInfo_ConversionResponse.Size(m)
}
func (m *ConversionResponse) XXX_DiscardUnknown() {
xxx_messageInfo_ConversionResponse.DiscardUnknown(m)
}
var xxx_messageInfo_ConversionResponse proto.InternalMessageInfo
func (m *ConversionResponse) GetResult() *Money {
if m != nil {
return m.Result
}
return nil
}
type CreditCardInfo struct {
CreditCardNumber string `protobuf:"bytes,1,opt,name=credit_card_number,json=creditCardNumber" json:"credit_card_number,omitempty"`
CreditCardCvv int32 `protobuf:"varint,2,opt,name=credit_card_cvv,json=creditCardCvv" json:"credit_card_cvv,omitempty"`
@ -1044,7 +1006,7 @@ func (m *CreditCardInfo) Reset() { *m = CreditCardInfo{} }
func (m *CreditCardInfo) String() string { return proto.CompactTextString(m) }
func (*CreditCardInfo) ProtoMessage() {}
func (*CreditCardInfo) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{23}
return fileDescriptor_demo_40506d781b7ed975, []int{22}
}
func (m *CreditCardInfo) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreditCardInfo.Unmarshal(m, b)
@ -1104,7 +1066,7 @@ func (m *ChargeRequest) Reset() { *m = ChargeRequest{} }
func (m *ChargeRequest) String() string { return proto.CompactTextString(m) }
func (*ChargeRequest) ProtoMessage() {}
func (*ChargeRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{24}
return fileDescriptor_demo_40506d781b7ed975, []int{23}
}
func (m *ChargeRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ChargeRequest.Unmarshal(m, b)
@ -1149,7 +1111,7 @@ func (m *ChargeResponse) Reset() { *m = ChargeResponse{} }
func (m *ChargeResponse) String() string { return proto.CompactTextString(m) }
func (*ChargeResponse) ProtoMessage() {}
func (*ChargeResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{25}
return fileDescriptor_demo_40506d781b7ed975, []int{24}
}
func (m *ChargeResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ChargeResponse.Unmarshal(m, b)
@ -1188,7 +1150,7 @@ func (m *OrderItem) Reset() { *m = OrderItem{} }
func (m *OrderItem) String() string { return proto.CompactTextString(m) }
func (*OrderItem) ProtoMessage() {}
func (*OrderItem) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{26}
return fileDescriptor_demo_40506d781b7ed975, []int{25}
}
func (m *OrderItem) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_OrderItem.Unmarshal(m, b)
@ -1237,7 +1199,7 @@ func (m *OrderResult) Reset() { *m = OrderResult{} }
func (m *OrderResult) String() string { return proto.CompactTextString(m) }
func (*OrderResult) ProtoMessage() {}
func (*OrderResult) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{27}
return fileDescriptor_demo_40506d781b7ed975, []int{26}
}
func (m *OrderResult) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_OrderResult.Unmarshal(m, b)
@ -1304,7 +1266,7 @@ func (m *SendOrderConfirmationRequest) Reset() { *m = SendOrderConfirmat
func (m *SendOrderConfirmationRequest) String() string { return proto.CompactTextString(m) }
func (*SendOrderConfirmationRequest) ProtoMessage() {}
func (*SendOrderConfirmationRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{28}
return fileDescriptor_demo_40506d781b7ed975, []int{27}
}
func (m *SendOrderConfirmationRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SendOrderConfirmationRequest.Unmarshal(m, b)
@ -1351,7 +1313,7 @@ func (m *CreateOrderRequest) Reset() { *m = CreateOrderRequest{} }
func (m *CreateOrderRequest) String() string { return proto.CompactTextString(m) }
func (*CreateOrderRequest) ProtoMessage() {}
func (*CreateOrderRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{29}
return fileDescriptor_demo_40506d781b7ed975, []int{28}
}
func (m *CreateOrderRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateOrderRequest.Unmarshal(m, b)
@ -1404,7 +1366,7 @@ func (m *CreateOrderResponse) Reset() { *m = CreateOrderResponse{} }
func (m *CreateOrderResponse) String() string { return proto.CompactTextString(m) }
func (*CreateOrderResponse) ProtoMessage() {}
func (*CreateOrderResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{30}
return fileDescriptor_demo_40506d781b7ed975, []int{29}
}
func (m *CreateOrderResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateOrderResponse.Unmarshal(m, b)
@ -1453,7 +1415,7 @@ func (m *PlaceOrderRequest) Reset() { *m = PlaceOrderRequest{} }
func (m *PlaceOrderRequest) String() string { return proto.CompactTextString(m) }
func (*PlaceOrderRequest) ProtoMessage() {}
func (*PlaceOrderRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{31}
return fileDescriptor_demo_40506d781b7ed975, []int{30}
}
func (m *PlaceOrderRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PlaceOrderRequest.Unmarshal(m, b)
@ -1519,7 +1481,7 @@ func (m *PlaceOrderResponse) Reset() { *m = PlaceOrderResponse{} }
func (m *PlaceOrderResponse) String() string { return proto.CompactTextString(m) }
func (*PlaceOrderResponse) ProtoMessage() {}
func (*PlaceOrderResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_d65f84bf2547388d, []int{32}
return fileDescriptor_demo_40506d781b7ed975, []int{31}
}
func (m *PlaceOrderResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PlaceOrderResponse.Unmarshal(m, b)
@ -1568,8 +1530,7 @@ func init() {
proto.RegisterType((*MoneyAmount)(nil), "hipstershop.MoneyAmount")
proto.RegisterType((*Money)(nil), "hipstershop.Money")
proto.RegisterType((*GetSupportedCurrenciesResponse)(nil), "hipstershop.GetSupportedCurrenciesResponse")
proto.RegisterType((*ConversionRequest)(nil), "hipstershop.ConversionRequest")
proto.RegisterType((*ConversionResponse)(nil), "hipstershop.ConversionResponse")
proto.RegisterType((*CurrencyConversionRequest)(nil), "hipstershop.CurrencyConversionRequest")
proto.RegisterType((*CreditCardInfo)(nil), "hipstershop.CreditCardInfo")
proto.RegisterType((*ChargeRequest)(nil), "hipstershop.ChargeRequest")
proto.RegisterType((*ChargeResponse)(nil), "hipstershop.ChargeResponse")
@ -2016,7 +1977,7 @@ var _ShippingService_serviceDesc = grpc.ServiceDesc{
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type CurrencyServiceClient interface {
GetSupportedCurrencies(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*GetSupportedCurrenciesResponse, error)
Convert(ctx context.Context, in *ConversionRequest, opts ...grpc.CallOption) (*ConversionResponse, error)
Convert(ctx context.Context, in *CurrencyConversionRequest, opts ...grpc.CallOption) (*Money, error)
}
type currencyServiceClient struct {
@ -2036,8 +1997,8 @@ func (c *currencyServiceClient) GetSupportedCurrencies(ctx context.Context, in *
return out, nil
}
func (c *currencyServiceClient) Convert(ctx context.Context, in *ConversionRequest, opts ...grpc.CallOption) (*ConversionResponse, error) {
out := new(ConversionResponse)
func (c *currencyServiceClient) Convert(ctx context.Context, in *CurrencyConversionRequest, opts ...grpc.CallOption) (*Money, error) {
out := new(Money)
err := c.cc.Invoke(ctx, "/hipstershop.CurrencyService/Convert", in, out, opts...)
if err != nil {
return nil, err
@ -2048,7 +2009,7 @@ func (c *currencyServiceClient) Convert(ctx context.Context, in *ConversionReque
// CurrencyServiceServer is the server API for CurrencyService service.
type CurrencyServiceServer interface {
GetSupportedCurrencies(context.Context, *Empty) (*GetSupportedCurrenciesResponse, error)
Convert(context.Context, *ConversionRequest) (*ConversionResponse, error)
Convert(context.Context, *CurrencyConversionRequest) (*Money, error)
}
func RegisterCurrencyServiceServer(s *grpc.Server, srv CurrencyServiceServer) {
@ -2074,7 +2035,7 @@ func _CurrencyService_GetSupportedCurrencies_Handler(srv interface{}, ctx contex
}
func _CurrencyService_Convert_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ConversionRequest)
in := new(CurrencyConversionRequest)
if err := dec(in); err != nil {
return nil, err
}
@ -2086,7 +2047,7 @@ func _CurrencyService_Convert_Handler(srv interface{}, ctx context.Context, dec
FullMethod: "/hipstershop.CurrencyService/Convert",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(CurrencyServiceServer).Convert(ctx, req.(*ConversionRequest))
return srv.(CurrencyServiceServer).Convert(ctx, req.(*CurrencyConversionRequest))
}
return interceptor(ctx, in, info, handler)
}
@ -2333,101 +2294,100 @@ var _CheckoutService_serviceDesc = grpc.ServiceDesc{
Metadata: "demo.proto",
}
func init() { proto.RegisterFile("demo.proto", fileDescriptor_demo_d65f84bf2547388d) }
func init() { proto.RegisterFile("demo.proto", fileDescriptor_demo_40506d781b7ed975) }
var fileDescriptor_demo_d65f84bf2547388d = []byte{
// 1482 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x58, 0xdd, 0x72, 0xd3, 0x46,
0x1b, 0x8e, 0x92, 0x38, 0xb6, 0x5f, 0xc7, 0x4e, 0xb2, 0x24, 0x7c, 0x46, 0x81, 0x90, 0x6f, 0x33,
0x1f, 0x5f, 0xf8, 0x69, 0x06, 0x42, 0x3b, 0x1c, 0x94, 0x16, 0x18, 0x93, 0x31, 0x9e, 0x81, 0x42,
0x15, 0xe8, 0xb4, 0xc3, 0x0c, 0x1e, 0x21, 0x6d, 0xb0, 0x8a, 0xa5, 0x15, 0xab, 0x55, 0xa6, 0x66,
0x7a, 0x44, 0x6f, 0xa4, 0x47, 0x3d, 0xe8, 0x05, 0xf4, 0xa8, 0x57, 0xd0, 0xf3, 0xde, 0x42, 0xaf,
0xa3, 0xb3, 0xab, 0x5d, 0xfd, 0x59, 0x4e, 0xc2, 0x49, 0x7b, 0xe6, 0xdd, 0x7d, 0xf6, 0x7d, 0x9f,
0x7d, 0xff, 0x65, 0x00, 0x97, 0xf8, 0x74, 0x2f, 0x64, 0x94, 0x53, 0xd4, 0x1a, 0x79, 0x61, 0xc4,
0x09, 0x8b, 0x46, 0x34, 0xc4, 0x07, 0xd0, 0xe8, 0xd9, 0x8c, 0x0f, 0x38, 0xf1, 0xd1, 0x25, 0x80,
0x90, 0x51, 0x37, 0x76, 0xf8, 0xd0, 0x73, 0xbb, 0xc6, 0xb6, 0xb1, 0xdb, 0xb4, 0x9a, 0x6a, 0x67,
0xe0, 0x22, 0x13, 0x1a, 0xef, 0x62, 0x3b, 0xe0, 0x1e, 0x9f, 0x74, 0xe7, 0xb7, 0x8d, 0xdd, 0x9a,
0x95, 0xae, 0xf1, 0x73, 0xe8, 0x3c, 0x70, 0x5d, 0x21, 0xc5, 0x22, 0xef, 0x62, 0x12, 0x71, 0xf4,
0x1f, 0xa8, 0xc7, 0x11, 0x61, 0x99, 0xa4, 0x25, 0xb1, 0x1c, 0xb8, 0xe8, 0x2a, 0x2c, 0x7a, 0x9c,
0xf8, 0x52, 0x44, 0x6b, 0x7f, 0x63, 0x2f, 0xc7, 0x66, 0x4f, 0x53, 0xb1, 0x24, 0x04, 0x5f, 0x87,
0xd5, 0x03, 0x3f, 0xe4, 0x13, 0xb1, 0x7d, 0x9a, 0x5c, 0x7c, 0x15, 0x3a, 0x7d, 0xc2, 0xcf, 0x04,
0x7d, 0x0c, 0x8b, 0x02, 0x37, 0x9b, 0xe3, 0x75, 0xa8, 0x09, 0x02, 0x51, 0x77, 0x7e, 0x7b, 0x61,
0x36, 0xc9, 0x04, 0x83, 0xeb, 0x50, 0x93, 0x2c, 0xf1, 0x37, 0x60, 0x3e, 0xf6, 0x22, 0x6e, 0x11,
0x87, 0xfa, 0x3e, 0x09, 0x5c, 0x9b, 0x7b, 0x34, 0x88, 0x4e, 0x35, 0xc8, 0x65, 0x68, 0x65, 0x66,
0x4f, 0x54, 0x36, 0x2d, 0x48, 0xed, 0x1e, 0xe1, 0x2f, 0x61, 0xb3, 0x52, 0x6e, 0x14, 0xd2, 0x20,
0x22, 0xe5, 0xfb, 0xc6, 0xd4, 0xfd, 0x9f, 0x0d, 0xa8, 0x3f, 0x4b, 0x96, 0xa8, 0x03, 0xf3, 0x8a,
0x40, 0xcd, 0x9a, 0xf7, 0x5c, 0x84, 0x60, 0x31, 0xb0, 0x7d, 0x22, 0xbd, 0xd1, 0xb4, 0xe4, 0x6f,
0xb4, 0x0d, 0x2d, 0x97, 0x44, 0x0e, 0xf3, 0x42, 0xa1, 0xa8, 0xbb, 0x20, 0x8f, 0xf2, 0x5b, 0xa8,
0x0b, 0xf5, 0xd0, 0x73, 0x78, 0xcc, 0x48, 0x77, 0x51, 0x9e, 0xea, 0x25, 0xfa, 0x0c, 0x9a, 0x21,
0xf3, 0x1c, 0x32, 0x8c, 0x23, 0xb7, 0x5b, 0x93, 0x2e, 0xee, 0x16, 0xac, 0xf7, 0x84, 0x06, 0x64,
0xf2, 0xc0, 0xa7, 0x71, 0xc0, 0xad, 0x86, 0x84, 0xbe, 0x88, 0x5c, 0xfc, 0x08, 0xd6, 0xc5, 0x13,
0x15, 0xcb, 0xec, 0x6d, 0x37, 0xa1, 0xa1, 0x1e, 0x92, 0x3c, 0xac, 0xb5, 0xbf, 0x5e, 0x90, 0xa6,
0x2e, 0x58, 0x29, 0x0a, 0xef, 0xc0, 0x5a, 0x9f, 0x68, 0x41, 0xda, 0xf6, 0xa5, 0x57, 0xe3, 0x4f,
0x60, 0xe3, 0x90, 0xd8, 0xcc, 0x19, 0x65, 0x0a, 0x13, 0xe0, 0x3a, 0xd4, 0xde, 0xc5, 0x84, 0x4d,
0x94, 0x8b, 0x92, 0x05, 0x7e, 0x04, 0xe7, 0xcb, 0x70, 0xc5, 0x6f, 0x0f, 0xea, 0x8c, 0x44, 0xf1,
0xf8, 0x14, 0x7a, 0x1a, 0x84, 0x03, 0x58, 0xe9, 0x13, 0xfe, 0x75, 0x4c, 0x39, 0xd1, 0x2a, 0xf7,
0xa0, 0x6e, 0xbb, 0x2e, 0x23, 0x51, 0x24, 0x95, 0x96, 0x45, 0x3c, 0x48, 0xce, 0x2c, 0x0d, 0xfa,
0xb8, 0xd8, 0xec, 0xc3, 0x6a, 0xa6, 0x4f, 0x71, 0xbe, 0x0d, 0x0d, 0x87, 0x46, 0x5c, 0x7a, 0xc8,
0x38, 0xc5, 0x43, 0x75, 0x81, 0x14, 0x0e, 0xa2, 0xb0, 0x7a, 0x38, 0xf2, 0xc2, 0xa7, 0xcc, 0x25,
0xec, 0x1f, 0x61, 0xfe, 0x29, 0xac, 0xe5, 0x14, 0x66, 0xa1, 0xce, 0x99, 0xed, 0xbc, 0xf5, 0x82,
0x37, 0x59, 0x1e, 0x81, 0xde, 0x1a, 0xb8, 0xf8, 0x17, 0x03, 0xea, 0x4a, 0x2f, 0xda, 0x85, 0xd5,
0x88, 0x33, 0x42, 0xf8, 0x50, 0x11, 0x18, 0xde, 0x52, 0x37, 0x3a, 0xc9, 0xbe, 0x02, 0xde, 0xaa,
0x40, 0xee, 0xab, 0x84, 0x28, 0x22, 0xf7, 0x45, 0xba, 0x38, 0xa2, 0xfe, 0x25, 0x39, 0x21, 0x7f,
0x8b, 0x64, 0x70, 0x84, 0xb1, 0xd8, 0x44, 0x27, 0x83, 0x5a, 0xa2, 0x0b, 0xd0, 0x78, 0xef, 0x85,
0x43, 0x87, 0xba, 0x44, 0xe6, 0x42, 0xcd, 0xaa, 0xbf, 0xf7, 0xc2, 0x1e, 0x75, 0x09, 0xee, 0x43,
0x2b, 0x67, 0x67, 0x21, 0xc3, 0x25, 0x8e, 0xe7, 0xdb, 0x63, 0x49, 0xb1, 0x6d, 0xe9, 0x25, 0xda,
0x02, 0x38, 0x62, 0xb6, 0x23, 0xd2, 0xce, 0x1e, 0x4b, 0x56, 0x6d, 0x2b, 0xb7, 0x83, 0x5f, 0x41,
0x4d, 0x0a, 0x42, 0x3b, 0xd0, 0x76, 0x62, 0xc6, 0x48, 0xe0, 0x4c, 0x12, 0x8d, 0xc9, 0x5b, 0x97,
0xf5, 0xa6, 0x50, 0x8b, 0x6e, 0xc2, 0x92, 0x2d, 0x35, 0xaa, 0xf2, 0x3b, 0xdb, 0xf3, 0x0a, 0x87,
0xfb, 0xb0, 0xd5, 0x27, 0xfc, 0x30, 0x0e, 0x43, 0xca, 0x38, 0x71, 0x7b, 0x89, 0x34, 0x8f, 0x64,
0x39, 0xf0, 0x3f, 0xe8, 0x14, 0x14, 0xeb, 0x12, 0xd4, 0xce, 0x6b, 0x8e, 0xf0, 0x73, 0x58, 0xeb,
0xd1, 0xe0, 0x98, 0xb0, 0xc8, 0xa3, 0x81, 0x0e, 0xa1, 0x2b, 0xb0, 0x78, 0xc4, 0xa8, 0xaf, 0xe2,
0x07, 0x4d, 0xb3, 0xb1, 0xe4, 0xb9, 0x28, 0x9e, 0x9c, 0x26, 0xcf, 0x4a, 0x1c, 0xb3, 0xc4, 0xa9,
0xb4, 0xe3, 0x7d, 0x40, 0x79, 0xa9, 0x8a, 0xd2, 0x35, 0x58, 0x4a, 0x32, 0xee, 0x04, 0xc1, 0x0a,
0x81, 0xff, 0x32, 0xa0, 0xd3, 0x63, 0xc4, 0xf5, 0x44, 0xef, 0x70, 0x07, 0xc1, 0x11, 0x45, 0x37,
0x00, 0x39, 0x72, 0x67, 0xe8, 0xd8, 0xcc, 0x1d, 0x06, 0xb1, 0xff, 0x9a, 0x30, 0x65, 0xcf, 0x55,
0x27, 0xc5, 0x7e, 0x25, 0xf7, 0xd1, 0x15, 0x58, 0xc9, 0xa3, 0x9d, 0xe3, 0x63, 0xd5, 0x1e, 0xdb,
0x19, 0xb4, 0x77, 0x7c, 0x8c, 0xbe, 0x80, 0xcd, 0x3c, 0x8e, 0xfc, 0x10, 0x7a, 0x4c, 0x96, 0xf2,
0xe1, 0x84, 0xd8, 0x4c, 0x86, 0x54, 0xcd, 0xea, 0x66, 0x77, 0x0e, 0x52, 0xc0, 0x77, 0xc4, 0x66,
0xe8, 0x1e, 0x5c, 0x9c, 0x71, 0xdd, 0xa7, 0x01, 0x1f, 0xc9, 0xd8, 0xab, 0x59, 0x17, 0xaa, 0xee,
0x3f, 0x11, 0x00, 0x3c, 0x81, 0x76, 0x6f, 0x64, 0xb3, 0x37, 0x69, 0xe5, 0xb9, 0x96, 0x06, 0xc3,
0x09, 0x56, 0x4a, 0x10, 0xe8, 0x2e, 0xb4, 0x72, 0xda, 0x55, 0xf4, 0x6c, 0x16, 0x33, 0xb8, 0x60,
0x44, 0x0b, 0x32, 0x26, 0xf8, 0x0e, 0x74, 0xb4, 0xea, 0x2c, 0x68, 0x38, 0xb3, 0x83, 0x28, 0x89,
0xe3, 0x2c, 0x99, 0xdb, 0xb9, 0xdd, 0x81, 0x8b, 0x5f, 0x41, 0x53, 0x56, 0x00, 0x39, 0x9f, 0xe8,
0xc9, 0xc1, 0x38, 0x75, 0x72, 0x10, 0x71, 0x25, 0x2a, 0x97, 0xe2, 0x59, 0x19, 0x57, 0xe2, 0x1c,
0x7f, 0x98, 0x87, 0x96, 0x2e, 0x31, 0xf1, 0x98, 0x8b, 0x8c, 0xa5, 0x62, 0x99, 0x11, 0xaa, 0xcb,
0xf5, 0xc0, 0x45, 0x37, 0x61, 0x3d, 0x1a, 0x79, 0x61, 0x28, 0x6a, 0x4f, 0xbe, 0x08, 0x25, 0xf1,
0x88, 0xf4, 0xd9, 0xf3, 0xb4, 0x18, 0xa1, 0x3b, 0xd0, 0x4e, 0x6f, 0x48, 0x36, 0x0b, 0x33, 0xd9,
0x2c, 0x6b, 0x60, 0x8f, 0x46, 0x1c, 0xdd, 0x83, 0xd5, 0xf4, 0xa2, 0xae, 0xb0, 0x8b, 0x27, 0x54,
0xd8, 0x15, 0x8d, 0xd6, 0xa5, 0xef, 0x86, 0xae, 0xb4, 0x35, 0x59, 0x69, 0xcf, 0x17, 0x6e, 0xa5,
0x06, 0xd5, 0xa5, 0xd6, 0x85, 0x8b, 0x87, 0x24, 0x70, 0xe5, 0x7e, 0x8f, 0x06, 0x47, 0x1e, 0xf3,
0x65, 0xd8, 0xe4, 0x9a, 0x22, 0xf1, 0x6d, 0x6f, 0xac, 0x9b, 0xa2, 0x5c, 0xa0, 0x3d, 0xa8, 0x49,
0xd3, 0x54, 0x56, 0x92, 0x9c, 0x4d, 0xad, 0x04, 0x86, 0x3f, 0x18, 0x80, 0x7a, 0x8c, 0xd8, 0x9c,
0x14, 0x9a, 0xc8, 0xcc, 0xb1, 0x68, 0x07, 0xda, 0xf2, 0x40, 0x57, 0x11, 0x65, 0xe8, 0x65, 0xb1,
0xa9, 0xaa, 0xd0, 0x24, 0xdf, 0x82, 0x16, 0xce, 0xd0, 0x82, 0xf0, 0x8f, 0x70, 0xae, 0xc0, 0x41,
0x45, 0x63, 0x6a, 0x2f, 0xe3, 0x0c, 0xf6, 0x9a, 0xf6, 0xeb, 0xfc, 0xd9, 0xfc, 0x8a, 0xff, 0x34,
0x60, 0xed, 0xd9, 0xd8, 0x76, 0xfe, 0x45, 0x0b, 0x64, 0xce, 0xac, 0xe5, 0x9d, 0x59, 0x4a, 0xef,
0xa5, 0x8f, 0x4b, 0xef, 0x87, 0x80, 0xf2, 0xcf, 0x4a, 0x67, 0x23, 0x15, 0x20, 0xc6, 0x99, 0x02,
0x64, 0xff, 0x0f, 0x03, 0x5a, 0x22, 0x8d, 0x0f, 0x09, 0x3b, 0xf6, 0x1c, 0x82, 0xee, 0xca, 0x56,
0x2e, 0x33, 0x7f, 0xb3, 0xfc, 0xa6, 0xdc, 0x97, 0x86, 0x59, 0xb4, 0x7b, 0x32, 0x8a, 0xcf, 0xa1,
0xcf, 0xa1, 0xae, 0x3e, 0x07, 0x4a, 0xb7, 0x8b, 0x1f, 0x09, 0xe6, 0xda, 0x54, 0x19, 0xc1, 0x73,
0xe8, 0x3e, 0x34, 0xd3, 0x0f, 0x0f, 0x74, 0x69, 0x5a, 0x7e, 0x5e, 0x40, 0xa5, 0xfa, 0xfd, 0x9f,
0x0c, 0xd8, 0x28, 0x0e, 0xec, 0xfa, 0x59, 0xdf, 0xc3, 0xb9, 0x8a, 0x69, 0x1e, 0xfd, 0xbf, 0x20,
0x66, 0xf6, 0x77, 0x84, 0xb9, 0x7b, 0x3a, 0x30, 0x71, 0x80, 0x60, 0x31, 0x0f, 0x1b, 0x6a, 0x06,
0xed, 0xd9, 0xdc, 0x1e, 0xd3, 0x37, 0x9a, 0x45, 0x1f, 0x96, 0xf3, 0x03, 0x37, 0xaa, 0x78, 0x85,
0xf9, 0xdf, 0x29, 0x4d, 0xe5, 0xf9, 0x17, 0xcf, 0xa1, 0x87, 0x00, 0xd9, 0xbc, 0x8d, 0xb6, 0xca,
0xa6, 0x2e, 0x0e, 0xe2, 0x66, 0xe5, 0x78, 0x8c, 0xe7, 0xd0, 0x4b, 0xe8, 0x14, 0x27, 0x6c, 0x84,
0x0b, 0xc8, 0xca, 0x69, 0xdd, 0xdc, 0x39, 0x11, 0x93, 0x5a, 0xe1, 0x57, 0x03, 0x56, 0x0e, 0x55,
0x1e, 0xea, 0xf7, 0x0f, 0xa0, 0xa1, 0x07, 0x63, 0x74, 0xb1, 0x4c, 0x3a, 0x3f, 0x9f, 0x9b, 0x97,
0x66, 0x9c, 0xa6, 0x16, 0x78, 0x0c, 0xcd, 0x74, 0x52, 0x2d, 0x05, 0x4b, 0x79, 0x64, 0x36, 0xb7,
0x66, 0x1d, 0xa7, 0x64, 0x7f, 0x37, 0x60, 0x45, 0x27, 0xb7, 0x26, 0xfb, 0x12, 0xce, 0x57, 0xcf,
0x60, 0x95, 0x6e, 0xbb, 0x5e, 0x26, 0x7c, 0xc2, 0xf0, 0x26, 0xe9, 0xd7, 0x93, 0x09, 0xaa, 0xec,
0xbd, 0xa9, 0x69, 0xcd, 0xbc, 0x3c, 0xf3, 0x3c, 0xa5, 0xff, 0x02, 0x3a, 0xcf, 0xec, 0x89, 0x4f,
0x82, 0x34, 0x8d, 0x7b, 0xb0, 0x94, 0xf4, 0x7e, 0x64, 0x16, 0xaf, 0xe7, 0x67, 0x11, 0x73, 0xb3,
0xf2, 0x2c, 0x15, 0x3b, 0x82, 0xe5, 0x03, 0x51, 0xa8, 0xb4, 0xd0, 0x6f, 0xc5, 0x07, 0x5c, 0x45,
0xcb, 0x42, 0x57, 0x4b, 0x21, 0x31, 0xbb, 0xad, 0xcd, 0x48, 0xdc, 0xdf, 0x84, 0xfd, 0x47, 0xc4,
0x79, 0x4b, 0xe3, 0xf4, 0x09, 0x16, 0xb4, 0x72, 0x5d, 0x03, 0x5d, 0x2e, 0xd7, 0xc5, 0x52, 0x4f,
0x33, 0xb7, 0x67, 0x03, 0x52, 0xb3, 0x3f, 0x05, 0xc8, 0x6a, 0x66, 0xc9, 0xf2, 0x53, 0x3d, 0xa2,
0x64, 0xf9, 0xe9, 0x62, 0x8b, 0xe7, 0x5e, 0x2f, 0xc9, 0x7f, 0x77, 0x6e, 0xff, 0x1d, 0x00, 0x00,
0xff, 0xff, 0xfe, 0x73, 0x50, 0xfe, 0xeb, 0x11, 0x00, 0x00,
var fileDescriptor_demo_40506d781b7ed975 = []byte{
// 1466 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x58, 0xdd, 0x72, 0xd3, 0xc6,
0x17, 0x8f, 0x9c, 0x38, 0xb6, 0x8f, 0x63, 0x27, 0x59, 0x12, 0xfe, 0x46, 0x81, 0x90, 0xff, 0x66,
0x4a, 0x43, 0xa1, 0x19, 0x30, 0xed, 0x70, 0x51, 0x5a, 0xca, 0x98, 0x8c, 0xf1, 0x0c, 0x14, 0xaa,
0x40, 0xa7, 0x1d, 0x3a, 0x78, 0x84, 0xb4, 0xc1, 0x2a, 0xd6, 0x07, 0xab, 0x55, 0xa6, 0x66, 0x7a,
0x45, 0x5f, 0xa4, 0x57, 0xbd, 0xe8, 0x03, 0xb4, 0xef, 0xd0, 0xfb, 0xbe, 0x42, 0x9f, 0xa3, 0xb3,
0xab, 0x5d, 0x7d, 0x59, 0x4a, 0xc2, 0x4d, 0x7b, 0xe7, 0xdd, 0xfd, 0xed, 0x39, 0xbf, 0x3d, 0xdf,
0x32, 0x80, 0x4d, 0x5c, 0x7f, 0x3f, 0xa0, 0x3e, 0xf3, 0x51, 0x7b, 0xe2, 0x04, 0x21, 0x23, 0x34,
0x9c, 0xf8, 0x01, 0x3e, 0x80, 0xe6, 0xc0, 0xa4, 0x6c, 0xc4, 0x88, 0x8b, 0x2e, 0x01, 0x04, 0xd4,
0xb7, 0x23, 0x8b, 0x8d, 0x1d, 0xbb, 0xa7, 0xed, 0x68, 0x7b, 0x2d, 0xa3, 0x25, 0x77, 0x46, 0x36,
0xd2, 0xa1, 0xf9, 0x26, 0x32, 0x3d, 0xe6, 0xb0, 0x59, 0xaf, 0xb6, 0xa3, 0xed, 0xd5, 0x8d, 0x64,
0x8d, 0x9f, 0x42, 0xf7, 0x9e, 0x6d, 0x73, 0x29, 0x06, 0x79, 0x13, 0x91, 0x90, 0xa1, 0xff, 0x41,
0x23, 0x0a, 0x09, 0x4d, 0x25, 0x2d, 0xf3, 0xe5, 0xc8, 0x46, 0x57, 0x61, 0xc9, 0x61, 0xc4, 0x15,
0x22, 0xda, 0xfd, 0xcd, 0xfd, 0x0c, 0x9b, 0x7d, 0x45, 0xc5, 0x10, 0x10, 0x7c, 0x0d, 0xd6, 0x0e,
0xdc, 0x80, 0xcd, 0xf8, 0xf6, 0x69, 0x72, 0xf1, 0x55, 0xe8, 0x0e, 0x09, 0x3b, 0x13, 0xf4, 0x21,
0x2c, 0x71, 0x5c, 0x35, 0xc7, 0x6b, 0x50, 0xe7, 0x04, 0xc2, 0x5e, 0x6d, 0x67, 0xb1, 0x9a, 0x64,
0x8c, 0xc1, 0x0d, 0xa8, 0x0b, 0x96, 0xf8, 0x1b, 0xd0, 0x1f, 0x3a, 0x21, 0x33, 0x88, 0xe5, 0xbb,
0x2e, 0xf1, 0x6c, 0x93, 0x39, 0xbe, 0x17, 0x9e, 0x6a, 0x90, 0xcb, 0xd0, 0x4e, 0xcd, 0x1e, 0xab,
0x6c, 0x19, 0x90, 0xd8, 0x3d, 0xc4, 0x5f, 0xc0, 0x56, 0xa9, 0xdc, 0x30, 0xf0, 0xbd, 0x90, 0x14,
0xef, 0x6b, 0x73, 0xf7, 0x7f, 0xd1, 0xa0, 0xf1, 0x24, 0x5e, 0xa2, 0x2e, 0xd4, 0x12, 0x02, 0x35,
0xc7, 0x46, 0x08, 0x96, 0x3c, 0xd3, 0x25, 0xc2, 0x1b, 0x2d, 0x43, 0xfc, 0x46, 0x3b, 0xd0, 0xb6,
0x49, 0x68, 0x51, 0x27, 0xe0, 0x8a, 0x7a, 0x8b, 0xe2, 0x28, 0xbb, 0x85, 0x7a, 0xd0, 0x08, 0x1c,
0x8b, 0x45, 0x94, 0xf4, 0x96, 0xc4, 0xa9, 0x5a, 0xa2, 0x4f, 0xa1, 0x15, 0x50, 0xc7, 0x22, 0xe3,
0x28, 0xb4, 0x7b, 0x75, 0xe1, 0xe2, 0x5e, 0xce, 0x7a, 0x8f, 0x7c, 0x8f, 0xcc, 0xee, 0xb9, 0x7e,
0xe4, 0x31, 0xa3, 0x29, 0xa0, 0xcf, 0x42, 0x1b, 0x3f, 0x80, 0x0d, 0xfe, 0x44, 0xc9, 0x32, 0x7d,
0xdb, 0x0d, 0x68, 0xca, 0x87, 0xc4, 0x0f, 0x6b, 0xf7, 0x37, 0x72, 0xd2, 0xe4, 0x05, 0x23, 0x41,
0xe1, 0x5d, 0x58, 0x1f, 0x12, 0x25, 0x48, 0xd9, 0xbe, 0xf0, 0x6a, 0xfc, 0x31, 0x6c, 0x1e, 0x12,
0x93, 0x5a, 0x93, 0x54, 0x61, 0x0c, 0xdc, 0x80, 0xfa, 0x9b, 0x88, 0xd0, 0x99, 0xc4, 0xc6, 0x0b,
0xfc, 0x00, 0xce, 0x17, 0xe1, 0x92, 0xdf, 0x3e, 0x34, 0x28, 0x09, 0xa3, 0xe9, 0x29, 0xf4, 0x14,
0x08, 0x7b, 0xb0, 0x3a, 0x24, 0xec, 0xeb, 0xc8, 0x67, 0x44, 0xa9, 0xdc, 0x87, 0x86, 0x69, 0xdb,
0x94, 0x84, 0xa1, 0x50, 0x5a, 0x14, 0x71, 0x2f, 0x3e, 0x33, 0x14, 0xe8, 0xfd, 0x62, 0x73, 0x08,
0x6b, 0xa9, 0x3e, 0xc9, 0xf9, 0x16, 0x34, 0x2d, 0x3f, 0x64, 0xc2, 0x43, 0xda, 0x29, 0x1e, 0x6a,
0x70, 0x24, 0x77, 0x90, 0x0f, 0x6b, 0x87, 0x13, 0x27, 0x78, 0x4c, 0x6d, 0x42, 0xff, 0x15, 0xe6,
0x9f, 0xc0, 0x7a, 0x46, 0x61, 0x1a, 0xea, 0x8c, 0x9a, 0xd6, 0x6b, 0xc7, 0x7b, 0x95, 0xe6, 0x11,
0xa8, 0xad, 0x91, 0x8d, 0x7f, 0xd5, 0xa0, 0x21, 0xf5, 0xa2, 0x3d, 0x58, 0x0b, 0x19, 0x25, 0x84,
0x8d, 0x25, 0x81, 0xf1, 0x4d, 0x79, 0xa3, 0x1b, 0xef, 0x4b, 0xe0, 0xcd, 0x12, 0x64, 0x5f, 0x26,
0x44, 0x1e, 0xd9, 0xe7, 0xe9, 0x62, 0xf1, 0xfa, 0x17, 0xe7, 0x84, 0xf8, 0xcd, 0x93, 0xc1, 0xe2,
0xc6, 0xa2, 0x33, 0x95, 0x0c, 0x72, 0x89, 0x2e, 0x40, 0xf3, 0xad, 0x13, 0x8c, 0x2d, 0xdf, 0x26,
0x22, 0x17, 0xea, 0x46, 0xe3, 0xad, 0x13, 0x0c, 0x7c, 0x9b, 0xe0, 0x21, 0xb4, 0x33, 0x76, 0xe6,
0x32, 0x6c, 0x62, 0x39, 0xae, 0x39, 0x15, 0x14, 0x3b, 0x86, 0x5a, 0xa2, 0x6d, 0x80, 0x23, 0x6a,
0x5a, 0x3c, 0xed, 0xcc, 0xa9, 0x60, 0xd5, 0x31, 0x32, 0x3b, 0xf8, 0x05, 0xd4, 0x85, 0x20, 0xb4,
0x0b, 0x1d, 0x2b, 0xa2, 0x94, 0x78, 0xd6, 0x2c, 0xd6, 0x18, 0xbf, 0x75, 0x45, 0x6d, 0x72, 0xb5,
0xe8, 0x06, 0x2c, 0x9b, 0x42, 0xa3, 0x2c, 0xbf, 0xd5, 0x9e, 0x97, 0x38, 0x3c, 0x84, 0xed, 0x21,
0x61, 0x87, 0x51, 0x10, 0xf8, 0x94, 0x11, 0x7b, 0x10, 0x4b, 0x73, 0x48, 0x9a, 0x03, 0x1f, 0x40,
0x37, 0xa7, 0x58, 0x95, 0xa0, 0x4e, 0x56, 0x73, 0x88, 0xbf, 0x87, 0x0b, 0x83, 0x64, 0xc3, 0x3b,
0x26, 0x34, 0x74, 0x7c, 0x4f, 0x85, 0xd2, 0x15, 0x58, 0x3a, 0xa2, 0xbe, 0x2b, 0xe3, 0x08, 0xcd,
0xb3, 0x32, 0xc4, 0x39, 0x2f, 0xa2, 0xcc, 0x8f, 0x9f, 0x17, 0x3b, 0x68, 0x99, 0xf9, 0xc2, 0x9e,
0x7f, 0x6b, 0xd0, 0x1d, 0x50, 0x62, 0x3b, 0xbc, 0x03, 0xd8, 0x23, 0xef, 0xc8, 0x47, 0xd7, 0x01,
0x59, 0x62, 0x67, 0x6c, 0x99, 0xd4, 0x1e, 0x7b, 0x91, 0xfb, 0x92, 0x50, 0x69, 0x95, 0x35, 0x2b,
0xc1, 0x7e, 0x25, 0xf6, 0xd1, 0x15, 0x58, 0xcd, 0xa2, 0xad, 0xe3, 0x63, 0xd9, 0xe4, 0x3a, 0x29,
0x74, 0x70, 0x7c, 0x8c, 0x3e, 0x87, 0xad, 0x2c, 0x8e, 0xfc, 0x18, 0x38, 0x54, 0x14, 0xe4, 0xf1,
0x8c, 0x98, 0x54, 0x04, 0x46, 0xdd, 0xe8, 0xa5, 0x77, 0x0e, 0x12, 0xc0, 0x77, 0xc4, 0xa4, 0xe8,
0x2e, 0x5c, 0xac, 0xb8, 0xee, 0xfa, 0x1e, 0x9b, 0x88, 0x08, 0xaa, 0x1b, 0x17, 0xca, 0xee, 0x3f,
0xe2, 0x00, 0x3c, 0x83, 0xce, 0x60, 0x62, 0xd2, 0x57, 0x49, 0xfd, 0xf8, 0x28, 0x71, 0x69, 0xb5,
0xf1, 0x24, 0x02, 0xdd, 0x81, 0x76, 0x46, 0xbb, 0x8c, 0x81, 0xad, 0x7c, 0x1e, 0xe6, 0x8c, 0x68,
0x40, 0xca, 0x04, 0xdf, 0x86, 0xae, 0x52, 0x9d, 0xba, 0x9e, 0x51, 0xd3, 0x0b, 0xe3, 0x68, 0x4c,
0x53, 0xb2, 0x93, 0xd9, 0x1d, 0xd9, 0xf8, 0x05, 0xb4, 0x44, 0x1e, 0x8b, 0x29, 0x43, 0xf5, 0x7f,
0xed, 0xd4, 0xfe, 0xcf, 0xa3, 0x82, 0xd7, 0x1f, 0xc9, 0xb3, 0x34, 0x2a, 0xf8, 0x39, 0x7e, 0x57,
0x83, 0xb6, 0x2a, 0x14, 0xd1, 0x94, 0xf1, 0xbc, 0xf3, 0xf9, 0x32, 0x25, 0xd4, 0x10, 0xeb, 0x91,
0x8d, 0x6e, 0xc0, 0x46, 0x38, 0x71, 0x82, 0x80, 0x57, 0x90, 0x6c, 0x29, 0x89, 0xa3, 0x09, 0xa9,
0xb3, 0xa7, 0x49, 0x49, 0x41, 0xb7, 0xa1, 0x93, 0xdc, 0x10, 0x6c, 0x16, 0x2b, 0xd9, 0xac, 0x28,
0xe0, 0xc0, 0x0f, 0x19, 0xba, 0x0b, 0x6b, 0xc9, 0x45, 0x55, 0x27, 0x97, 0x4e, 0xa8, 0x93, 0xab,
0x0a, 0xad, 0x0a, 0xd8, 0x75, 0x55, 0x2f, 0xeb, 0xa2, 0x5e, 0x9e, 0xcf, 0xdd, 0x4a, 0x0c, 0xaa,
0x0a, 0xa6, 0x0d, 0x17, 0x0f, 0x89, 0x67, 0x8b, 0xfd, 0x81, 0xef, 0x1d, 0x39, 0xd4, 0x15, 0x61,
0x93, 0x69, 0x6d, 0xc4, 0x35, 0x9d, 0xa9, 0x6a, 0x6d, 0x62, 0x81, 0xf6, 0xa1, 0x2e, 0x4c, 0x53,
0x5a, 0x0f, 0x32, 0x36, 0x35, 0x62, 0x18, 0x7e, 0xa7, 0x01, 0x1a, 0x50, 0x62, 0x32, 0x92, 0x6b,
0x05, 0x95, 0xc3, 0xcd, 0x2e, 0x74, 0xc4, 0x81, 0xaa, 0x05, 0xd2, 0xd0, 0x2b, 0x7c, 0x53, 0x95,
0x83, 0x6c, 0x23, 0x59, 0x3c, 0x43, 0x23, 0xc1, 0x3f, 0xc1, 0xb9, 0x1c, 0x07, 0x19, 0x8d, 0x89,
0xbd, 0xb4, 0x33, 0xd8, 0x6b, 0xde, 0xaf, 0xb5, 0xb3, 0xf9, 0x15, 0xff, 0xa5, 0xc1, 0xfa, 0x93,
0xa9, 0x69, 0xfd, 0x87, 0x16, 0x48, 0x9d, 0x59, 0xcf, 0x3a, 0xb3, 0x90, 0xde, 0xcb, 0xef, 0x97,
0xde, 0xf7, 0x01, 0x65, 0x9f, 0x95, 0x4c, 0x38, 0x32, 0x40, 0xb4, 0x33, 0x05, 0x48, 0xff, 0x4f,
0x0d, 0xda, 0x3c, 0x8d, 0x0f, 0x09, 0x3d, 0x76, 0x2c, 0x82, 0xee, 0x88, 0x86, 0x2c, 0x32, 0x7f,
0xab, 0xf8, 0xa6, 0xcc, 0xf7, 0x82, 0x9e, 0xb7, 0x7b, 0x3c, 0x50, 0x2f, 0xa0, 0xcf, 0xa0, 0x21,
0x87, 0xfa, 0xc2, 0xed, 0xfc, 0xa8, 0xaf, 0xaf, 0xcf, 0x95, 0x11, 0xbc, 0x80, 0xbe, 0x84, 0x56,
0xf2, 0xf9, 0x80, 0x2e, 0xcd, 0xcb, 0xcf, 0x0a, 0x28, 0x55, 0xdf, 0xff, 0x59, 0x83, 0xcd, 0xfc,
0xd8, 0xad, 0x9e, 0xf5, 0x03, 0x9c, 0x2b, 0x99, 0xc9, 0xd1, 0x87, 0x39, 0x31, 0xd5, 0x5f, 0x03,
0xfa, 0xde, 0xe9, 0xc0, 0xd8, 0x01, 0x9c, 0x45, 0x0d, 0x36, 0xe5, 0x24, 0x39, 0x30, 0x99, 0x39,
0xf5, 0x5f, 0x29, 0x16, 0x43, 0x58, 0xc9, 0x8e, 0xcd, 0xa8, 0xe4, 0x15, 0xfa, 0xff, 0xe7, 0x34,
0x15, 0xa7, 0x58, 0xbc, 0x80, 0xee, 0x03, 0xa4, 0x53, 0x33, 0xda, 0x2e, 0x9a, 0x3a, 0x3f, 0x4e,
0xeb, 0xa5, 0x43, 0x2e, 0x5e, 0x40, 0xcf, 0xa1, 0x9b, 0x9f, 0x93, 0x11, 0xce, 0x21, 0x4b, 0x67,
0x6e, 0x7d, 0xf7, 0x44, 0x4c, 0x62, 0x85, 0xdf, 0x34, 0x58, 0x3d, 0x94, 0x79, 0xa8, 0xde, 0x3f,
0x82, 0xa6, 0x1a, 0x6f, 0xd1, 0xc5, 0x22, 0xe9, 0xec, 0x94, 0xad, 0x5f, 0xaa, 0x38, 0x4d, 0x2c,
0xf0, 0x10, 0x5a, 0xc9, 0xbc, 0x59, 0x08, 0x96, 0xe2, 0xe0, 0xab, 0x6f, 0x57, 0x1d, 0x27, 0x64,
0xff, 0xd0, 0x60, 0x55, 0x25, 0xb7, 0x22, 0xfb, 0x1c, 0xce, 0x97, 0x4f, 0x52, 0xa5, 0x6e, 0xbb,
0x56, 0x24, 0x7c, 0xc2, 0x08, 0x86, 0x17, 0xd0, 0x10, 0x1a, 0xf1, 0x54, 0xc5, 0xd0, 0x95, 0x7c,
0x2e, 0x54, 0xcd, 0x5c, 0x7a, 0x49, 0xa5, 0xc3, 0x0b, 0xfd, 0x67, 0xd0, 0x7d, 0x62, 0xce, 0x5c,
0xe2, 0x25, 0x19, 0x3c, 0x80, 0xe5, 0xb8, 0xed, 0x23, 0x3d, 0x2f, 0x39, 0x3b, 0x86, 0xe8, 0x5b,
0xa5, 0x67, 0x89, 0x41, 0x26, 0xb0, 0x72, 0xc0, 0x6b, 0x94, 0x12, 0xfa, 0x2d, 0xff, 0x02, 0x2b,
0xe9, 0x56, 0xe8, 0x6a, 0x21, 0x1a, 0xaa, 0x3b, 0x5a, 0x45, 0xce, 0xfe, 0xce, 0x4d, 0x3f, 0x21,
0xd6, 0x6b, 0x3f, 0x4a, 0x9e, 0x60, 0x40, 0x3b, 0xd3, 0x30, 0xd0, 0xe5, 0x62, 0x49, 0x2c, 0xb4,
0x33, 0x7d, 0xa7, 0x1a, 0x90, 0x58, 0xfc, 0x31, 0x40, 0x5a, 0x2e, 0x0b, 0x29, 0x33, 0xd7, 0x1e,
0xf4, 0xcb, 0x95, 0xe7, 0x4a, 0xe0, 0xcb, 0x65, 0xf1, 0xf7, 0xcc, 0xad, 0x7f, 0x02, 0x00, 0x00,
0xff, 0xff, 0xdd, 0xe8, 0xfb, 0x77, 0xac, 0x11, 0x00, 0x00,
}

View file

@ -35,7 +35,7 @@ func (m *CartItem) Reset() { *m = CartItem{} }
func (m *CartItem) String() string { return proto.CompactTextString(m) }
func (*CartItem) ProtoMessage() {}
func (*CartItem) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{0}
return fileDescriptor_demo_40506d781b7ed975, []int{0}
}
func (m *CartItem) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CartItem.Unmarshal(m, b)
@ -81,7 +81,7 @@ func (m *AddItemRequest) Reset() { *m = AddItemRequest{} }
func (m *AddItemRequest) String() string { return proto.CompactTextString(m) }
func (*AddItemRequest) ProtoMessage() {}
func (*AddItemRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{1}
return fileDescriptor_demo_40506d781b7ed975, []int{1}
}
func (m *AddItemRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_AddItemRequest.Unmarshal(m, b)
@ -126,7 +126,7 @@ func (m *EmptyCartRequest) Reset() { *m = EmptyCartRequest{} }
func (m *EmptyCartRequest) String() string { return proto.CompactTextString(m) }
func (*EmptyCartRequest) ProtoMessage() {}
func (*EmptyCartRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{2}
return fileDescriptor_demo_40506d781b7ed975, []int{2}
}
func (m *EmptyCartRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_EmptyCartRequest.Unmarshal(m, b)
@ -164,7 +164,7 @@ func (m *GetCartRequest) Reset() { *m = GetCartRequest{} }
func (m *GetCartRequest) String() string { return proto.CompactTextString(m) }
func (*GetCartRequest) ProtoMessage() {}
func (*GetCartRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{3}
return fileDescriptor_demo_40506d781b7ed975, []int{3}
}
func (m *GetCartRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetCartRequest.Unmarshal(m, b)
@ -203,7 +203,7 @@ func (m *Cart) Reset() { *m = Cart{} }
func (m *Cart) String() string { return proto.CompactTextString(m) }
func (*Cart) ProtoMessage() {}
func (*Cart) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{4}
return fileDescriptor_demo_40506d781b7ed975, []int{4}
}
func (m *Cart) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Cart.Unmarshal(m, b)
@ -247,7 +247,7 @@ func (m *Empty) Reset() { *m = Empty{} }
func (m *Empty) String() string { return proto.CompactTextString(m) }
func (*Empty) ProtoMessage() {}
func (*Empty) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{5}
return fileDescriptor_demo_40506d781b7ed975, []int{5}
}
func (m *Empty) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Empty.Unmarshal(m, b)
@ -279,7 +279,7 @@ func (m *ListRecommendationsRequest) Reset() { *m = ListRecommendationsR
func (m *ListRecommendationsRequest) String() string { return proto.CompactTextString(m) }
func (*ListRecommendationsRequest) ProtoMessage() {}
func (*ListRecommendationsRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{6}
return fileDescriptor_demo_40506d781b7ed975, []int{6}
}
func (m *ListRecommendationsRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListRecommendationsRequest.Unmarshal(m, b)
@ -324,7 +324,7 @@ func (m *ListRecommendationsResponse) Reset() { *m = ListRecommendations
func (m *ListRecommendationsResponse) String() string { return proto.CompactTextString(m) }
func (*ListRecommendationsResponse) ProtoMessage() {}
func (*ListRecommendationsResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{7}
return fileDescriptor_demo_40506d781b7ed975, []int{7}
}
func (m *ListRecommendationsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListRecommendationsResponse.Unmarshal(m, b)
@ -366,7 +366,7 @@ func (m *Product) Reset() { *m = Product{} }
func (m *Product) String() string { return proto.CompactTextString(m) }
func (*Product) ProtoMessage() {}
func (*Product) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{8}
return fileDescriptor_demo_40506d781b7ed975, []int{8}
}
func (m *Product) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Product.Unmarshal(m, b)
@ -432,7 +432,7 @@ func (m *ListProductsResponse) Reset() { *m = ListProductsResponse{} }
func (m *ListProductsResponse) String() string { return proto.CompactTextString(m) }
func (*ListProductsResponse) ProtoMessage() {}
func (*ListProductsResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{9}
return fileDescriptor_demo_40506d781b7ed975, []int{9}
}
func (m *ListProductsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ListProductsResponse.Unmarshal(m, b)
@ -470,7 +470,7 @@ func (m *GetProductRequest) Reset() { *m = GetProductRequest{} }
func (m *GetProductRequest) String() string { return proto.CompactTextString(m) }
func (*GetProductRequest) ProtoMessage() {}
func (*GetProductRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{10}
return fileDescriptor_demo_40506d781b7ed975, []int{10}
}
func (m *GetProductRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetProductRequest.Unmarshal(m, b)
@ -508,7 +508,7 @@ func (m *SearchProductsRequest) Reset() { *m = SearchProductsRequest{} }
func (m *SearchProductsRequest) String() string { return proto.CompactTextString(m) }
func (*SearchProductsRequest) ProtoMessage() {}
func (*SearchProductsRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{11}
return fileDescriptor_demo_40506d781b7ed975, []int{11}
}
func (m *SearchProductsRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SearchProductsRequest.Unmarshal(m, b)
@ -546,7 +546,7 @@ func (m *SearchProductsResponse) Reset() { *m = SearchProductsResponse{}
func (m *SearchProductsResponse) String() string { return proto.CompactTextString(m) }
func (*SearchProductsResponse) ProtoMessage() {}
func (*SearchProductsResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{12}
return fileDescriptor_demo_40506d781b7ed975, []int{12}
}
func (m *SearchProductsResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SearchProductsResponse.Unmarshal(m, b)
@ -585,7 +585,7 @@ func (m *GetQuoteRequest) Reset() { *m = GetQuoteRequest{} }
func (m *GetQuoteRequest) String() string { return proto.CompactTextString(m) }
func (*GetQuoteRequest) ProtoMessage() {}
func (*GetQuoteRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{13}
return fileDescriptor_demo_40506d781b7ed975, []int{13}
}
func (m *GetQuoteRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetQuoteRequest.Unmarshal(m, b)
@ -630,7 +630,7 @@ func (m *GetQuoteResponse) Reset() { *m = GetQuoteResponse{} }
func (m *GetQuoteResponse) String() string { return proto.CompactTextString(m) }
func (*GetQuoteResponse) ProtoMessage() {}
func (*GetQuoteResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{14}
return fileDescriptor_demo_40506d781b7ed975, []int{14}
}
func (m *GetQuoteResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetQuoteResponse.Unmarshal(m, b)
@ -669,7 +669,7 @@ func (m *ShipOrderRequest) Reset() { *m = ShipOrderRequest{} }
func (m *ShipOrderRequest) String() string { return proto.CompactTextString(m) }
func (*ShipOrderRequest) ProtoMessage() {}
func (*ShipOrderRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{15}
return fileDescriptor_demo_40506d781b7ed975, []int{15}
}
func (m *ShipOrderRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ShipOrderRequest.Unmarshal(m, b)
@ -714,7 +714,7 @@ func (m *ShipOrderResponse) Reset() { *m = ShipOrderResponse{} }
func (m *ShipOrderResponse) String() string { return proto.CompactTextString(m) }
func (*ShipOrderResponse) ProtoMessage() {}
func (*ShipOrderResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{16}
return fileDescriptor_demo_40506d781b7ed975, []int{16}
}
func (m *ShipOrderResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ShipOrderResponse.Unmarshal(m, b)
@ -756,7 +756,7 @@ func (m *Address) Reset() { *m = Address{} }
func (m *Address) String() string { return proto.CompactTextString(m) }
func (*Address) ProtoMessage() {}
func (*Address) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{17}
return fileDescriptor_demo_40506d781b7ed975, []int{17}
}
func (m *Address) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Address.Unmarshal(m, b)
@ -825,7 +825,7 @@ func (m *MoneyAmount) Reset() { *m = MoneyAmount{} }
func (m *MoneyAmount) String() string { return proto.CompactTextString(m) }
func (*MoneyAmount) ProtoMessage() {}
func (*MoneyAmount) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{18}
return fileDescriptor_demo_40506d781b7ed975, []int{18}
}
func (m *MoneyAmount) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_MoneyAmount.Unmarshal(m, b)
@ -872,7 +872,7 @@ func (m *Money) Reset() { *m = Money{} }
func (m *Money) String() string { return proto.CompactTextString(m) }
func (*Money) ProtoMessage() {}
func (*Money) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{19}
return fileDescriptor_demo_40506d781b7ed975, []int{19}
}
func (m *Money) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Money.Unmarshal(m, b)
@ -918,7 +918,7 @@ func (m *GetSupportedCurrenciesResponse) Reset() { *m = GetSupportedCurr
func (m *GetSupportedCurrenciesResponse) String() string { return proto.CompactTextString(m) }
func (*GetSupportedCurrenciesResponse) ProtoMessage() {}
func (*GetSupportedCurrenciesResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{20}
return fileDescriptor_demo_40506d781b7ed975, []int{20}
}
func (m *GetSupportedCurrenciesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetSupportedCurrenciesResponse.Unmarshal(m, b)
@ -945,7 +945,7 @@ func (m *GetSupportedCurrenciesResponse) GetCurrencyCodes() []string {
return nil
}
type ConversionRequest struct {
type CurrencyConversionRequest struct {
From *Money `protobuf:"bytes,1,opt,name=from" json:"from,omitempty"`
// The 3-letter currency code defined in ISO 4217.
ToCode string `protobuf:"bytes,2,opt,name=to_code,json=toCode" json:"to_code,omitempty"`
@ -954,82 +954,44 @@ type ConversionRequest struct {
XXX_sizecache int32 `json:"-"`
}
func (m *ConversionRequest) Reset() { *m = ConversionRequest{} }
func (m *ConversionRequest) String() string { return proto.CompactTextString(m) }
func (*ConversionRequest) ProtoMessage() {}
func (*ConversionRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{21}
func (m *CurrencyConversionRequest) Reset() { *m = CurrencyConversionRequest{} }
func (m *CurrencyConversionRequest) String() string { return proto.CompactTextString(m) }
func (*CurrencyConversionRequest) ProtoMessage() {}
func (*CurrencyConversionRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_40506d781b7ed975, []int{21}
}
func (m *ConversionRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ConversionRequest.Unmarshal(m, b)
func (m *CurrencyConversionRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CurrencyConversionRequest.Unmarshal(m, b)
}
func (m *ConversionRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ConversionRequest.Marshal(b, m, deterministic)
func (m *CurrencyConversionRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_CurrencyConversionRequest.Marshal(b, m, deterministic)
}
func (dst *ConversionRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_ConversionRequest.Merge(dst, src)
func (dst *CurrencyConversionRequest) XXX_Merge(src proto.Message) {
xxx_messageInfo_CurrencyConversionRequest.Merge(dst, src)
}
func (m *ConversionRequest) XXX_Size() int {
return xxx_messageInfo_ConversionRequest.Size(m)
func (m *CurrencyConversionRequest) XXX_Size() int {
return xxx_messageInfo_CurrencyConversionRequest.Size(m)
}
func (m *ConversionRequest) XXX_DiscardUnknown() {
xxx_messageInfo_ConversionRequest.DiscardUnknown(m)
func (m *CurrencyConversionRequest) XXX_DiscardUnknown() {
xxx_messageInfo_CurrencyConversionRequest.DiscardUnknown(m)
}
var xxx_messageInfo_ConversionRequest proto.InternalMessageInfo
var xxx_messageInfo_CurrencyConversionRequest proto.InternalMessageInfo
func (m *ConversionRequest) GetFrom() *Money {
func (m *CurrencyConversionRequest) GetFrom() *Money {
if m != nil {
return m.From
}
return nil
}
func (m *ConversionRequest) GetToCode() string {
func (m *CurrencyConversionRequest) GetToCode() string {
if m != nil {
return m.ToCode
}
return ""
}
type ConversionResponse struct {
Result *Money `protobuf:"bytes,1,opt,name=result" json:"result,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *ConversionResponse) Reset() { *m = ConversionResponse{} }
func (m *ConversionResponse) String() string { return proto.CompactTextString(m) }
func (*ConversionResponse) ProtoMessage() {}
func (*ConversionResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{22}
}
func (m *ConversionResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ConversionResponse.Unmarshal(m, b)
}
func (m *ConversionResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_ConversionResponse.Marshal(b, m, deterministic)
}
func (dst *ConversionResponse) XXX_Merge(src proto.Message) {
xxx_messageInfo_ConversionResponse.Merge(dst, src)
}
func (m *ConversionResponse) XXX_Size() int {
return xxx_messageInfo_ConversionResponse.Size(m)
}
func (m *ConversionResponse) XXX_DiscardUnknown() {
xxx_messageInfo_ConversionResponse.DiscardUnknown(m)
}
var xxx_messageInfo_ConversionResponse proto.InternalMessageInfo
func (m *ConversionResponse) GetResult() *Money {
if m != nil {
return m.Result
}
return nil
}
type CreditCardInfo struct {
CreditCardNumber string `protobuf:"bytes,1,opt,name=credit_card_number,json=creditCardNumber" json:"credit_card_number,omitempty"`
CreditCardCvv int32 `protobuf:"varint,2,opt,name=credit_card_cvv,json=creditCardCvv" json:"credit_card_cvv,omitempty"`
@ -1044,7 +1006,7 @@ func (m *CreditCardInfo) Reset() { *m = CreditCardInfo{} }
func (m *CreditCardInfo) String() string { return proto.CompactTextString(m) }
func (*CreditCardInfo) ProtoMessage() {}
func (*CreditCardInfo) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{23}
return fileDescriptor_demo_40506d781b7ed975, []int{22}
}
func (m *CreditCardInfo) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreditCardInfo.Unmarshal(m, b)
@ -1104,7 +1066,7 @@ func (m *ChargeRequest) Reset() { *m = ChargeRequest{} }
func (m *ChargeRequest) String() string { return proto.CompactTextString(m) }
func (*ChargeRequest) ProtoMessage() {}
func (*ChargeRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{24}
return fileDescriptor_demo_40506d781b7ed975, []int{23}
}
func (m *ChargeRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ChargeRequest.Unmarshal(m, b)
@ -1149,7 +1111,7 @@ func (m *ChargeResponse) Reset() { *m = ChargeResponse{} }
func (m *ChargeResponse) String() string { return proto.CompactTextString(m) }
func (*ChargeResponse) ProtoMessage() {}
func (*ChargeResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{25}
return fileDescriptor_demo_40506d781b7ed975, []int{24}
}
func (m *ChargeResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ChargeResponse.Unmarshal(m, b)
@ -1188,7 +1150,7 @@ func (m *OrderItem) Reset() { *m = OrderItem{} }
func (m *OrderItem) String() string { return proto.CompactTextString(m) }
func (*OrderItem) ProtoMessage() {}
func (*OrderItem) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{26}
return fileDescriptor_demo_40506d781b7ed975, []int{25}
}
func (m *OrderItem) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_OrderItem.Unmarshal(m, b)
@ -1237,7 +1199,7 @@ func (m *OrderResult) Reset() { *m = OrderResult{} }
func (m *OrderResult) String() string { return proto.CompactTextString(m) }
func (*OrderResult) ProtoMessage() {}
func (*OrderResult) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{27}
return fileDescriptor_demo_40506d781b7ed975, []int{26}
}
func (m *OrderResult) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_OrderResult.Unmarshal(m, b)
@ -1304,7 +1266,7 @@ func (m *SendOrderConfirmationRequest) Reset() { *m = SendOrderConfirmat
func (m *SendOrderConfirmationRequest) String() string { return proto.CompactTextString(m) }
func (*SendOrderConfirmationRequest) ProtoMessage() {}
func (*SendOrderConfirmationRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{28}
return fileDescriptor_demo_40506d781b7ed975, []int{27}
}
func (m *SendOrderConfirmationRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SendOrderConfirmationRequest.Unmarshal(m, b)
@ -1351,7 +1313,7 @@ func (m *CreateOrderRequest) Reset() { *m = CreateOrderRequest{} }
func (m *CreateOrderRequest) String() string { return proto.CompactTextString(m) }
func (*CreateOrderRequest) ProtoMessage() {}
func (*CreateOrderRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{29}
return fileDescriptor_demo_40506d781b7ed975, []int{28}
}
func (m *CreateOrderRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateOrderRequest.Unmarshal(m, b)
@ -1404,7 +1366,7 @@ func (m *CreateOrderResponse) Reset() { *m = CreateOrderResponse{} }
func (m *CreateOrderResponse) String() string { return proto.CompactTextString(m) }
func (*CreateOrderResponse) ProtoMessage() {}
func (*CreateOrderResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{30}
return fileDescriptor_demo_40506d781b7ed975, []int{29}
}
func (m *CreateOrderResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateOrderResponse.Unmarshal(m, b)
@ -1453,7 +1415,7 @@ func (m *PlaceOrderRequest) Reset() { *m = PlaceOrderRequest{} }
func (m *PlaceOrderRequest) String() string { return proto.CompactTextString(m) }
func (*PlaceOrderRequest) ProtoMessage() {}
func (*PlaceOrderRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{31}
return fileDescriptor_demo_40506d781b7ed975, []int{30}
}
func (m *PlaceOrderRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PlaceOrderRequest.Unmarshal(m, b)
@ -1519,7 +1481,7 @@ func (m *PlaceOrderResponse) Reset() { *m = PlaceOrderResponse{} }
func (m *PlaceOrderResponse) String() string { return proto.CompactTextString(m) }
func (*PlaceOrderResponse) ProtoMessage() {}
func (*PlaceOrderResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_demo_957798eed1991a59, []int{32}
return fileDescriptor_demo_40506d781b7ed975, []int{31}
}
func (m *PlaceOrderResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PlaceOrderResponse.Unmarshal(m, b)
@ -1568,8 +1530,7 @@ func init() {
proto.RegisterType((*MoneyAmount)(nil), "hipstershop.MoneyAmount")
proto.RegisterType((*Money)(nil), "hipstershop.Money")
proto.RegisterType((*GetSupportedCurrenciesResponse)(nil), "hipstershop.GetSupportedCurrenciesResponse")
proto.RegisterType((*ConversionRequest)(nil), "hipstershop.ConversionRequest")
proto.RegisterType((*ConversionResponse)(nil), "hipstershop.ConversionResponse")
proto.RegisterType((*CurrencyConversionRequest)(nil), "hipstershop.CurrencyConversionRequest")
proto.RegisterType((*CreditCardInfo)(nil), "hipstershop.CreditCardInfo")
proto.RegisterType((*ChargeRequest)(nil), "hipstershop.ChargeRequest")
proto.RegisterType((*ChargeResponse)(nil), "hipstershop.ChargeResponse")
@ -2016,7 +1977,7 @@ var _ShippingService_serviceDesc = grpc.ServiceDesc{
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type CurrencyServiceClient interface {
GetSupportedCurrencies(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*GetSupportedCurrenciesResponse, error)
Convert(ctx context.Context, in *ConversionRequest, opts ...grpc.CallOption) (*ConversionResponse, error)
Convert(ctx context.Context, in *CurrencyConversionRequest, opts ...grpc.CallOption) (*Money, error)
}
type currencyServiceClient struct {
@ -2036,8 +1997,8 @@ func (c *currencyServiceClient) GetSupportedCurrencies(ctx context.Context, in *
return out, nil
}
func (c *currencyServiceClient) Convert(ctx context.Context, in *ConversionRequest, opts ...grpc.CallOption) (*ConversionResponse, error) {
out := new(ConversionResponse)
func (c *currencyServiceClient) Convert(ctx context.Context, in *CurrencyConversionRequest, opts ...grpc.CallOption) (*Money, error) {
out := new(Money)
err := c.cc.Invoke(ctx, "/hipstershop.CurrencyService/Convert", in, out, opts...)
if err != nil {
return nil, err
@ -2048,7 +2009,7 @@ func (c *currencyServiceClient) Convert(ctx context.Context, in *ConversionReque
// CurrencyServiceServer is the server API for CurrencyService service.
type CurrencyServiceServer interface {
GetSupportedCurrencies(context.Context, *Empty) (*GetSupportedCurrenciesResponse, error)
Convert(context.Context, *ConversionRequest) (*ConversionResponse, error)
Convert(context.Context, *CurrencyConversionRequest) (*Money, error)
}
func RegisterCurrencyServiceServer(s *grpc.Server, srv CurrencyServiceServer) {
@ -2074,7 +2035,7 @@ func _CurrencyService_GetSupportedCurrencies_Handler(srv interface{}, ctx contex
}
func _CurrencyService_Convert_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ConversionRequest)
in := new(CurrencyConversionRequest)
if err := dec(in); err != nil {
return nil, err
}
@ -2086,7 +2047,7 @@ func _CurrencyService_Convert_Handler(srv interface{}, ctx context.Context, dec
FullMethod: "/hipstershop.CurrencyService/Convert",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(CurrencyServiceServer).Convert(ctx, req.(*ConversionRequest))
return srv.(CurrencyServiceServer).Convert(ctx, req.(*CurrencyConversionRequest))
}
return interceptor(ctx, in, info, handler)
}
@ -2333,101 +2294,100 @@ var _CheckoutService_serviceDesc = grpc.ServiceDesc{
Metadata: "demo.proto",
}
func init() { proto.RegisterFile("demo.proto", fileDescriptor_demo_957798eed1991a59) }
func init() { proto.RegisterFile("demo.proto", fileDescriptor_demo_40506d781b7ed975) }
var fileDescriptor_demo_957798eed1991a59 = []byte{
// 1480 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x58, 0xdd, 0x72, 0xd3, 0x46,
0x1b, 0x8e, 0x92, 0x38, 0xb6, 0x5f, 0xc7, 0x4e, 0xb2, 0x24, 0x7c, 0x46, 0x81, 0x90, 0x6f, 0x33,
0x1f, 0x5f, 0xf8, 0x69, 0x06, 0x42, 0x3b, 0x1c, 0x94, 0x16, 0x18, 0x93, 0x31, 0x9e, 0x81, 0x42,
0x15, 0xe8, 0xb4, 0xc3, 0x0c, 0x1e, 0x21, 0x6d, 0xb0, 0x8a, 0xa5, 0x15, 0xab, 0x55, 0xa6, 0x66,
0x7a, 0x44, 0x6f, 0xa4, 0x47, 0x3d, 0xe8, 0x05, 0xf4, 0xa8, 0x57, 0xd0, 0xf3, 0xde, 0x42, 0xaf,
0xa3, 0xb3, 0xab, 0x5d, 0xfd, 0x59, 0x4e, 0xc2, 0x49, 0x7b, 0xe6, 0xdd, 0x7d, 0xf6, 0x7d, 0x9f,
0x7d, 0xff, 0x65, 0x00, 0x97, 0xf8, 0x74, 0x2f, 0x64, 0x94, 0x53, 0xd4, 0x1a, 0x79, 0x61, 0xc4,
0x09, 0x8b, 0x46, 0x34, 0xc4, 0x07, 0xd0, 0xe8, 0xd9, 0x8c, 0x0f, 0x38, 0xf1, 0xd1, 0x25, 0x80,
0x90, 0x51, 0x37, 0x76, 0xf8, 0xd0, 0x73, 0xbb, 0xc6, 0xb6, 0xb1, 0xdb, 0xb4, 0x9a, 0x6a, 0x67,
0xe0, 0x22, 0x13, 0x1a, 0xef, 0x62, 0x3b, 0xe0, 0x1e, 0x9f, 0x74, 0xe7, 0xb7, 0x8d, 0xdd, 0x9a,
0x95, 0xae, 0xf1, 0x73, 0xe8, 0x3c, 0x70, 0x5d, 0x21, 0xc5, 0x22, 0xef, 0x62, 0x12, 0x71, 0xf4,
0x1f, 0xa8, 0xc7, 0x11, 0x61, 0x99, 0xa4, 0x25, 0xb1, 0x1c, 0xb8, 0xe8, 0x2a, 0x2c, 0x7a, 0x9c,
0xf8, 0x52, 0x44, 0x6b, 0x7f, 0x63, 0x2f, 0xc7, 0x66, 0x4f, 0x53, 0xb1, 0x24, 0x04, 0x5f, 0x87,
0xd5, 0x03, 0x3f, 0xe4, 0x13, 0xb1, 0x7d, 0x9a, 0x5c, 0x7c, 0x15, 0x3a, 0x7d, 0xc2, 0xcf, 0x04,
0x7d, 0x0c, 0x8b, 0x02, 0x37, 0x9b, 0xe3, 0x75, 0xa8, 0x09, 0x02, 0x51, 0x77, 0x7e, 0x7b, 0x61,
0x36, 0xc9, 0x04, 0x83, 0xeb, 0x50, 0x93, 0x2c, 0xf1, 0x37, 0x60, 0x3e, 0xf6, 0x22, 0x6e, 0x11,
0x87, 0xfa, 0x3e, 0x09, 0x5c, 0x9b, 0x7b, 0x34, 0x88, 0x4e, 0x35, 0xc8, 0x65, 0x68, 0x65, 0x66,
0x4f, 0x54, 0x36, 0x2d, 0x48, 0xed, 0x1e, 0xe1, 0x2f, 0x61, 0xb3, 0x52, 0x6e, 0x14, 0xd2, 0x20,
0x22, 0xe5, 0xfb, 0xc6, 0xd4, 0xfd, 0x9f, 0x0d, 0xa8, 0x3f, 0x4b, 0x96, 0xa8, 0x03, 0xf3, 0x29,
0x81, 0x79, 0xcf, 0x45, 0x08, 0x16, 0x03, 0xdb, 0x27, 0xd2, 0x1b, 0x4d, 0x4b, 0xfe, 0x46, 0xdb,
0xd0, 0x72, 0x49, 0xe4, 0x30, 0x2f, 0x14, 0x8a, 0xba, 0x0b, 0xf2, 0x28, 0xbf, 0x85, 0xba, 0x50,
0x0f, 0x3d, 0x87, 0xc7, 0x8c, 0x74, 0x17, 0xe5, 0xa9, 0x5e, 0xa2, 0xcf, 0xa0, 0x19, 0x32, 0xcf,
0x21, 0xc3, 0x38, 0x72, 0xbb, 0x35, 0xe9, 0xe2, 0x6e, 0xc1, 0x7a, 0x4f, 0x68, 0x40, 0x26, 0x0f,
0x7c, 0x1a, 0x07, 0xdc, 0x6a, 0x48, 0xe8, 0x8b, 0xc8, 0xc5, 0x8f, 0x60, 0x5d, 0x3c, 0x51, 0xb1,
0xcc, 0xde, 0x76, 0x13, 0x1a, 0xea, 0x21, 0xc9, 0xc3, 0x5a, 0xfb, 0xeb, 0x05, 0x69, 0xea, 0x82,
0x95, 0xa2, 0xf0, 0x0e, 0xac, 0xf5, 0x89, 0x16, 0xa4, 0x6d, 0x5f, 0x7a, 0x35, 0xfe, 0x04, 0x36,
0x0e, 0x89, 0xcd, 0x9c, 0x51, 0xa6, 0x30, 0x01, 0xae, 0x43, 0xed, 0x5d, 0x4c, 0xd8, 0x44, 0x61,
0x93, 0x05, 0x7e, 0x04, 0xe7, 0xcb, 0x70, 0xc5, 0x6f, 0x0f, 0xea, 0x8c, 0x44, 0xf1, 0xf8, 0x14,
0x7a, 0x1a, 0x84, 0x03, 0x58, 0xe9, 0x13, 0xfe, 0x75, 0x4c, 0x39, 0xd1, 0x2a, 0xf7, 0xa0, 0x6e,
0xbb, 0x2e, 0x23, 0x51, 0x24, 0x95, 0x96, 0x45, 0x3c, 0x48, 0xce, 0x2c, 0x0d, 0xfa, 0xb8, 0xd8,
0xec, 0xc3, 0x6a, 0xa6, 0x4f, 0x71, 0xbe, 0x0d, 0x0d, 0x87, 0x46, 0x5c, 0x7a, 0xc8, 0x38, 0xc5,
0x43, 0x75, 0x81, 0x14, 0x0e, 0xa2, 0xb0, 0x7a, 0x38, 0xf2, 0xc2, 0xa7, 0xcc, 0x25, 0xec, 0x1f,
0x61, 0xfe, 0x29, 0xac, 0xe5, 0x14, 0x66, 0xa1, 0xce, 0x99, 0xed, 0xbc, 0xf5, 0x82, 0x37, 0x59,
0x1e, 0x81, 0xde, 0x1a, 0xb8, 0xf8, 0x17, 0x03, 0xea, 0x4a, 0x2f, 0xda, 0x85, 0xd5, 0x88, 0x33,
0x42, 0xf8, 0x50, 0x11, 0x18, 0xde, 0x52, 0x37, 0x3a, 0xc9, 0xbe, 0x02, 0xde, 0xaa, 0x40, 0xee,
0xab, 0x84, 0x28, 0x22, 0xf7, 0x45, 0xba, 0x38, 0xa2, 0xfe, 0x25, 0x39, 0x21, 0x7f, 0x8b, 0x64,
0x70, 0x84, 0xb1, 0xd8, 0x44, 0x27, 0x83, 0x5a, 0xa2, 0x0b, 0xd0, 0x78, 0xef, 0x85, 0x43, 0x87,
0xba, 0x44, 0xe6, 0x42, 0xcd, 0xaa, 0xbf, 0xf7, 0xc2, 0x1e, 0x75, 0x09, 0xee, 0x43, 0x2b, 0x67,
0x67, 0x21, 0xc3, 0x25, 0x8e, 0xe7, 0xdb, 0x63, 0x49, 0xb1, 0x6d, 0xe9, 0x25, 0xda, 0x02, 0x38,
0x62, 0xb6, 0x23, 0xd2, 0xce, 0x1e, 0x4b, 0x56, 0x6d, 0x2b, 0xb7, 0x83, 0x5f, 0x41, 0x4d, 0x0a,
0x42, 0x3b, 0xd0, 0x76, 0x62, 0xc6, 0x48, 0xe0, 0x4c, 0x12, 0x8d, 0xc9, 0x5b, 0x97, 0xf5, 0xa6,
0x50, 0x8b, 0x6e, 0xc2, 0x92, 0x2d, 0x35, 0xaa, 0xf2, 0x3b, 0xdb, 0xf3, 0x0a, 0x87, 0xfb, 0xb0,
0xd5, 0x27, 0xfc, 0x30, 0x0e, 0x43, 0xca, 0x38, 0x71, 0x7b, 0x89, 0x34, 0x8f, 0x64, 0x39, 0xf0,
0x3f, 0xe8, 0x14, 0x14, 0xeb, 0x12, 0xd4, 0xce, 0x6b, 0x8e, 0xf0, 0x73, 0x58, 0xeb, 0xd1, 0xe0,
0x98, 0xb0, 0xc8, 0xa3, 0x81, 0x0e, 0xa1, 0x2b, 0xb0, 0x78, 0xc4, 0xa8, 0xaf, 0xe2, 0x07, 0x4d,
0xb3, 0xb1, 0xe4, 0xb9, 0x28, 0x9e, 0x9c, 0x26, 0xcf, 0x4a, 0x1c, 0xb3, 0xc4, 0xa9, 0xb4, 0xe3,
0x7d, 0x40, 0x79, 0xa9, 0x8a, 0xd2, 0x35, 0x58, 0x4a, 0x32, 0xee, 0x04, 0xc1, 0x0a, 0x81, 0xff,
0x32, 0xa0, 0xd3, 0x63, 0xc4, 0xf5, 0x44, 0xef, 0x70, 0x07, 0xc1, 0x11, 0x45, 0x37, 0x00, 0x39,
0x72, 0x67, 0xe8, 0xd8, 0xcc, 0x1d, 0x06, 0xb1, 0xff, 0x9a, 0x30, 0x65, 0xcf, 0x55, 0x27, 0xc5,
0x7e, 0x25, 0xf7, 0xd1, 0x15, 0x58, 0xc9, 0xa3, 0x9d, 0xe3, 0x63, 0xd5, 0x1e, 0xdb, 0x19, 0xb4,
0x77, 0x7c, 0x8c, 0xbe, 0x80, 0xcd, 0x3c, 0x8e, 0xfc, 0x10, 0x7a, 0x4c, 0x96, 0xf2, 0xe1, 0x84,
0xd8, 0x4c, 0x86, 0x54, 0xcd, 0xea, 0x66, 0x77, 0x0e, 0x52, 0xc0, 0x77, 0xc4, 0x66, 0xe8, 0x1e,
0x5c, 0x9c, 0x71, 0xdd, 0xa7, 0x01, 0x1f, 0xc9, 0xd8, 0xab, 0x59, 0x17, 0xaa, 0xee, 0x3f, 0x11,
0x00, 0x3c, 0x81, 0x76, 0x6f, 0x64, 0xb3, 0x37, 0x69, 0xe5, 0xb9, 0x96, 0x06, 0xc3, 0x09, 0x56,
0x4a, 0x10, 0xe8, 0x2e, 0xb4, 0x72, 0xda, 0x55, 0xf4, 0x6c, 0x16, 0x33, 0xb8, 0x60, 0x44, 0x0b,
0x32, 0x26, 0xf8, 0x0e, 0x74, 0xb4, 0xea, 0x2c, 0x68, 0x38, 0xb3, 0x83, 0x28, 0x89, 0xe3, 0x2c,
0x99, 0xdb, 0xb9, 0xdd, 0x81, 0x8b, 0x5f, 0x41, 0x53, 0x56, 0x00, 0x39, 0x9f, 0xe8, 0xc9, 0xc1,
0x38, 0x75, 0x72, 0x10, 0x71, 0x25, 0x2a, 0x97, 0xe2, 0x59, 0x19, 0x57, 0xe2, 0x1c, 0x7f, 0x98,
0x87, 0x96, 0x2e, 0x31, 0xf1, 0x98, 0x8b, 0x8c, 0xa5, 0x62, 0x99, 0x11, 0xaa, 0xcb, 0xf5, 0xc0,
0x45, 0x37, 0x61, 0x3d, 0x1a, 0x79, 0x61, 0x28, 0x6a, 0x4f, 0xbe, 0x08, 0x25, 0xf1, 0x88, 0xf4,
0xd9, 0xf3, 0xb4, 0x18, 0xa1, 0x3b, 0xd0, 0x4e, 0x6f, 0x48, 0x36, 0x0b, 0x33, 0xd9, 0x2c, 0x6b,
0x60, 0x8f, 0x46, 0x1c, 0xdd, 0x83, 0xd5, 0xf4, 0xa2, 0xae, 0xb0, 0x8b, 0x27, 0x54, 0xd8, 0x15,
0x8d, 0xd6, 0xa5, 0xef, 0x86, 0xae, 0xb4, 0x35, 0x59, 0x69, 0xcf, 0x17, 0x6e, 0xa5, 0x06, 0xd5,
0xa5, 0xd6, 0x85, 0x8b, 0x87, 0x24, 0x70, 0xe5, 0x7e, 0x8f, 0x06, 0x47, 0x1e, 0xf3, 0x65, 0xd8,
0xe4, 0x9a, 0x22, 0xf1, 0x6d, 0x6f, 0xac, 0x9b, 0xa2, 0x5c, 0xa0, 0x3d, 0xa8, 0x49, 0xd3, 0x54,
0x56, 0x92, 0x9c, 0x4d, 0xad, 0x04, 0x86, 0x3f, 0x18, 0x80, 0x7a, 0x8c, 0xd8, 0x9c, 0x14, 0x9a,
0xc8, 0xcc, 0xb1, 0x68, 0x07, 0xda, 0xf2, 0x40, 0x57, 0x11, 0x65, 0xe8, 0x65, 0xb1, 0xa9, 0xaa,
0xd0, 0x24, 0xdf, 0x82, 0x16, 0xce, 0xd0, 0x82, 0xf0, 0x8f, 0x70, 0xae, 0xc0, 0x41, 0x45, 0x63,
0x6a, 0x2f, 0xe3, 0x0c, 0xf6, 0x9a, 0xf6, 0xeb, 0xfc, 0xd9, 0xfc, 0x8a, 0xff, 0x34, 0x60, 0xed,
0xd9, 0xd8, 0x76, 0xfe, 0x45, 0x0b, 0x64, 0xce, 0xac, 0xe5, 0x9d, 0x59, 0x4a, 0xef, 0xa5, 0x8f,
0x4b, 0xef, 0x87, 0x80, 0xf2, 0xcf, 0x4a, 0x67, 0x23, 0x15, 0x20, 0xc6, 0x99, 0x02, 0x64, 0xff,
0x0f, 0x03, 0x5a, 0x22, 0x8d, 0x0f, 0x09, 0x3b, 0xf6, 0x1c, 0x82, 0xee, 0xca, 0x56, 0x2e, 0x33,
0x7f, 0xb3, 0xfc, 0xa6, 0xdc, 0x97, 0x86, 0x59, 0xb4, 0x7b, 0x32, 0x8a, 0xcf, 0xa1, 0xcf, 0xa1,
0xae, 0x3e, 0x07, 0x4a, 0xb7, 0x8b, 0x1f, 0x09, 0xe6, 0xda, 0x54, 0x19, 0xc1, 0x73, 0xe8, 0x3e,
0x34, 0xd3, 0x0f, 0x0f, 0x74, 0x69, 0x5a, 0x7e, 0x5e, 0x40, 0xa5, 0xfa, 0xfd, 0x9f, 0x0c, 0xd8,
0x28, 0x0e, 0xec, 0xfa, 0x59, 0xdf, 0xc3, 0xb9, 0x8a, 0x69, 0x1e, 0xfd, 0xbf, 0x20, 0x66, 0xf6,
0x77, 0x84, 0xb9, 0x7b, 0x3a, 0x30, 0x71, 0x80, 0x60, 0x31, 0x0f, 0x1b, 0x6a, 0x06, 0xed, 0xd9,
0xdc, 0x1e, 0xd3, 0x37, 0x9a, 0x45, 0x1f, 0x96, 0xf3, 0x03, 0x37, 0xaa, 0x78, 0x85, 0xf9, 0xdf,
0x29, 0x4d, 0xe5, 0xf9, 0x17, 0xcf, 0xa1, 0x87, 0x00, 0xd9, 0xbc, 0x8d, 0xb6, 0xca, 0xa6, 0x2e,
0x0e, 0xe2, 0x66, 0xe5, 0x78, 0x8c, 0xe7, 0xd0, 0x4b, 0xe8, 0x14, 0x27, 0x6c, 0x84, 0x0b, 0xc8,
0xca, 0x69, 0xdd, 0xdc, 0x39, 0x11, 0x93, 0x5a, 0xe1, 0x57, 0x03, 0x56, 0x0e, 0x55, 0x1e, 0xea,
0xf7, 0x0f, 0xa0, 0xa1, 0x07, 0x63, 0x74, 0xb1, 0x4c, 0x3a, 0x3f, 0x9f, 0x9b, 0x97, 0x66, 0x9c,
0xa6, 0x16, 0x78, 0x0c, 0xcd, 0x74, 0x52, 0x2d, 0x05, 0x4b, 0x79, 0x64, 0x36, 0xb7, 0x66, 0x1d,
0xa7, 0x64, 0x7f, 0x37, 0x60, 0x45, 0x27, 0xb7, 0x26, 0xfb, 0x12, 0xce, 0x57, 0xcf, 0x60, 0x95,
0x6e, 0xbb, 0x5e, 0x26, 0x7c, 0xc2, 0xf0, 0x26, 0xe9, 0xd7, 0x93, 0x09, 0xaa, 0xec, 0xbd, 0xa9,
0x69, 0xcd, 0xbc, 0x3c, 0xf3, 0x3c, 0xa5, 0xff, 0x02, 0x3a, 0xcf, 0xec, 0x89, 0x4f, 0x82, 0x34,
0x8d, 0x7b, 0xb0, 0x94, 0xf4, 0x7e, 0x64, 0x16, 0xaf, 0xe7, 0x67, 0x11, 0x73, 0xb3, 0xf2, 0x2c,
0x15, 0x3b, 0x82, 0xe5, 0x03, 0x51, 0xa8, 0xb4, 0xd0, 0x6f, 0xc5, 0x07, 0x5c, 0x45, 0xcb, 0x42,
0x57, 0x4b, 0x21, 0x31, 0xbb, 0xad, 0xcd, 0x48, 0xdc, 0xdf, 0x84, 0xfd, 0x47, 0xc4, 0x79, 0x4b,
0xe3, 0xf4, 0x09, 0x16, 0xb4, 0x72, 0x5d, 0x03, 0x5d, 0x2e, 0xd7, 0xc5, 0x52, 0x4f, 0x33, 0xb7,
0x67, 0x03, 0x52, 0xb3, 0x3f, 0x05, 0xc8, 0x6a, 0x66, 0xc9, 0xf2, 0x53, 0x3d, 0xa2, 0x64, 0xf9,
0xe9, 0x62, 0x8b, 0xe7, 0x5e, 0x2f, 0xc9, 0x7f, 0x77, 0x6e, 0xff, 0x1d, 0x00, 0x00, 0xff, 0xff,
0x51, 0x5f, 0x0f, 0xde, 0xeb, 0x11, 0x00, 0x00,
var fileDescriptor_demo_40506d781b7ed975 = []byte{
// 1466 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x58, 0xdd, 0x72, 0xd3, 0xc6,
0x17, 0x8f, 0x9c, 0x38, 0xb6, 0x8f, 0x63, 0x27, 0x59, 0x12, 0xfe, 0x46, 0x81, 0x90, 0xff, 0x66,
0x4a, 0x43, 0xa1, 0x19, 0x30, 0xed, 0x70, 0x51, 0x5a, 0xca, 0x98, 0x8c, 0xf1, 0x0c, 0x14, 0xaa,
0x40, 0xa7, 0x1d, 0x3a, 0x78, 0x84, 0xb4, 0xc1, 0x2a, 0xd6, 0x07, 0xab, 0x55, 0xa6, 0x66, 0x7a,
0x45, 0x5f, 0xa4, 0x57, 0xbd, 0xe8, 0x03, 0xb4, 0xef, 0xd0, 0xfb, 0xbe, 0x42, 0x9f, 0xa3, 0xb3,
0xab, 0x5d, 0x7d, 0x59, 0x4a, 0xc2, 0x4d, 0x7b, 0xe7, 0xdd, 0xfd, 0xed, 0x39, 0xbf, 0x3d, 0xdf,
0x32, 0x80, 0x4d, 0x5c, 0x7f, 0x3f, 0xa0, 0x3e, 0xf3, 0x51, 0x7b, 0xe2, 0x04, 0x21, 0x23, 0x34,
0x9c, 0xf8, 0x01, 0x3e, 0x80, 0xe6, 0xc0, 0xa4, 0x6c, 0xc4, 0x88, 0x8b, 0x2e, 0x01, 0x04, 0xd4,
0xb7, 0x23, 0x8b, 0x8d, 0x1d, 0xbb, 0xa7, 0xed, 0x68, 0x7b, 0x2d, 0xa3, 0x25, 0x77, 0x46, 0x36,
0xd2, 0xa1, 0xf9, 0x26, 0x32, 0x3d, 0xe6, 0xb0, 0x59, 0xaf, 0xb6, 0xa3, 0xed, 0xd5, 0x8d, 0x64,
0x8d, 0x9f, 0x42, 0xf7, 0x9e, 0x6d, 0x73, 0x29, 0x06, 0x79, 0x13, 0x91, 0x90, 0xa1, 0xff, 0x41,
0x23, 0x0a, 0x09, 0x4d, 0x25, 0x2d, 0xf3, 0xe5, 0xc8, 0x46, 0x57, 0x61, 0xc9, 0x61, 0xc4, 0x15,
0x22, 0xda, 0xfd, 0xcd, 0xfd, 0x0c, 0x9b, 0x7d, 0x45, 0xc5, 0x10, 0x10, 0x7c, 0x0d, 0xd6, 0x0e,
0xdc, 0x80, 0xcd, 0xf8, 0xf6, 0x69, 0x72, 0xf1, 0x55, 0xe8, 0x0e, 0x09, 0x3b, 0x13, 0xf4, 0x21,
0x2c, 0x71, 0x5c, 0x35, 0xc7, 0x6b, 0x50, 0xe7, 0x04, 0xc2, 0x5e, 0x6d, 0x67, 0xb1, 0x9a, 0x64,
0x8c, 0xc1, 0x0d, 0xa8, 0x0b, 0x96, 0xf8, 0x1b, 0xd0, 0x1f, 0x3a, 0x21, 0x33, 0x88, 0xe5, 0xbb,
0x2e, 0xf1, 0x6c, 0x93, 0x39, 0xbe, 0x17, 0x9e, 0x6a, 0x90, 0xcb, 0xd0, 0x4e, 0xcd, 0x1e, 0xab,
0x6c, 0x19, 0x90, 0xd8, 0x3d, 0xc4, 0x5f, 0xc0, 0x56, 0xa9, 0xdc, 0x30, 0xf0, 0xbd, 0x90, 0x14,
0xef, 0x6b, 0x73, 0xf7, 0x7f, 0xd1, 0xa0, 0xf1, 0x24, 0x5e, 0xa2, 0x2e, 0xd4, 0x12, 0x02, 0x35,
0xc7, 0x46, 0x08, 0x96, 0x3c, 0xd3, 0x25, 0xc2, 0x1b, 0x2d, 0x43, 0xfc, 0x46, 0x3b, 0xd0, 0xb6,
0x49, 0x68, 0x51, 0x27, 0xe0, 0x8a, 0x7a, 0x8b, 0xe2, 0x28, 0xbb, 0x85, 0x7a, 0xd0, 0x08, 0x1c,
0x8b, 0x45, 0x94, 0xf4, 0x96, 0xc4, 0xa9, 0x5a, 0xa2, 0x4f, 0xa1, 0x15, 0x50, 0xc7, 0x22, 0xe3,
0x28, 0xb4, 0x7b, 0x75, 0xe1, 0xe2, 0x5e, 0xce, 0x7a, 0x8f, 0x7c, 0x8f, 0xcc, 0xee, 0xb9, 0x7e,
0xe4, 0x31, 0xa3, 0x29, 0xa0, 0xcf, 0x42, 0x1b, 0x3f, 0x80, 0x0d, 0xfe, 0x44, 0xc9, 0x32, 0x7d,
0xdb, 0x0d, 0x68, 0xca, 0x87, 0xc4, 0x0f, 0x6b, 0xf7, 0x37, 0x72, 0xd2, 0xe4, 0x05, 0x23, 0x41,
0xe1, 0x5d, 0x58, 0x1f, 0x12, 0x25, 0x48, 0xd9, 0xbe, 0xf0, 0x6a, 0xfc, 0x31, 0x6c, 0x1e, 0x12,
0x93, 0x5a, 0x93, 0x54, 0x61, 0x0c, 0xdc, 0x80, 0xfa, 0x9b, 0x88, 0xd0, 0x99, 0xc4, 0xc6, 0x0b,
0xfc, 0x00, 0xce, 0x17, 0xe1, 0x92, 0xdf, 0x3e, 0x34, 0x28, 0x09, 0xa3, 0xe9, 0x29, 0xf4, 0x14,
0x08, 0x7b, 0xb0, 0x3a, 0x24, 0xec, 0xeb, 0xc8, 0x67, 0x44, 0xa9, 0xdc, 0x87, 0x86, 0x69, 0xdb,
0x94, 0x84, 0xa1, 0x50, 0x5a, 0x14, 0x71, 0x2f, 0x3e, 0x33, 0x14, 0xe8, 0xfd, 0x62, 0x73, 0x08,
0x6b, 0xa9, 0x3e, 0xc9, 0xf9, 0x16, 0x34, 0x2d, 0x3f, 0x64, 0xc2, 0x43, 0xda, 0x29, 0x1e, 0x6a,
0x70, 0x24, 0x77, 0x90, 0x0f, 0x6b, 0x87, 0x13, 0x27, 0x78, 0x4c, 0x6d, 0x42, 0xff, 0x15, 0xe6,
0x9f, 0xc0, 0x7a, 0x46, 0x61, 0x1a, 0xea, 0x8c, 0x9a, 0xd6, 0x6b, 0xc7, 0x7b, 0x95, 0xe6, 0x11,
0xa8, 0xad, 0x91, 0x8d, 0x7f, 0xd5, 0xa0, 0x21, 0xf5, 0xa2, 0x3d, 0x58, 0x0b, 0x19, 0x25, 0x84,
0x8d, 0x25, 0x81, 0xf1, 0x4d, 0x79, 0xa3, 0x1b, 0xef, 0x4b, 0xe0, 0xcd, 0x12, 0x64, 0x5f, 0x26,
0x44, 0x1e, 0xd9, 0xe7, 0xe9, 0x62, 0xf1, 0xfa, 0x17, 0xe7, 0x84, 0xf8, 0xcd, 0x93, 0xc1, 0xe2,
0xc6, 0xa2, 0x33, 0x95, 0x0c, 0x72, 0x89, 0x2e, 0x40, 0xf3, 0xad, 0x13, 0x8c, 0x2d, 0xdf, 0x26,
0x22, 0x17, 0xea, 0x46, 0xe3, 0xad, 0x13, 0x0c, 0x7c, 0x9b, 0xe0, 0x21, 0xb4, 0x33, 0x76, 0xe6,
0x32, 0x6c, 0x62, 0x39, 0xae, 0x39, 0x15, 0x14, 0x3b, 0x86, 0x5a, 0xa2, 0x6d, 0x80, 0x23, 0x6a,
0x5a, 0x3c, 0xed, 0xcc, 0xa9, 0x60, 0xd5, 0x31, 0x32, 0x3b, 0xf8, 0x05, 0xd4, 0x85, 0x20, 0xb4,
0x0b, 0x1d, 0x2b, 0xa2, 0x94, 0x78, 0xd6, 0x2c, 0xd6, 0x18, 0xbf, 0x75, 0x45, 0x6d, 0x72, 0xb5,
0xe8, 0x06, 0x2c, 0x9b, 0x42, 0xa3, 0x2c, 0xbf, 0xd5, 0x9e, 0x97, 0x38, 0x3c, 0x84, 0xed, 0x21,
0x61, 0x87, 0x51, 0x10, 0xf8, 0x94, 0x11, 0x7b, 0x10, 0x4b, 0x73, 0x48, 0x9a, 0x03, 0x1f, 0x40,
0x37, 0xa7, 0x58, 0x95, 0xa0, 0x4e, 0x56, 0x73, 0x88, 0xbf, 0x87, 0x0b, 0x83, 0x64, 0xc3, 0x3b,
0x26, 0x34, 0x74, 0x7c, 0x4f, 0x85, 0xd2, 0x15, 0x58, 0x3a, 0xa2, 0xbe, 0x2b, 0xe3, 0x08, 0xcd,
0xb3, 0x32, 0xc4, 0x39, 0x2f, 0xa2, 0xcc, 0x8f, 0x9f, 0x17, 0x3b, 0x68, 0x99, 0xf9, 0xc2, 0x9e,
0x7f, 0x6b, 0xd0, 0x1d, 0x50, 0x62, 0x3b, 0xbc, 0x03, 0xd8, 0x23, 0xef, 0xc8, 0x47, 0xd7, 0x01,
0x59, 0x62, 0x67, 0x6c, 0x99, 0xd4, 0x1e, 0x7b, 0x91, 0xfb, 0x92, 0x50, 0x69, 0x95, 0x35, 0x2b,
0xc1, 0x7e, 0x25, 0xf6, 0xd1, 0x15, 0x58, 0xcd, 0xa2, 0xad, 0xe3, 0x63, 0xd9, 0xe4, 0x3a, 0x29,
0x74, 0x70, 0x7c, 0x8c, 0x3e, 0x87, 0xad, 0x2c, 0x8e, 0xfc, 0x18, 0x38, 0x54, 0x14, 0xe4, 0xf1,
0x8c, 0x98, 0x54, 0x04, 0x46, 0xdd, 0xe8, 0xa5, 0x77, 0x0e, 0x12, 0xc0, 0x77, 0xc4, 0xa4, 0xe8,
0x2e, 0x5c, 0xac, 0xb8, 0xee, 0xfa, 0x1e, 0x9b, 0x88, 0x08, 0xaa, 0x1b, 0x17, 0xca, 0xee, 0x3f,
0xe2, 0x00, 0x3c, 0x83, 0xce, 0x60, 0x62, 0xd2, 0x57, 0x49, 0xfd, 0xf8, 0x28, 0x71, 0x69, 0xb5,
0xf1, 0x24, 0x02, 0xdd, 0x81, 0x76, 0x46, 0xbb, 0x8c, 0x81, 0xad, 0x7c, 0x1e, 0xe6, 0x8c, 0x68,
0x40, 0xca, 0x04, 0xdf, 0x86, 0xae, 0x52, 0x9d, 0xba, 0x9e, 0x51, 0xd3, 0x0b, 0xe3, 0x68, 0x4c,
0x53, 0xb2, 0x93, 0xd9, 0x1d, 0xd9, 0xf8, 0x05, 0xb4, 0x44, 0x1e, 0x8b, 0x29, 0x43, 0xf5, 0x7f,
0xed, 0xd4, 0xfe, 0xcf, 0xa3, 0x82, 0xd7, 0x1f, 0xc9, 0xb3, 0x34, 0x2a, 0xf8, 0x39, 0x7e, 0x57,
0x83, 0xb6, 0x2a, 0x14, 0xd1, 0x94, 0xf1, 0xbc, 0xf3, 0xf9, 0x32, 0x25, 0xd4, 0x10, 0xeb, 0x91,
0x8d, 0x6e, 0xc0, 0x46, 0x38, 0x71, 0x82, 0x80, 0x57, 0x90, 0x6c, 0x29, 0x89, 0xa3, 0x09, 0xa9,
0xb3, 0xa7, 0x49, 0x49, 0x41, 0xb7, 0xa1, 0x93, 0xdc, 0x10, 0x6c, 0x16, 0x2b, 0xd9, 0xac, 0x28,
0xe0, 0xc0, 0x0f, 0x19, 0xba, 0x0b, 0x6b, 0xc9, 0x45, 0x55, 0x27, 0x97, 0x4e, 0xa8, 0x93, 0xab,
0x0a, 0xad, 0x0a, 0xd8, 0x75, 0x55, 0x2f, 0xeb, 0xa2, 0x5e, 0x9e, 0xcf, 0xdd, 0x4a, 0x0c, 0xaa,
0x0a, 0xa6, 0x0d, 0x17, 0x0f, 0x89, 0x67, 0x8b, 0xfd, 0x81, 0xef, 0x1d, 0x39, 0xd4, 0x15, 0x61,
0x93, 0x69, 0x6d, 0xc4, 0x35, 0x9d, 0xa9, 0x6a, 0x6d, 0x62, 0x81, 0xf6, 0xa1, 0x2e, 0x4c, 0x53,
0x5a, 0x0f, 0x32, 0x36, 0x35, 0x62, 0x18, 0x7e, 0xa7, 0x01, 0x1a, 0x50, 0x62, 0x32, 0x92, 0x6b,
0x05, 0x95, 0xc3, 0xcd, 0x2e, 0x74, 0xc4, 0x81, 0xaa, 0x05, 0xd2, 0xd0, 0x2b, 0x7c, 0x53, 0x95,
0x83, 0x6c, 0x23, 0x59, 0x3c, 0x43, 0x23, 0xc1, 0x3f, 0xc1, 0xb9, 0x1c, 0x07, 0x19, 0x8d, 0x89,
0xbd, 0xb4, 0x33, 0xd8, 0x6b, 0xde, 0xaf, 0xb5, 0xb3, 0xf9, 0x15, 0xff, 0xa5, 0xc1, 0xfa, 0x93,
0xa9, 0x69, 0xfd, 0x87, 0x16, 0x48, 0x9d, 0x59, 0xcf, 0x3a, 0xb3, 0x90, 0xde, 0xcb, 0xef, 0x97,
0xde, 0xf7, 0x01, 0x65, 0x9f, 0x95, 0x4c, 0x38, 0x32, 0x40, 0xb4, 0x33, 0x05, 0x48, 0xff, 0x4f,
0x0d, 0xda, 0x3c, 0x8d, 0x0f, 0x09, 0x3d, 0x76, 0x2c, 0x82, 0xee, 0x88, 0x86, 0x2c, 0x32, 0x7f,
0xab, 0xf8, 0xa6, 0xcc, 0xf7, 0x82, 0x9e, 0xb7, 0x7b, 0x3c, 0x50, 0x2f, 0xa0, 0xcf, 0xa0, 0x21,
0x87, 0xfa, 0xc2, 0xed, 0xfc, 0xa8, 0xaf, 0xaf, 0xcf, 0x95, 0x11, 0xbc, 0x80, 0xbe, 0x84, 0x56,
0xf2, 0xf9, 0x80, 0x2e, 0xcd, 0xcb, 0xcf, 0x0a, 0x28, 0x55, 0xdf, 0xff, 0x59, 0x83, 0xcd, 0xfc,
0xd8, 0xad, 0x9e, 0xf5, 0x03, 0x9c, 0x2b, 0x99, 0xc9, 0xd1, 0x87, 0x39, 0x31, 0xd5, 0x5f, 0x03,
0xfa, 0xde, 0xe9, 0xc0, 0xd8, 0x01, 0x9c, 0x45, 0x0d, 0x36, 0xe5, 0x24, 0x39, 0x30, 0x99, 0x39,
0xf5, 0x5f, 0x29, 0x16, 0x43, 0x58, 0xc9, 0x8e, 0xcd, 0xa8, 0xe4, 0x15, 0xfa, 0xff, 0xe7, 0x34,
0x15, 0xa7, 0x58, 0xbc, 0x80, 0xee, 0x03, 0xa4, 0x53, 0x33, 0xda, 0x2e, 0x9a, 0x3a, 0x3f, 0x4e,
0xeb, 0xa5, 0x43, 0x2e, 0x5e, 0x40, 0xcf, 0xa1, 0x9b, 0x9f, 0x93, 0x11, 0xce, 0x21, 0x4b, 0x67,
0x6e, 0x7d, 0xf7, 0x44, 0x4c, 0x62, 0x85, 0xdf, 0x34, 0x58, 0x3d, 0x94, 0x79, 0xa8, 0xde, 0x3f,
0x82, 0xa6, 0x1a, 0x6f, 0xd1, 0xc5, 0x22, 0xe9, 0xec, 0x94, 0xad, 0x5f, 0xaa, 0x38, 0x4d, 0x2c,
0xf0, 0x10, 0x5a, 0xc9, 0xbc, 0x59, 0x08, 0x96, 0xe2, 0xe0, 0xab, 0x6f, 0x57, 0x1d, 0x27, 0x64,
0xff, 0xd0, 0x60, 0x55, 0x25, 0xb7, 0x22, 0xfb, 0x1c, 0xce, 0x97, 0x4f, 0x52, 0xa5, 0x6e, 0xbb,
0x56, 0x24, 0x7c, 0xc2, 0x08, 0x86, 0x17, 0xd0, 0x10, 0x1a, 0xf1, 0x54, 0xc5, 0xd0, 0x95, 0x7c,
0x2e, 0x54, 0xcd, 0x5c, 0x7a, 0x49, 0xa5, 0xc3, 0x0b, 0xfd, 0x67, 0xd0, 0x7d, 0x62, 0xce, 0x5c,
0xe2, 0x25, 0x19, 0x3c, 0x80, 0xe5, 0xb8, 0xed, 0x23, 0x3d, 0x2f, 0x39, 0x3b, 0x86, 0xe8, 0x5b,
0xa5, 0x67, 0x89, 0x41, 0x26, 0xb0, 0x72, 0xc0, 0x6b, 0x94, 0x12, 0xfa, 0x2d, 0xff, 0x02, 0x2b,
0xe9, 0x56, 0xe8, 0x6a, 0x21, 0x1a, 0xaa, 0x3b, 0x5a, 0x45, 0xce, 0xfe, 0xce, 0x4d, 0x3f, 0x21,
0xd6, 0x6b, 0x3f, 0x4a, 0x9e, 0x60, 0x40, 0x3b, 0xd3, 0x30, 0xd0, 0xe5, 0x62, 0x49, 0x2c, 0xb4,
0x33, 0x7d, 0xa7, 0x1a, 0x90, 0x58, 0xfc, 0x31, 0x40, 0x5a, 0x2e, 0x0b, 0x29, 0x33, 0xd7, 0x1e,
0xf4, 0xcb, 0x95, 0xe7, 0x4a, 0xe0, 0xcb, 0x65, 0xf1, 0xf7, 0xcc, 0xad, 0x7f, 0x02, 0x00, 0x00,
0xff, 0xff, 0xdd, 0xe8, 0xfb, 0x77, 0xac, 0x11, 0x00, 0x00,
}

View file

@ -32,6 +32,14 @@ var (
envs: []string{"PAYMENT_SERVICE_ADDR"},
f: testPaymentService,
},
"emailservice": {
envs: []string{"EMAIL_SERVICE_ADDR"},
f: testEmailService,
},
"currencyservice": {
envs: []string{"CURRENCY_SERVICE_ADDR"},
f: testCurrencyService,
},
}
)
@ -102,7 +110,7 @@ func testShippingService() error {
StreetAddress_1: "Muffin Man",
StreetAddress_2: "Drury Lane",
City: "London",
Country: "England",
Country: "United Kingdom",
}
items := []*pb.CartItem{
{
@ -187,3 +195,92 @@ func testPaymentService() error {
log.Printf("--> resp: %+v", resp)
return nil
}
func testEmailService() error {
addr := os.Getenv("EMAIL_SERVICE_ADDR")
conn, err := grpc.Dial(addr, grpc.WithInsecure())
if err != nil {
return err
}
defer conn.Close()
cl := pb.NewEmailServiceClient(conn)
log.Println("--- rpc SendOrderConfirmation()")
resp, err := cl.SendOrderConfirmation(context.TODO(), &pb.SendOrderConfirmationRequest{
Email: "noreply@example.com",
Order: &pb.OrderResult{
OrderId: "123456",
ShippingTrackingId: "000-123-456",
ShippingCost: &pb.Money{
CurrencyCode: "CAD",
Amount: &pb.MoneyAmount{
Decimal: 10,
Fractional: 55},
},
ShippingAddress: &pb.Address{
StreetAddress_1: "Muffin Man",
StreetAddress_2: "Drury Lane",
City: "London",
Country: "United Kingdom",
},
Items: []*pb.OrderItem{
&pb.OrderItem{
Item: &pb.CartItem{
ProductId: "1",
Quantity: 4},
Cost: &pb.Money{
CurrencyCode: "CAD",
Amount: &pb.MoneyAmount{
Decimal: 120,
Fractional: 0}},
},
&pb.OrderItem{
Item: &pb.CartItem{
ProductId: "2",
Quantity: 1},
Cost: &pb.Money{
CurrencyCode: "CAD",
Amount: &pb.MoneyAmount{
Decimal: 12,
Fractional: 25}},
},
},
},
})
if err != nil {
return err
}
log.Printf("--> resp: %+v", resp)
return nil
}
func testCurrencyService() error {
addr := os.Getenv("CURRENCY_SERVICE_ADDR")
conn, err := grpc.Dial(addr, grpc.WithInsecure())
if err != nil {
return err
}
defer conn.Close()
cl := pb.NewCurrencyServiceClient(conn)
log.Println("--- rpc GetSupportedCurrencies()")
listResp, err := cl.GetSupportedCurrencies(context.TODO(), &pb.Empty{})
if err != nil {
return err
}
log.Printf("--> returned %d currency codes", len(listResp.GetCurrencyCodes()))
log.Printf("--> %v", listResp.GetCurrencyCodes())
log.Println("--- rpc Convert()")
convertResp, err := cl.Convert(context.TODO(), &pb.CurrencyConversionRequest{
From: &pb.Money{
CurrencyCode: "CAD",
Amount: &pb.MoneyAmount{
Decimal: 12,
Fractional: 25},
},
ToCode: "USD"})
if err != nil {
return err
}
log.Printf("--> result: %+v", convertResp)
return nil
}