summaryrefslogtreecommitdiff
path: root/src/product-catalog/genproto/oteldemo
diff options
context:
space:
mode:
authorSaumit <justsaumit@protonmail.com>2025-09-27 02:14:26 +0530
committerSaumit <justsaumit@protonmail.com>2025-09-27 02:14:26 +0530
commit82e03978b89938219958032efb1448cc76baa181 (patch)
tree626f3e54d52ecd49be0ed3bee30abacc0453d081 /src/product-catalog/genproto/oteldemo
Initial snapshot - OpenTelemetry demo 2.1.3 -f
Diffstat (limited to 'src/product-catalog/genproto/oteldemo')
-rw-r--r--src/product-catalog/genproto/oteldemo/demo.pb.go2544
-rw-r--r--src/product-catalog/genproto/oteldemo/demo_grpc.pb.go1433
2 files changed, 3977 insertions, 0 deletions
diff --git a/src/product-catalog/genproto/oteldemo/demo.pb.go b/src/product-catalog/genproto/oteldemo/demo.pb.go
new file mode 100644
index 0000000..7094aa3
--- /dev/null
+++ b/src/product-catalog/genproto/oteldemo/demo.pb.go
@@ -0,0 +1,2544 @@
+// Copyright 2020 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.36.9
+// protoc v5.29.4
+// source: demo.proto
+
+package oteldemo
+
+import (
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ reflect "reflect"
+ sync "sync"
+ unsafe "unsafe"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+type CartItem struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ ProductId string `protobuf:"bytes,1,opt,name=product_id,json=productId,proto3" json:"product_id,omitempty"`
+ Quantity int32 `protobuf:"varint,2,opt,name=quantity,proto3" json:"quantity,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *CartItem) Reset() {
+ *x = CartItem{}
+ mi := &file_demo_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *CartItem) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CartItem) ProtoMessage() {}
+
+func (x *CartItem) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[0]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CartItem.ProtoReflect.Descriptor instead.
+func (*CartItem) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *CartItem) GetProductId() string {
+ if x != nil {
+ return x.ProductId
+ }
+ return ""
+}
+
+func (x *CartItem) GetQuantity() int32 {
+ if x != nil {
+ return x.Quantity
+ }
+ return 0
+}
+
+type AddItemRequest struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
+ Item *CartItem `protobuf:"bytes,2,opt,name=item,proto3" json:"item,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *AddItemRequest) Reset() {
+ *x = AddItemRequest{}
+ mi := &file_demo_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *AddItemRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AddItemRequest) ProtoMessage() {}
+
+func (x *AddItemRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[1]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use AddItemRequest.ProtoReflect.Descriptor instead.
+func (*AddItemRequest) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *AddItemRequest) GetUserId() string {
+ if x != nil {
+ return x.UserId
+ }
+ return ""
+}
+
+func (x *AddItemRequest) GetItem() *CartItem {
+ if x != nil {
+ return x.Item
+ }
+ return nil
+}
+
+type EmptyCartRequest struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *EmptyCartRequest) Reset() {
+ *x = EmptyCartRequest{}
+ mi := &file_demo_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *EmptyCartRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*EmptyCartRequest) ProtoMessage() {}
+
+func (x *EmptyCartRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[2]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use EmptyCartRequest.ProtoReflect.Descriptor instead.
+func (*EmptyCartRequest) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *EmptyCartRequest) GetUserId() string {
+ if x != nil {
+ return x.UserId
+ }
+ return ""
+}
+
+type GetCartRequest struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *GetCartRequest) Reset() {
+ *x = GetCartRequest{}
+ mi := &file_demo_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *GetCartRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetCartRequest) ProtoMessage() {}
+
+func (x *GetCartRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[3]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetCartRequest.ProtoReflect.Descriptor instead.
+func (*GetCartRequest) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *GetCartRequest) GetUserId() string {
+ if x != nil {
+ return x.UserId
+ }
+ return ""
+}
+
+type Cart struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
+ Items []*CartItem `protobuf:"bytes,2,rep,name=items,proto3" json:"items,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *Cart) Reset() {
+ *x = Cart{}
+ mi := &file_demo_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *Cart) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Cart) ProtoMessage() {}
+
+func (x *Cart) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[4]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Cart.ProtoReflect.Descriptor instead.
+func (*Cart) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *Cart) GetUserId() string {
+ if x != nil {
+ return x.UserId
+ }
+ return ""
+}
+
+func (x *Cart) GetItems() []*CartItem {
+ if x != nil {
+ return x.Items
+ }
+ return nil
+}
+
+type Empty struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *Empty) Reset() {
+ *x = Empty{}
+ mi := &file_demo_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *Empty) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Empty) ProtoMessage() {}
+
+func (x *Empty) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[5]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Empty.ProtoReflect.Descriptor instead.
+func (*Empty) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{5}
+}
+
+type ListRecommendationsRequest struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
+ ProductIds []string `protobuf:"bytes,2,rep,name=product_ids,json=productIds,proto3" json:"product_ids,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *ListRecommendationsRequest) Reset() {
+ *x = ListRecommendationsRequest{}
+ mi := &file_demo_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *ListRecommendationsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListRecommendationsRequest) ProtoMessage() {}
+
+func (x *ListRecommendationsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[6]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListRecommendationsRequest.ProtoReflect.Descriptor instead.
+func (*ListRecommendationsRequest) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *ListRecommendationsRequest) GetUserId() string {
+ if x != nil {
+ return x.UserId
+ }
+ return ""
+}
+
+func (x *ListRecommendationsRequest) GetProductIds() []string {
+ if x != nil {
+ return x.ProductIds
+ }
+ return nil
+}
+
+type ListRecommendationsResponse struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ ProductIds []string `protobuf:"bytes,1,rep,name=product_ids,json=productIds,proto3" json:"product_ids,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *ListRecommendationsResponse) Reset() {
+ *x = ListRecommendationsResponse{}
+ mi := &file_demo_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *ListRecommendationsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListRecommendationsResponse) ProtoMessage() {}
+
+func (x *ListRecommendationsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[7]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListRecommendationsResponse.ProtoReflect.Descriptor instead.
+func (*ListRecommendationsResponse) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{7}
+}
+
+func (x *ListRecommendationsResponse) GetProductIds() []string {
+ if x != nil {
+ return x.ProductIds
+ }
+ return nil
+}
+
+type Product struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
+ Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
+ Picture string `protobuf:"bytes,4,opt,name=picture,proto3" json:"picture,omitempty"`
+ PriceUsd *Money `protobuf:"bytes,5,opt,name=price_usd,json=priceUsd,proto3" json:"price_usd,omitempty"`
+ // Categories such as "clothing" or "kitchen" that can be used to look up
+ // other related products.
+ Categories []string `protobuf:"bytes,6,rep,name=categories,proto3" json:"categories,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *Product) Reset() {
+ *x = Product{}
+ mi := &file_demo_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *Product) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Product) ProtoMessage() {}
+
+func (x *Product) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[8]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Product.ProtoReflect.Descriptor instead.
+func (*Product) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{8}
+}
+
+func (x *Product) GetId() string {
+ if x != nil {
+ return x.Id
+ }
+ return ""
+}
+
+func (x *Product) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *Product) GetDescription() string {
+ if x != nil {
+ return x.Description
+ }
+ return ""
+}
+
+func (x *Product) GetPicture() string {
+ if x != nil {
+ return x.Picture
+ }
+ return ""
+}
+
+func (x *Product) GetPriceUsd() *Money {
+ if x != nil {
+ return x.PriceUsd
+ }
+ return nil
+}
+
+func (x *Product) GetCategories() []string {
+ if x != nil {
+ return x.Categories
+ }
+ return nil
+}
+
+type ListProductsResponse struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Products []*Product `protobuf:"bytes,1,rep,name=products,proto3" json:"products,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *ListProductsResponse) Reset() {
+ *x = ListProductsResponse{}
+ mi := &file_demo_proto_msgTypes[9]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *ListProductsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListProductsResponse) ProtoMessage() {}
+
+func (x *ListProductsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[9]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListProductsResponse.ProtoReflect.Descriptor instead.
+func (*ListProductsResponse) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{9}
+}
+
+func (x *ListProductsResponse) GetProducts() []*Product {
+ if x != nil {
+ return x.Products
+ }
+ return nil
+}
+
+type GetProductRequest struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *GetProductRequest) Reset() {
+ *x = GetProductRequest{}
+ mi := &file_demo_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *GetProductRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetProductRequest) ProtoMessage() {}
+
+func (x *GetProductRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[10]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetProductRequest.ProtoReflect.Descriptor instead.
+func (*GetProductRequest) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{10}
+}
+
+func (x *GetProductRequest) GetId() string {
+ if x != nil {
+ return x.Id
+ }
+ return ""
+}
+
+type SearchProductsRequest struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Query string `protobuf:"bytes,1,opt,name=query,proto3" json:"query,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *SearchProductsRequest) Reset() {
+ *x = SearchProductsRequest{}
+ mi := &file_demo_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *SearchProductsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SearchProductsRequest) ProtoMessage() {}
+
+func (x *SearchProductsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[11]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SearchProductsRequest.ProtoReflect.Descriptor instead.
+func (*SearchProductsRequest) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{11}
+}
+
+func (x *SearchProductsRequest) GetQuery() string {
+ if x != nil {
+ return x.Query
+ }
+ return ""
+}
+
+type SearchProductsResponse struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Results []*Product `protobuf:"bytes,1,rep,name=results,proto3" json:"results,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *SearchProductsResponse) Reset() {
+ *x = SearchProductsResponse{}
+ mi := &file_demo_proto_msgTypes[12]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *SearchProductsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SearchProductsResponse) ProtoMessage() {}
+
+func (x *SearchProductsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[12]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SearchProductsResponse.ProtoReflect.Descriptor instead.
+func (*SearchProductsResponse) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{12}
+}
+
+func (x *SearchProductsResponse) GetResults() []*Product {
+ if x != nil {
+ return x.Results
+ }
+ return nil
+}
+
+type GetQuoteRequest struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Address *Address `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
+ Items []*CartItem `protobuf:"bytes,2,rep,name=items,proto3" json:"items,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *GetQuoteRequest) Reset() {
+ *x = GetQuoteRequest{}
+ mi := &file_demo_proto_msgTypes[13]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *GetQuoteRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetQuoteRequest) ProtoMessage() {}
+
+func (x *GetQuoteRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[13]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetQuoteRequest.ProtoReflect.Descriptor instead.
+func (*GetQuoteRequest) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{13}
+}
+
+func (x *GetQuoteRequest) GetAddress() *Address {
+ if x != nil {
+ return x.Address
+ }
+ return nil
+}
+
+func (x *GetQuoteRequest) GetItems() []*CartItem {
+ if x != nil {
+ return x.Items
+ }
+ return nil
+}
+
+type GetQuoteResponse struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ CostUsd *Money `protobuf:"bytes,1,opt,name=cost_usd,json=costUsd,proto3" json:"cost_usd,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *GetQuoteResponse) Reset() {
+ *x = GetQuoteResponse{}
+ mi := &file_demo_proto_msgTypes[14]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *GetQuoteResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetQuoteResponse) ProtoMessage() {}
+
+func (x *GetQuoteResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[14]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetQuoteResponse.ProtoReflect.Descriptor instead.
+func (*GetQuoteResponse) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{14}
+}
+
+func (x *GetQuoteResponse) GetCostUsd() *Money {
+ if x != nil {
+ return x.CostUsd
+ }
+ return nil
+}
+
+type ShipOrderRequest struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Address *Address `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
+ Items []*CartItem `protobuf:"bytes,2,rep,name=items,proto3" json:"items,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *ShipOrderRequest) Reset() {
+ *x = ShipOrderRequest{}
+ mi := &file_demo_proto_msgTypes[15]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *ShipOrderRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ShipOrderRequest) ProtoMessage() {}
+
+func (x *ShipOrderRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[15]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ShipOrderRequest.ProtoReflect.Descriptor instead.
+func (*ShipOrderRequest) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{15}
+}
+
+func (x *ShipOrderRequest) GetAddress() *Address {
+ if x != nil {
+ return x.Address
+ }
+ return nil
+}
+
+func (x *ShipOrderRequest) GetItems() []*CartItem {
+ if x != nil {
+ return x.Items
+ }
+ return nil
+}
+
+type ShipOrderResponse struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ TrackingId string `protobuf:"bytes,1,opt,name=tracking_id,json=trackingId,proto3" json:"tracking_id,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *ShipOrderResponse) Reset() {
+ *x = ShipOrderResponse{}
+ mi := &file_demo_proto_msgTypes[16]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *ShipOrderResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ShipOrderResponse) ProtoMessage() {}
+
+func (x *ShipOrderResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[16]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ShipOrderResponse.ProtoReflect.Descriptor instead.
+func (*ShipOrderResponse) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{16}
+}
+
+func (x *ShipOrderResponse) GetTrackingId() string {
+ if x != nil {
+ return x.TrackingId
+ }
+ return ""
+}
+
+type Address struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ StreetAddress string `protobuf:"bytes,1,opt,name=street_address,json=streetAddress,proto3" json:"street_address,omitempty"`
+ City string `protobuf:"bytes,2,opt,name=city,proto3" json:"city,omitempty"`
+ State string `protobuf:"bytes,3,opt,name=state,proto3" json:"state,omitempty"`
+ Country string `protobuf:"bytes,4,opt,name=country,proto3" json:"country,omitempty"`
+ ZipCode string `protobuf:"bytes,5,opt,name=zip_code,json=zipCode,proto3" json:"zip_code,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *Address) Reset() {
+ *x = Address{}
+ mi := &file_demo_proto_msgTypes[17]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *Address) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Address) ProtoMessage() {}
+
+func (x *Address) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[17]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Address.ProtoReflect.Descriptor instead.
+func (*Address) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{17}
+}
+
+func (x *Address) GetStreetAddress() string {
+ if x != nil {
+ return x.StreetAddress
+ }
+ return ""
+}
+
+func (x *Address) GetCity() string {
+ if x != nil {
+ return x.City
+ }
+ return ""
+}
+
+func (x *Address) GetState() string {
+ if x != nil {
+ return x.State
+ }
+ return ""
+}
+
+func (x *Address) GetCountry() string {
+ if x != nil {
+ return x.Country
+ }
+ return ""
+}
+
+func (x *Address) GetZipCode() string {
+ if x != nil {
+ return x.ZipCode
+ }
+ return ""
+}
+
+// Represents an amount of money with its currency type.
+type Money struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // The 3-letter currency code defined in ISO 4217.
+ CurrencyCode string `protobuf:"bytes,1,opt,name=currency_code,json=currencyCode,proto3" json:"currency_code,omitempty"`
+ // The whole units of the amount.
+ // For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ Units int64 `protobuf:"varint,2,opt,name=units,proto3" json:"units,omitempty"`
+ // Number of nano (10^-9) units of the amount.
+ // The value must be between -999,999,999 and +999,999,999 inclusive.
+ // If `units` is positive, `nanos` must be positive or zero.
+ // If `units` is zero, `nanos` can be positive, zero, or negative.
+ // If `units` is negative, `nanos` must be negative or zero.
+ // For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ Nanos int32 `protobuf:"varint,3,opt,name=nanos,proto3" json:"nanos,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *Money) Reset() {
+ *x = Money{}
+ mi := &file_demo_proto_msgTypes[18]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *Money) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Money) ProtoMessage() {}
+
+func (x *Money) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[18]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Money.ProtoReflect.Descriptor instead.
+func (*Money) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{18}
+}
+
+func (x *Money) GetCurrencyCode() string {
+ if x != nil {
+ return x.CurrencyCode
+ }
+ return ""
+}
+
+func (x *Money) GetUnits() int64 {
+ if x != nil {
+ return x.Units
+ }
+ return 0
+}
+
+func (x *Money) GetNanos() int32 {
+ if x != nil {
+ return x.Nanos
+ }
+ return 0
+}
+
+type GetSupportedCurrenciesResponse struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // The 3-letter currency code defined in ISO 4217.
+ CurrencyCodes []string `protobuf:"bytes,1,rep,name=currency_codes,json=currencyCodes,proto3" json:"currency_codes,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *GetSupportedCurrenciesResponse) Reset() {
+ *x = GetSupportedCurrenciesResponse{}
+ mi := &file_demo_proto_msgTypes[19]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *GetSupportedCurrenciesResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetSupportedCurrenciesResponse) ProtoMessage() {}
+
+func (x *GetSupportedCurrenciesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[19]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetSupportedCurrenciesResponse.ProtoReflect.Descriptor instead.
+func (*GetSupportedCurrenciesResponse) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{19}
+}
+
+func (x *GetSupportedCurrenciesResponse) GetCurrencyCodes() []string {
+ if x != nil {
+ return x.CurrencyCodes
+ }
+ return nil
+}
+
+type CurrencyConversionRequest struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ From *Money `protobuf:"bytes,1,opt,name=from,proto3" json:"from,omitempty"`
+ // The 3-letter currency code defined in ISO 4217.
+ ToCode string `protobuf:"bytes,2,opt,name=to_code,json=toCode,proto3" json:"to_code,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *CurrencyConversionRequest) Reset() {
+ *x = CurrencyConversionRequest{}
+ mi := &file_demo_proto_msgTypes[20]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *CurrencyConversionRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CurrencyConversionRequest) ProtoMessage() {}
+
+func (x *CurrencyConversionRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[20]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CurrencyConversionRequest.ProtoReflect.Descriptor instead.
+func (*CurrencyConversionRequest) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{20}
+}
+
+func (x *CurrencyConversionRequest) GetFrom() *Money {
+ if x != nil {
+ return x.From
+ }
+ return nil
+}
+
+func (x *CurrencyConversionRequest) GetToCode() string {
+ if x != nil {
+ return x.ToCode
+ }
+ return ""
+}
+
+type CreditCardInfo struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ CreditCardNumber string `protobuf:"bytes,1,opt,name=credit_card_number,json=creditCardNumber,proto3" json:"credit_card_number,omitempty"`
+ CreditCardCvv int32 `protobuf:"varint,2,opt,name=credit_card_cvv,json=creditCardCvv,proto3" json:"credit_card_cvv,omitempty"`
+ CreditCardExpirationYear int32 `protobuf:"varint,3,opt,name=credit_card_expiration_year,json=creditCardExpirationYear,proto3" json:"credit_card_expiration_year,omitempty"`
+ CreditCardExpirationMonth int32 `protobuf:"varint,4,opt,name=credit_card_expiration_month,json=creditCardExpirationMonth,proto3" json:"credit_card_expiration_month,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *CreditCardInfo) Reset() {
+ *x = CreditCardInfo{}
+ mi := &file_demo_proto_msgTypes[21]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *CreditCardInfo) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreditCardInfo) ProtoMessage() {}
+
+func (x *CreditCardInfo) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[21]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CreditCardInfo.ProtoReflect.Descriptor instead.
+func (*CreditCardInfo) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{21}
+}
+
+func (x *CreditCardInfo) GetCreditCardNumber() string {
+ if x != nil {
+ return x.CreditCardNumber
+ }
+ return ""
+}
+
+func (x *CreditCardInfo) GetCreditCardCvv() int32 {
+ if x != nil {
+ return x.CreditCardCvv
+ }
+ return 0
+}
+
+func (x *CreditCardInfo) GetCreditCardExpirationYear() int32 {
+ if x != nil {
+ return x.CreditCardExpirationYear
+ }
+ return 0
+}
+
+func (x *CreditCardInfo) GetCreditCardExpirationMonth() int32 {
+ if x != nil {
+ return x.CreditCardExpirationMonth
+ }
+ return 0
+}
+
+type ChargeRequest struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Amount *Money `protobuf:"bytes,1,opt,name=amount,proto3" json:"amount,omitempty"`
+ CreditCard *CreditCardInfo `protobuf:"bytes,2,opt,name=credit_card,json=creditCard,proto3" json:"credit_card,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *ChargeRequest) Reset() {
+ *x = ChargeRequest{}
+ mi := &file_demo_proto_msgTypes[22]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *ChargeRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ChargeRequest) ProtoMessage() {}
+
+func (x *ChargeRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[22]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ChargeRequest.ProtoReflect.Descriptor instead.
+func (*ChargeRequest) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{22}
+}
+
+func (x *ChargeRequest) GetAmount() *Money {
+ if x != nil {
+ return x.Amount
+ }
+ return nil
+}
+
+func (x *ChargeRequest) GetCreditCard() *CreditCardInfo {
+ if x != nil {
+ return x.CreditCard
+ }
+ return nil
+}
+
+type ChargeResponse struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ TransactionId string `protobuf:"bytes,1,opt,name=transaction_id,json=transactionId,proto3" json:"transaction_id,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *ChargeResponse) Reset() {
+ *x = ChargeResponse{}
+ mi := &file_demo_proto_msgTypes[23]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *ChargeResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ChargeResponse) ProtoMessage() {}
+
+func (x *ChargeResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[23]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ChargeResponse.ProtoReflect.Descriptor instead.
+func (*ChargeResponse) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{23}
+}
+
+func (x *ChargeResponse) GetTransactionId() string {
+ if x != nil {
+ return x.TransactionId
+ }
+ return ""
+}
+
+type OrderItem struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Item *CartItem `protobuf:"bytes,1,opt,name=item,proto3" json:"item,omitempty"`
+ Cost *Money `protobuf:"bytes,2,opt,name=cost,proto3" json:"cost,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *OrderItem) Reset() {
+ *x = OrderItem{}
+ mi := &file_demo_proto_msgTypes[24]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *OrderItem) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*OrderItem) ProtoMessage() {}
+
+func (x *OrderItem) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[24]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use OrderItem.ProtoReflect.Descriptor instead.
+func (*OrderItem) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{24}
+}
+
+func (x *OrderItem) GetItem() *CartItem {
+ if x != nil {
+ return x.Item
+ }
+ return nil
+}
+
+func (x *OrderItem) GetCost() *Money {
+ if x != nil {
+ return x.Cost
+ }
+ return nil
+}
+
+type OrderResult struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ OrderId string `protobuf:"bytes,1,opt,name=order_id,json=orderId,proto3" json:"order_id,omitempty"`
+ ShippingTrackingId string `protobuf:"bytes,2,opt,name=shipping_tracking_id,json=shippingTrackingId,proto3" json:"shipping_tracking_id,omitempty"`
+ ShippingCost *Money `protobuf:"bytes,3,opt,name=shipping_cost,json=shippingCost,proto3" json:"shipping_cost,omitempty"`
+ ShippingAddress *Address `protobuf:"bytes,4,opt,name=shipping_address,json=shippingAddress,proto3" json:"shipping_address,omitempty"`
+ Items []*OrderItem `protobuf:"bytes,5,rep,name=items,proto3" json:"items,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *OrderResult) Reset() {
+ *x = OrderResult{}
+ mi := &file_demo_proto_msgTypes[25]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *OrderResult) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*OrderResult) ProtoMessage() {}
+
+func (x *OrderResult) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[25]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use OrderResult.ProtoReflect.Descriptor instead.
+func (*OrderResult) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{25}
+}
+
+func (x *OrderResult) GetOrderId() string {
+ if x != nil {
+ return x.OrderId
+ }
+ return ""
+}
+
+func (x *OrderResult) GetShippingTrackingId() string {
+ if x != nil {
+ return x.ShippingTrackingId
+ }
+ return ""
+}
+
+func (x *OrderResult) GetShippingCost() *Money {
+ if x != nil {
+ return x.ShippingCost
+ }
+ return nil
+}
+
+func (x *OrderResult) GetShippingAddress() *Address {
+ if x != nil {
+ return x.ShippingAddress
+ }
+ return nil
+}
+
+func (x *OrderResult) GetItems() []*OrderItem {
+ if x != nil {
+ return x.Items
+ }
+ return nil
+}
+
+type SendOrderConfirmationRequest struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Email string `protobuf:"bytes,1,opt,name=email,proto3" json:"email,omitempty"`
+ Order *OrderResult `protobuf:"bytes,2,opt,name=order,proto3" json:"order,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *SendOrderConfirmationRequest) Reset() {
+ *x = SendOrderConfirmationRequest{}
+ mi := &file_demo_proto_msgTypes[26]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *SendOrderConfirmationRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SendOrderConfirmationRequest) ProtoMessage() {}
+
+func (x *SendOrderConfirmationRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[26]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SendOrderConfirmationRequest.ProtoReflect.Descriptor instead.
+func (*SendOrderConfirmationRequest) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{26}
+}
+
+func (x *SendOrderConfirmationRequest) GetEmail() string {
+ if x != nil {
+ return x.Email
+ }
+ return ""
+}
+
+func (x *SendOrderConfirmationRequest) GetOrder() *OrderResult {
+ if x != nil {
+ return x.Order
+ }
+ return nil
+}
+
+type PlaceOrderRequest struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ UserId string `protobuf:"bytes,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
+ UserCurrency string `protobuf:"bytes,2,opt,name=user_currency,json=userCurrency,proto3" json:"user_currency,omitempty"`
+ Address *Address `protobuf:"bytes,3,opt,name=address,proto3" json:"address,omitempty"`
+ Email string `protobuf:"bytes,5,opt,name=email,proto3" json:"email,omitempty"`
+ CreditCard *CreditCardInfo `protobuf:"bytes,6,opt,name=credit_card,json=creditCard,proto3" json:"credit_card,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *PlaceOrderRequest) Reset() {
+ *x = PlaceOrderRequest{}
+ mi := &file_demo_proto_msgTypes[27]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *PlaceOrderRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PlaceOrderRequest) ProtoMessage() {}
+
+func (x *PlaceOrderRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[27]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use PlaceOrderRequest.ProtoReflect.Descriptor instead.
+func (*PlaceOrderRequest) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{27}
+}
+
+func (x *PlaceOrderRequest) GetUserId() string {
+ if x != nil {
+ return x.UserId
+ }
+ return ""
+}
+
+func (x *PlaceOrderRequest) GetUserCurrency() string {
+ if x != nil {
+ return x.UserCurrency
+ }
+ return ""
+}
+
+func (x *PlaceOrderRequest) GetAddress() *Address {
+ if x != nil {
+ return x.Address
+ }
+ return nil
+}
+
+func (x *PlaceOrderRequest) GetEmail() string {
+ if x != nil {
+ return x.Email
+ }
+ return ""
+}
+
+func (x *PlaceOrderRequest) GetCreditCard() *CreditCardInfo {
+ if x != nil {
+ return x.CreditCard
+ }
+ return nil
+}
+
+type PlaceOrderResponse struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Order *OrderResult `protobuf:"bytes,1,opt,name=order,proto3" json:"order,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *PlaceOrderResponse) Reset() {
+ *x = PlaceOrderResponse{}
+ mi := &file_demo_proto_msgTypes[28]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *PlaceOrderResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PlaceOrderResponse) ProtoMessage() {}
+
+func (x *PlaceOrderResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[28]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use PlaceOrderResponse.ProtoReflect.Descriptor instead.
+func (*PlaceOrderResponse) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{28}
+}
+
+func (x *PlaceOrderResponse) GetOrder() *OrderResult {
+ if x != nil {
+ return x.Order
+ }
+ return nil
+}
+
+type AdRequest struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // List of important key words from the current page describing the context.
+ ContextKeys []string `protobuf:"bytes,1,rep,name=context_keys,json=contextKeys,proto3" json:"context_keys,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *AdRequest) Reset() {
+ *x = AdRequest{}
+ mi := &file_demo_proto_msgTypes[29]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *AdRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AdRequest) ProtoMessage() {}
+
+func (x *AdRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[29]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use AdRequest.ProtoReflect.Descriptor instead.
+func (*AdRequest) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{29}
+}
+
+func (x *AdRequest) GetContextKeys() []string {
+ if x != nil {
+ return x.ContextKeys
+ }
+ return nil
+}
+
+type AdResponse struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Ads []*Ad `protobuf:"bytes,1,rep,name=ads,proto3" json:"ads,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *AdResponse) Reset() {
+ *x = AdResponse{}
+ mi := &file_demo_proto_msgTypes[30]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *AdResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AdResponse) ProtoMessage() {}
+
+func (x *AdResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[30]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use AdResponse.ProtoReflect.Descriptor instead.
+func (*AdResponse) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{30}
+}
+
+func (x *AdResponse) GetAds() []*Ad {
+ if x != nil {
+ return x.Ads
+ }
+ return nil
+}
+
+type Ad struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // url to redirect to when an ad is clicked.
+ RedirectUrl string `protobuf:"bytes,1,opt,name=redirect_url,json=redirectUrl,proto3" json:"redirect_url,omitempty"`
+ // short advertisement text to display.
+ Text string `protobuf:"bytes,2,opt,name=text,proto3" json:"text,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *Ad) Reset() {
+ *x = Ad{}
+ mi := &file_demo_proto_msgTypes[31]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *Ad) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Ad) ProtoMessage() {}
+
+func (x *Ad) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[31]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Ad.ProtoReflect.Descriptor instead.
+func (*Ad) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{31}
+}
+
+func (x *Ad) GetRedirectUrl() string {
+ if x != nil {
+ return x.RedirectUrl
+ }
+ return ""
+}
+
+func (x *Ad) GetText() string {
+ if x != nil {
+ return x.Text
+ }
+ return ""
+}
+
+type Flag struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
+ Enabled bool `protobuf:"varint,3,opt,name=enabled,proto3" json:"enabled,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *Flag) Reset() {
+ *x = Flag{}
+ mi := &file_demo_proto_msgTypes[32]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *Flag) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Flag) ProtoMessage() {}
+
+func (x *Flag) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[32]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Flag.ProtoReflect.Descriptor instead.
+func (*Flag) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{32}
+}
+
+func (x *Flag) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *Flag) GetDescription() string {
+ if x != nil {
+ return x.Description
+ }
+ return ""
+}
+
+func (x *Flag) GetEnabled() bool {
+ if x != nil {
+ return x.Enabled
+ }
+ return false
+}
+
+type GetFlagRequest struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *GetFlagRequest) Reset() {
+ *x = GetFlagRequest{}
+ mi := &file_demo_proto_msgTypes[33]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *GetFlagRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetFlagRequest) ProtoMessage() {}
+
+func (x *GetFlagRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[33]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetFlagRequest.ProtoReflect.Descriptor instead.
+func (*GetFlagRequest) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{33}
+}
+
+func (x *GetFlagRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+type GetFlagResponse struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Flag *Flag `protobuf:"bytes,1,opt,name=flag,proto3" json:"flag,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *GetFlagResponse) Reset() {
+ *x = GetFlagResponse{}
+ mi := &file_demo_proto_msgTypes[34]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *GetFlagResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetFlagResponse) ProtoMessage() {}
+
+func (x *GetFlagResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[34]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetFlagResponse.ProtoReflect.Descriptor instead.
+func (*GetFlagResponse) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{34}
+}
+
+func (x *GetFlagResponse) GetFlag() *Flag {
+ if x != nil {
+ return x.Flag
+ }
+ return nil
+}
+
+type CreateFlagRequest struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
+ Enabled bool `protobuf:"varint,3,opt,name=enabled,proto3" json:"enabled,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *CreateFlagRequest) Reset() {
+ *x = CreateFlagRequest{}
+ mi := &file_demo_proto_msgTypes[35]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *CreateFlagRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateFlagRequest) ProtoMessage() {}
+
+func (x *CreateFlagRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[35]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CreateFlagRequest.ProtoReflect.Descriptor instead.
+func (*CreateFlagRequest) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{35}
+}
+
+func (x *CreateFlagRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *CreateFlagRequest) GetDescription() string {
+ if x != nil {
+ return x.Description
+ }
+ return ""
+}
+
+func (x *CreateFlagRequest) GetEnabled() bool {
+ if x != nil {
+ return x.Enabled
+ }
+ return false
+}
+
+type CreateFlagResponse struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Flag *Flag `protobuf:"bytes,1,opt,name=flag,proto3" json:"flag,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *CreateFlagResponse) Reset() {
+ *x = CreateFlagResponse{}
+ mi := &file_demo_proto_msgTypes[36]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *CreateFlagResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateFlagResponse) ProtoMessage() {}
+
+func (x *CreateFlagResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[36]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CreateFlagResponse.ProtoReflect.Descriptor instead.
+func (*CreateFlagResponse) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{36}
+}
+
+func (x *CreateFlagResponse) GetFlag() *Flag {
+ if x != nil {
+ return x.Flag
+ }
+ return nil
+}
+
+type UpdateFlagRequest struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ Enabled bool `protobuf:"varint,2,opt,name=enabled,proto3" json:"enabled,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *UpdateFlagRequest) Reset() {
+ *x = UpdateFlagRequest{}
+ mi := &file_demo_proto_msgTypes[37]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *UpdateFlagRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateFlagRequest) ProtoMessage() {}
+
+func (x *UpdateFlagRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[37]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdateFlagRequest.ProtoReflect.Descriptor instead.
+func (*UpdateFlagRequest) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{37}
+}
+
+func (x *UpdateFlagRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *UpdateFlagRequest) GetEnabled() bool {
+ if x != nil {
+ return x.Enabled
+ }
+ return false
+}
+
+type UpdateFlagResponse struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *UpdateFlagResponse) Reset() {
+ *x = UpdateFlagResponse{}
+ mi := &file_demo_proto_msgTypes[38]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *UpdateFlagResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateFlagResponse) ProtoMessage() {}
+
+func (x *UpdateFlagResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[38]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdateFlagResponse.ProtoReflect.Descriptor instead.
+func (*UpdateFlagResponse) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{38}
+}
+
+type ListFlagsRequest struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *ListFlagsRequest) Reset() {
+ *x = ListFlagsRequest{}
+ mi := &file_demo_proto_msgTypes[39]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *ListFlagsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListFlagsRequest) ProtoMessage() {}
+
+func (x *ListFlagsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[39]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListFlagsRequest.ProtoReflect.Descriptor instead.
+func (*ListFlagsRequest) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{39}
+}
+
+type ListFlagsResponse struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Flag []*Flag `protobuf:"bytes,1,rep,name=flag,proto3" json:"flag,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *ListFlagsResponse) Reset() {
+ *x = ListFlagsResponse{}
+ mi := &file_demo_proto_msgTypes[40]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *ListFlagsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListFlagsResponse) ProtoMessage() {}
+
+func (x *ListFlagsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[40]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListFlagsResponse.ProtoReflect.Descriptor instead.
+func (*ListFlagsResponse) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{40}
+}
+
+func (x *ListFlagsResponse) GetFlag() []*Flag {
+ if x != nil {
+ return x.Flag
+ }
+ return nil
+}
+
+type DeleteFlagRequest struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *DeleteFlagRequest) Reset() {
+ *x = DeleteFlagRequest{}
+ mi := &file_demo_proto_msgTypes[41]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *DeleteFlagRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteFlagRequest) ProtoMessage() {}
+
+func (x *DeleteFlagRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[41]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeleteFlagRequest.ProtoReflect.Descriptor instead.
+func (*DeleteFlagRequest) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{41}
+}
+
+func (x *DeleteFlagRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+type DeleteFlagResponse struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *DeleteFlagResponse) Reset() {
+ *x = DeleteFlagResponse{}
+ mi := &file_demo_proto_msgTypes[42]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *DeleteFlagResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteFlagResponse) ProtoMessage() {}
+
+func (x *DeleteFlagResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_demo_proto_msgTypes[42]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeleteFlagResponse.ProtoReflect.Descriptor instead.
+func (*DeleteFlagResponse) Descriptor() ([]byte, []int) {
+ return file_demo_proto_rawDescGZIP(), []int{42}
+}
+
+var File_demo_proto protoreflect.FileDescriptor
+
+const file_demo_proto_rawDesc = "" +
+ "\n" +
+ "\n" +
+ "demo.proto\x12\boteldemo\"E\n" +
+ "\bCartItem\x12\x1d\n" +
+ "\n" +
+ "product_id\x18\x01 \x01(\tR\tproductId\x12\x1a\n" +
+ "\bquantity\x18\x02 \x01(\x05R\bquantity\"Q\n" +
+ "\x0eAddItemRequest\x12\x17\n" +
+ "\auser_id\x18\x01 \x01(\tR\x06userId\x12&\n" +
+ "\x04item\x18\x02 \x01(\v2\x12.oteldemo.CartItemR\x04item\"+\n" +
+ "\x10EmptyCartRequest\x12\x17\n" +
+ "\auser_id\x18\x01 \x01(\tR\x06userId\")\n" +
+ "\x0eGetCartRequest\x12\x17\n" +
+ "\auser_id\x18\x01 \x01(\tR\x06userId\"I\n" +
+ "\x04Cart\x12\x17\n" +
+ "\auser_id\x18\x01 \x01(\tR\x06userId\x12(\n" +
+ "\x05items\x18\x02 \x03(\v2\x12.oteldemo.CartItemR\x05items\"\a\n" +
+ "\x05Empty\"V\n" +
+ "\x1aListRecommendationsRequest\x12\x17\n" +
+ "\auser_id\x18\x01 \x01(\tR\x06userId\x12\x1f\n" +
+ "\vproduct_ids\x18\x02 \x03(\tR\n" +
+ "productIds\">\n" +
+ "\x1bListRecommendationsResponse\x12\x1f\n" +
+ "\vproduct_ids\x18\x01 \x03(\tR\n" +
+ "productIds\"\xb7\x01\n" +
+ "\aProduct\x12\x0e\n" +
+ "\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n" +
+ "\x04name\x18\x02 \x01(\tR\x04name\x12 \n" +
+ "\vdescription\x18\x03 \x01(\tR\vdescription\x12\x18\n" +
+ "\apicture\x18\x04 \x01(\tR\apicture\x12,\n" +
+ "\tprice_usd\x18\x05 \x01(\v2\x0f.oteldemo.MoneyR\bpriceUsd\x12\x1e\n" +
+ "\n" +
+ "categories\x18\x06 \x03(\tR\n" +
+ "categories\"E\n" +
+ "\x14ListProductsResponse\x12-\n" +
+ "\bproducts\x18\x01 \x03(\v2\x11.oteldemo.ProductR\bproducts\"#\n" +
+ "\x11GetProductRequest\x12\x0e\n" +
+ "\x02id\x18\x01 \x01(\tR\x02id\"-\n" +
+ "\x15SearchProductsRequest\x12\x14\n" +
+ "\x05query\x18\x01 \x01(\tR\x05query\"E\n" +
+ "\x16SearchProductsResponse\x12+\n" +
+ "\aresults\x18\x01 \x03(\v2\x11.oteldemo.ProductR\aresults\"h\n" +
+ "\x0fGetQuoteRequest\x12+\n" +
+ "\aaddress\x18\x01 \x01(\v2\x11.oteldemo.AddressR\aaddress\x12(\n" +
+ "\x05items\x18\x02 \x03(\v2\x12.oteldemo.CartItemR\x05items\">\n" +
+ "\x10GetQuoteResponse\x12*\n" +
+ "\bcost_usd\x18\x01 \x01(\v2\x0f.oteldemo.MoneyR\acostUsd\"i\n" +
+ "\x10ShipOrderRequest\x12+\n" +
+ "\aaddress\x18\x01 \x01(\v2\x11.oteldemo.AddressR\aaddress\x12(\n" +
+ "\x05items\x18\x02 \x03(\v2\x12.oteldemo.CartItemR\x05items\"4\n" +
+ "\x11ShipOrderResponse\x12\x1f\n" +
+ "\vtracking_id\x18\x01 \x01(\tR\n" +
+ "trackingId\"\x8f\x01\n" +
+ "\aAddress\x12%\n" +
+ "\x0estreet_address\x18\x01 \x01(\tR\rstreetAddress\x12\x12\n" +
+ "\x04city\x18\x02 \x01(\tR\x04city\x12\x14\n" +
+ "\x05state\x18\x03 \x01(\tR\x05state\x12\x18\n" +
+ "\acountry\x18\x04 \x01(\tR\acountry\x12\x19\n" +
+ "\bzip_code\x18\x05 \x01(\tR\azipCode\"X\n" +
+ "\x05Money\x12#\n" +
+ "\rcurrency_code\x18\x01 \x01(\tR\fcurrencyCode\x12\x14\n" +
+ "\x05units\x18\x02 \x01(\x03R\x05units\x12\x14\n" +
+ "\x05nanos\x18\x03 \x01(\x05R\x05nanos\"G\n" +
+ "\x1eGetSupportedCurrenciesResponse\x12%\n" +
+ "\x0ecurrency_codes\x18\x01 \x03(\tR\rcurrencyCodes\"Y\n" +
+ "\x19CurrencyConversionRequest\x12#\n" +
+ "\x04from\x18\x01 \x01(\v2\x0f.oteldemo.MoneyR\x04from\x12\x17\n" +
+ "\ato_code\x18\x02 \x01(\tR\x06toCode\"\xe6\x01\n" +
+ "\x0eCreditCardInfo\x12,\n" +
+ "\x12credit_card_number\x18\x01 \x01(\tR\x10creditCardNumber\x12&\n" +
+ "\x0fcredit_card_cvv\x18\x02 \x01(\x05R\rcreditCardCvv\x12=\n" +
+ "\x1bcredit_card_expiration_year\x18\x03 \x01(\x05R\x18creditCardExpirationYear\x12?\n" +
+ "\x1ccredit_card_expiration_month\x18\x04 \x01(\x05R\x19creditCardExpirationMonth\"s\n" +
+ "\rChargeRequest\x12'\n" +
+ "\x06amount\x18\x01 \x01(\v2\x0f.oteldemo.MoneyR\x06amount\x129\n" +
+ "\vcredit_card\x18\x02 \x01(\v2\x18.oteldemo.CreditCardInfoR\n" +
+ "creditCard\"7\n" +
+ "\x0eChargeResponse\x12%\n" +
+ "\x0etransaction_id\x18\x01 \x01(\tR\rtransactionId\"X\n" +
+ "\tOrderItem\x12&\n" +
+ "\x04item\x18\x01 \x01(\v2\x12.oteldemo.CartItemR\x04item\x12#\n" +
+ "\x04cost\x18\x02 \x01(\v2\x0f.oteldemo.MoneyR\x04cost\"\xf9\x01\n" +
+ "\vOrderResult\x12\x19\n" +
+ "\border_id\x18\x01 \x01(\tR\aorderId\x120\n" +
+ "\x14shipping_tracking_id\x18\x02 \x01(\tR\x12shippingTrackingId\x124\n" +
+ "\rshipping_cost\x18\x03 \x01(\v2\x0f.oteldemo.MoneyR\fshippingCost\x12<\n" +
+ "\x10shipping_address\x18\x04 \x01(\v2\x11.oteldemo.AddressR\x0fshippingAddress\x12)\n" +
+ "\x05items\x18\x05 \x03(\v2\x13.oteldemo.OrderItemR\x05items\"a\n" +
+ "\x1cSendOrderConfirmationRequest\x12\x14\n" +
+ "\x05email\x18\x01 \x01(\tR\x05email\x12+\n" +
+ "\x05order\x18\x02 \x01(\v2\x15.oteldemo.OrderResultR\x05order\"\xcf\x01\n" +
+ "\x11PlaceOrderRequest\x12\x17\n" +
+ "\auser_id\x18\x01 \x01(\tR\x06userId\x12#\n" +
+ "\ruser_currency\x18\x02 \x01(\tR\fuserCurrency\x12+\n" +
+ "\aaddress\x18\x03 \x01(\v2\x11.oteldemo.AddressR\aaddress\x12\x14\n" +
+ "\x05email\x18\x05 \x01(\tR\x05email\x129\n" +
+ "\vcredit_card\x18\x06 \x01(\v2\x18.oteldemo.CreditCardInfoR\n" +
+ "creditCard\"A\n" +
+ "\x12PlaceOrderResponse\x12+\n" +
+ "\x05order\x18\x01 \x01(\v2\x15.oteldemo.OrderResultR\x05order\".\n" +
+ "\tAdRequest\x12!\n" +
+ "\fcontext_keys\x18\x01 \x03(\tR\vcontextKeys\",\n" +
+ "\n" +
+ "AdResponse\x12\x1e\n" +
+ "\x03ads\x18\x01 \x03(\v2\f.oteldemo.AdR\x03ads\";\n" +
+ "\x02Ad\x12!\n" +
+ "\fredirect_url\x18\x01 \x01(\tR\vredirectUrl\x12\x12\n" +
+ "\x04text\x18\x02 \x01(\tR\x04text\"V\n" +
+ "\x04Flag\x12\x12\n" +
+ "\x04name\x18\x01 \x01(\tR\x04name\x12 \n" +
+ "\vdescription\x18\x02 \x01(\tR\vdescription\x12\x18\n" +
+ "\aenabled\x18\x03 \x01(\bR\aenabled\"$\n" +
+ "\x0eGetFlagRequest\x12\x12\n" +
+ "\x04name\x18\x01 \x01(\tR\x04name\"5\n" +
+ "\x0fGetFlagResponse\x12\"\n" +
+ "\x04flag\x18\x01 \x01(\v2\x0e.oteldemo.FlagR\x04flag\"c\n" +
+ "\x11CreateFlagRequest\x12\x12\n" +
+ "\x04name\x18\x01 \x01(\tR\x04name\x12 \n" +
+ "\vdescription\x18\x02 \x01(\tR\vdescription\x12\x18\n" +
+ "\aenabled\x18\x03 \x01(\bR\aenabled\"8\n" +
+ "\x12CreateFlagResponse\x12\"\n" +
+ "\x04flag\x18\x01 \x01(\v2\x0e.oteldemo.FlagR\x04flag\"A\n" +
+ "\x11UpdateFlagRequest\x12\x12\n" +
+ "\x04name\x18\x01 \x01(\tR\x04name\x12\x18\n" +
+ "\aenabled\x18\x02 \x01(\bR\aenabled\"\x14\n" +
+ "\x12UpdateFlagResponse\"\x12\n" +
+ "\x10ListFlagsRequest\"7\n" +
+ "\x11ListFlagsResponse\x12\"\n" +
+ "\x04flag\x18\x01 \x03(\v2\x0e.oteldemo.FlagR\x04flag\"'\n" +
+ "\x11DeleteFlagRequest\x12\x12\n" +
+ "\x04name\x18\x01 \x01(\tR\x04name\"\x14\n" +
+ "\x12DeleteFlagResponse2\xb8\x01\n" +
+ "\vCartService\x126\n" +
+ "\aAddItem\x12\x18.oteldemo.AddItemRequest\x1a\x0f.oteldemo.Empty\"\x00\x125\n" +
+ "\aGetCart\x12\x18.oteldemo.GetCartRequest\x1a\x0e.oteldemo.Cart\"\x00\x12:\n" +
+ "\tEmptyCart\x12\x1a.oteldemo.EmptyCartRequest\x1a\x0f.oteldemo.Empty\"\x002}\n" +
+ "\x15RecommendationService\x12d\n" +
+ "\x13ListRecommendations\x12$.oteldemo.ListRecommendationsRequest\x1a%.oteldemo.ListRecommendationsResponse\"\x002\xf1\x01\n" +
+ "\x15ProductCatalogService\x12A\n" +
+ "\fListProducts\x12\x0f.oteldemo.Empty\x1a\x1e.oteldemo.ListProductsResponse\"\x00\x12>\n" +
+ "\n" +
+ "GetProduct\x12\x1b.oteldemo.GetProductRequest\x1a\x11.oteldemo.Product\"\x00\x12U\n" +
+ "\x0eSearchProducts\x12\x1f.oteldemo.SearchProductsRequest\x1a .oteldemo.SearchProductsResponse\"\x002\x9e\x01\n" +
+ "\x0fShippingService\x12C\n" +
+ "\bGetQuote\x12\x19.oteldemo.GetQuoteRequest\x1a\x1a.oteldemo.GetQuoteResponse\"\x00\x12F\n" +
+ "\tShipOrder\x12\x1a.oteldemo.ShipOrderRequest\x1a\x1b.oteldemo.ShipOrderResponse\"\x002\xab\x01\n" +
+ "\x0fCurrencyService\x12U\n" +
+ "\x16GetSupportedCurrencies\x12\x0f.oteldemo.Empty\x1a(.oteldemo.GetSupportedCurrenciesResponse\"\x00\x12A\n" +
+ "\aConvert\x12#.oteldemo.CurrencyConversionRequest\x1a\x0f.oteldemo.Money\"\x002O\n" +
+ "\x0ePaymentService\x12=\n" +
+ "\x06Charge\x12\x17.oteldemo.ChargeRequest\x1a\x18.oteldemo.ChargeResponse\"\x002b\n" +
+ "\fEmailService\x12R\n" +
+ "\x15SendOrderConfirmation\x12&.oteldemo.SendOrderConfirmationRequest\x1a\x0f.oteldemo.Empty\"\x002\\\n" +
+ "\x0fCheckoutService\x12I\n" +
+ "\n" +
+ "PlaceOrder\x12\x1b.oteldemo.PlaceOrderRequest\x1a\x1c.oteldemo.PlaceOrderResponse\"\x002B\n" +
+ "\tAdService\x125\n" +
+ "\x06GetAds\x12\x13.oteldemo.AdRequest\x1a\x14.oteldemo.AdResponse\"\x002\xff\x02\n" +
+ "\x12FeatureFlagService\x12@\n" +
+ "\aGetFlag\x12\x18.oteldemo.GetFlagRequest\x1a\x19.oteldemo.GetFlagResponse\"\x00\x12I\n" +
+ "\n" +
+ "CreateFlag\x12\x1b.oteldemo.CreateFlagRequest\x1a\x1c.oteldemo.CreateFlagResponse\"\x00\x12I\n" +
+ "\n" +
+ "UpdateFlag\x12\x1b.oteldemo.UpdateFlagRequest\x1a\x1c.oteldemo.UpdateFlagResponse\"\x00\x12F\n" +
+ "\tListFlags\x12\x1a.oteldemo.ListFlagsRequest\x1a\x1b.oteldemo.ListFlagsResponse\"\x00\x12I\n" +
+ "\n" +
+ "DeleteFlag\x12\x1b.oteldemo.DeleteFlagRequest\x1a\x1c.oteldemo.DeleteFlagResponse\"\x00B\x13Z\x11genproto/oteldemob\x06proto3"
+
+var (
+ file_demo_proto_rawDescOnce sync.Once
+ file_demo_proto_rawDescData []byte
+)
+
+func file_demo_proto_rawDescGZIP() []byte {
+ file_demo_proto_rawDescOnce.Do(func() {
+ file_demo_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_demo_proto_rawDesc), len(file_demo_proto_rawDesc)))
+ })
+ return file_demo_proto_rawDescData
+}
+
+var file_demo_proto_msgTypes = make([]protoimpl.MessageInfo, 43)
+var file_demo_proto_goTypes = []any{
+ (*CartItem)(nil), // 0: oteldemo.CartItem
+ (*AddItemRequest)(nil), // 1: oteldemo.AddItemRequest
+ (*EmptyCartRequest)(nil), // 2: oteldemo.EmptyCartRequest
+ (*GetCartRequest)(nil), // 3: oteldemo.GetCartRequest
+ (*Cart)(nil), // 4: oteldemo.Cart
+ (*Empty)(nil), // 5: oteldemo.Empty
+ (*ListRecommendationsRequest)(nil), // 6: oteldemo.ListRecommendationsRequest
+ (*ListRecommendationsResponse)(nil), // 7: oteldemo.ListRecommendationsResponse
+ (*Product)(nil), // 8: oteldemo.Product
+ (*ListProductsResponse)(nil), // 9: oteldemo.ListProductsResponse
+ (*GetProductRequest)(nil), // 10: oteldemo.GetProductRequest
+ (*SearchProductsRequest)(nil), // 11: oteldemo.SearchProductsRequest
+ (*SearchProductsResponse)(nil), // 12: oteldemo.SearchProductsResponse
+ (*GetQuoteRequest)(nil), // 13: oteldemo.GetQuoteRequest
+ (*GetQuoteResponse)(nil), // 14: oteldemo.GetQuoteResponse
+ (*ShipOrderRequest)(nil), // 15: oteldemo.ShipOrderRequest
+ (*ShipOrderResponse)(nil), // 16: oteldemo.ShipOrderResponse
+ (*Address)(nil), // 17: oteldemo.Address
+ (*Money)(nil), // 18: oteldemo.Money
+ (*GetSupportedCurrenciesResponse)(nil), // 19: oteldemo.GetSupportedCurrenciesResponse
+ (*CurrencyConversionRequest)(nil), // 20: oteldemo.CurrencyConversionRequest
+ (*CreditCardInfo)(nil), // 21: oteldemo.CreditCardInfo
+ (*ChargeRequest)(nil), // 22: oteldemo.ChargeRequest
+ (*ChargeResponse)(nil), // 23: oteldemo.ChargeResponse
+ (*OrderItem)(nil), // 24: oteldemo.OrderItem
+ (*OrderResult)(nil), // 25: oteldemo.OrderResult
+ (*SendOrderConfirmationRequest)(nil), // 26: oteldemo.SendOrderConfirmationRequest
+ (*PlaceOrderRequest)(nil), // 27: oteldemo.PlaceOrderRequest
+ (*PlaceOrderResponse)(nil), // 28: oteldemo.PlaceOrderResponse
+ (*AdRequest)(nil), // 29: oteldemo.AdRequest
+ (*AdResponse)(nil), // 30: oteldemo.AdResponse
+ (*Ad)(nil), // 31: oteldemo.Ad
+ (*Flag)(nil), // 32: oteldemo.Flag
+ (*GetFlagRequest)(nil), // 33: oteldemo.GetFlagRequest
+ (*GetFlagResponse)(nil), // 34: oteldemo.GetFlagResponse
+ (*CreateFlagRequest)(nil), // 35: oteldemo.CreateFlagRequest
+ (*CreateFlagResponse)(nil), // 36: oteldemo.CreateFlagResponse
+ (*UpdateFlagRequest)(nil), // 37: oteldemo.UpdateFlagRequest
+ (*UpdateFlagResponse)(nil), // 38: oteldemo.UpdateFlagResponse
+ (*ListFlagsRequest)(nil), // 39: oteldemo.ListFlagsRequest
+ (*ListFlagsResponse)(nil), // 40: oteldemo.ListFlagsResponse
+ (*DeleteFlagRequest)(nil), // 41: oteldemo.DeleteFlagRequest
+ (*DeleteFlagResponse)(nil), // 42: oteldemo.DeleteFlagResponse
+}
+var file_demo_proto_depIdxs = []int32{
+ 0, // 0: oteldemo.AddItemRequest.item:type_name -> oteldemo.CartItem
+ 0, // 1: oteldemo.Cart.items:type_name -> oteldemo.CartItem
+ 18, // 2: oteldemo.Product.price_usd:type_name -> oteldemo.Money
+ 8, // 3: oteldemo.ListProductsResponse.products:type_name -> oteldemo.Product
+ 8, // 4: oteldemo.SearchProductsResponse.results:type_name -> oteldemo.Product
+ 17, // 5: oteldemo.GetQuoteRequest.address:type_name -> oteldemo.Address
+ 0, // 6: oteldemo.GetQuoteRequest.items:type_name -> oteldemo.CartItem
+ 18, // 7: oteldemo.GetQuoteResponse.cost_usd:type_name -> oteldemo.Money
+ 17, // 8: oteldemo.ShipOrderRequest.address:type_name -> oteldemo.Address
+ 0, // 9: oteldemo.ShipOrderRequest.items:type_name -> oteldemo.CartItem
+ 18, // 10: oteldemo.CurrencyConversionRequest.from:type_name -> oteldemo.Money
+ 18, // 11: oteldemo.ChargeRequest.amount:type_name -> oteldemo.Money
+ 21, // 12: oteldemo.ChargeRequest.credit_card:type_name -> oteldemo.CreditCardInfo
+ 0, // 13: oteldemo.OrderItem.item:type_name -> oteldemo.CartItem
+ 18, // 14: oteldemo.OrderItem.cost:type_name -> oteldemo.Money
+ 18, // 15: oteldemo.OrderResult.shipping_cost:type_name -> oteldemo.Money
+ 17, // 16: oteldemo.OrderResult.shipping_address:type_name -> oteldemo.Address
+ 24, // 17: oteldemo.OrderResult.items:type_name -> oteldemo.OrderItem
+ 25, // 18: oteldemo.SendOrderConfirmationRequest.order:type_name -> oteldemo.OrderResult
+ 17, // 19: oteldemo.PlaceOrderRequest.address:type_name -> oteldemo.Address
+ 21, // 20: oteldemo.PlaceOrderRequest.credit_card:type_name -> oteldemo.CreditCardInfo
+ 25, // 21: oteldemo.PlaceOrderResponse.order:type_name -> oteldemo.OrderResult
+ 31, // 22: oteldemo.AdResponse.ads:type_name -> oteldemo.Ad
+ 32, // 23: oteldemo.GetFlagResponse.flag:type_name -> oteldemo.Flag
+ 32, // 24: oteldemo.CreateFlagResponse.flag:type_name -> oteldemo.Flag
+ 32, // 25: oteldemo.ListFlagsResponse.flag:type_name -> oteldemo.Flag
+ 1, // 26: oteldemo.CartService.AddItem:input_type -> oteldemo.AddItemRequest
+ 3, // 27: oteldemo.CartService.GetCart:input_type -> oteldemo.GetCartRequest
+ 2, // 28: oteldemo.CartService.EmptyCart:input_type -> oteldemo.EmptyCartRequest
+ 6, // 29: oteldemo.RecommendationService.ListRecommendations:input_type -> oteldemo.ListRecommendationsRequest
+ 5, // 30: oteldemo.ProductCatalogService.ListProducts:input_type -> oteldemo.Empty
+ 10, // 31: oteldemo.ProductCatalogService.GetProduct:input_type -> oteldemo.GetProductRequest
+ 11, // 32: oteldemo.ProductCatalogService.SearchProducts:input_type -> oteldemo.SearchProductsRequest
+ 13, // 33: oteldemo.ShippingService.GetQuote:input_type -> oteldemo.GetQuoteRequest
+ 15, // 34: oteldemo.ShippingService.ShipOrder:input_type -> oteldemo.ShipOrderRequest
+ 5, // 35: oteldemo.CurrencyService.GetSupportedCurrencies:input_type -> oteldemo.Empty
+ 20, // 36: oteldemo.CurrencyService.Convert:input_type -> oteldemo.CurrencyConversionRequest
+ 22, // 37: oteldemo.PaymentService.Charge:input_type -> oteldemo.ChargeRequest
+ 26, // 38: oteldemo.EmailService.SendOrderConfirmation:input_type -> oteldemo.SendOrderConfirmationRequest
+ 27, // 39: oteldemo.CheckoutService.PlaceOrder:input_type -> oteldemo.PlaceOrderRequest
+ 29, // 40: oteldemo.AdService.GetAds:input_type -> oteldemo.AdRequest
+ 33, // 41: oteldemo.FeatureFlagService.GetFlag:input_type -> oteldemo.GetFlagRequest
+ 35, // 42: oteldemo.FeatureFlagService.CreateFlag:input_type -> oteldemo.CreateFlagRequest
+ 37, // 43: oteldemo.FeatureFlagService.UpdateFlag:input_type -> oteldemo.UpdateFlagRequest
+ 39, // 44: oteldemo.FeatureFlagService.ListFlags:input_type -> oteldemo.ListFlagsRequest
+ 41, // 45: oteldemo.FeatureFlagService.DeleteFlag:input_type -> oteldemo.DeleteFlagRequest
+ 5, // 46: oteldemo.CartService.AddItem:output_type -> oteldemo.Empty
+ 4, // 47: oteldemo.CartService.GetCart:output_type -> oteldemo.Cart
+ 5, // 48: oteldemo.CartService.EmptyCart:output_type -> oteldemo.Empty
+ 7, // 49: oteldemo.RecommendationService.ListRecommendations:output_type -> oteldemo.ListRecommendationsResponse
+ 9, // 50: oteldemo.ProductCatalogService.ListProducts:output_type -> oteldemo.ListProductsResponse
+ 8, // 51: oteldemo.ProductCatalogService.GetProduct:output_type -> oteldemo.Product
+ 12, // 52: oteldemo.ProductCatalogService.SearchProducts:output_type -> oteldemo.SearchProductsResponse
+ 14, // 53: oteldemo.ShippingService.GetQuote:output_type -> oteldemo.GetQuoteResponse
+ 16, // 54: oteldemo.ShippingService.ShipOrder:output_type -> oteldemo.ShipOrderResponse
+ 19, // 55: oteldemo.CurrencyService.GetSupportedCurrencies:output_type -> oteldemo.GetSupportedCurrenciesResponse
+ 18, // 56: oteldemo.CurrencyService.Convert:output_type -> oteldemo.Money
+ 23, // 57: oteldemo.PaymentService.Charge:output_type -> oteldemo.ChargeResponse
+ 5, // 58: oteldemo.EmailService.SendOrderConfirmation:output_type -> oteldemo.Empty
+ 28, // 59: oteldemo.CheckoutService.PlaceOrder:output_type -> oteldemo.PlaceOrderResponse
+ 30, // 60: oteldemo.AdService.GetAds:output_type -> oteldemo.AdResponse
+ 34, // 61: oteldemo.FeatureFlagService.GetFlag:output_type -> oteldemo.GetFlagResponse
+ 36, // 62: oteldemo.FeatureFlagService.CreateFlag:output_type -> oteldemo.CreateFlagResponse
+ 38, // 63: oteldemo.FeatureFlagService.UpdateFlag:output_type -> oteldemo.UpdateFlagResponse
+ 40, // 64: oteldemo.FeatureFlagService.ListFlags:output_type -> oteldemo.ListFlagsResponse
+ 42, // 65: oteldemo.FeatureFlagService.DeleteFlag:output_type -> oteldemo.DeleteFlagResponse
+ 46, // [46:66] is the sub-list for method output_type
+ 26, // [26:46] is the sub-list for method input_type
+ 26, // [26:26] is the sub-list for extension type_name
+ 26, // [26:26] is the sub-list for extension extendee
+ 0, // [0:26] is the sub-list for field type_name
+}
+
+func init() { file_demo_proto_init() }
+func file_demo_proto_init() {
+ if File_demo_proto != nil {
+ return
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_demo_proto_rawDesc), len(file_demo_proto_rawDesc)),
+ NumEnums: 0,
+ NumMessages: 43,
+ NumExtensions: 0,
+ NumServices: 10,
+ },
+ GoTypes: file_demo_proto_goTypes,
+ DependencyIndexes: file_demo_proto_depIdxs,
+ MessageInfos: file_demo_proto_msgTypes,
+ }.Build()
+ File_demo_proto = out.File
+ file_demo_proto_goTypes = nil
+ file_demo_proto_depIdxs = nil
+}
diff --git a/src/product-catalog/genproto/oteldemo/demo_grpc.pb.go b/src/product-catalog/genproto/oteldemo/demo_grpc.pb.go
new file mode 100644
index 0000000..f04633a
--- /dev/null
+++ b/src/product-catalog/genproto/oteldemo/demo_grpc.pb.go
@@ -0,0 +1,1433 @@
+// Copyright 2020 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
+// versions:
+// - protoc-gen-go-grpc v1.5.1
+// - protoc v5.29.4
+// source: demo.proto
+
+package oteldemo
+
+import (
+ context "context"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+)
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+// Requires gRPC-Go v1.64.0 or later.
+const _ = grpc.SupportPackageIsVersion9
+
+const (
+ CartService_AddItem_FullMethodName = "/oteldemo.CartService/AddItem"
+ CartService_GetCart_FullMethodName = "/oteldemo.CartService/GetCart"
+ CartService_EmptyCart_FullMethodName = "/oteldemo.CartService/EmptyCart"
+)
+
+// CartServiceClient is the client API for CartService service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
+type CartServiceClient interface {
+ AddItem(ctx context.Context, in *AddItemRequest, opts ...grpc.CallOption) (*Empty, error)
+ GetCart(ctx context.Context, in *GetCartRequest, opts ...grpc.CallOption) (*Cart, error)
+ EmptyCart(ctx context.Context, in *EmptyCartRequest, opts ...grpc.CallOption) (*Empty, error)
+}
+
+type cartServiceClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewCartServiceClient(cc grpc.ClientConnInterface) CartServiceClient {
+ return &cartServiceClient{cc}
+}
+
+func (c *cartServiceClient) AddItem(ctx context.Context, in *AddItemRequest, opts ...grpc.CallOption) (*Empty, error) {
+ cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
+ out := new(Empty)
+ err := c.cc.Invoke(ctx, CartService_AddItem_FullMethodName, in, out, cOpts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *cartServiceClient) GetCart(ctx context.Context, in *GetCartRequest, opts ...grpc.CallOption) (*Cart, error) {
+ cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
+ out := new(Cart)
+ err := c.cc.Invoke(ctx, CartService_GetCart_FullMethodName, in, out, cOpts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *cartServiceClient) EmptyCart(ctx context.Context, in *EmptyCartRequest, opts ...grpc.CallOption) (*Empty, error) {
+ cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
+ out := new(Empty)
+ err := c.cc.Invoke(ctx, CartService_EmptyCart_FullMethodName, in, out, cOpts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// CartServiceServer is the server API for CartService service.
+// All implementations must embed UnimplementedCartServiceServer
+// for forward compatibility.
+type CartServiceServer interface {
+ AddItem(context.Context, *AddItemRequest) (*Empty, error)
+ GetCart(context.Context, *GetCartRequest) (*Cart, error)
+ EmptyCart(context.Context, *EmptyCartRequest) (*Empty, error)
+ mustEmbedUnimplementedCartServiceServer()
+}
+
+// UnimplementedCartServiceServer must be embedded to have
+// forward compatible implementations.
+//
+// NOTE: this should be embedded by value instead of pointer to avoid a nil
+// pointer dereference when methods are called.
+type UnimplementedCartServiceServer struct{}
+
+func (UnimplementedCartServiceServer) AddItem(context.Context, *AddItemRequest) (*Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method AddItem not implemented")
+}
+func (UnimplementedCartServiceServer) GetCart(context.Context, *GetCartRequest) (*Cart, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetCart not implemented")
+}
+func (UnimplementedCartServiceServer) EmptyCart(context.Context, *EmptyCartRequest) (*Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method EmptyCart not implemented")
+}
+func (UnimplementedCartServiceServer) mustEmbedUnimplementedCartServiceServer() {}
+func (UnimplementedCartServiceServer) testEmbeddedByValue() {}
+
+// UnsafeCartServiceServer may be embedded to opt out of forward compatibility for this service.
+// Use of this interface is not recommended, as added methods to CartServiceServer will
+// result in compilation errors.
+type UnsafeCartServiceServer interface {
+ mustEmbedUnimplementedCartServiceServer()
+}
+
+func RegisterCartServiceServer(s grpc.ServiceRegistrar, srv CartServiceServer) {
+ // If the following call pancis, it indicates UnimplementedCartServiceServer was
+ // embedded by pointer and is nil. This will cause panics if an
+ // unimplemented method is ever invoked, so we test this at initialization
+ // time to prevent it from happening at runtime later due to I/O.
+ if t, ok := srv.(interface{ testEmbeddedByValue() }); ok {
+ t.testEmbeddedByValue()
+ }
+ s.RegisterService(&CartService_ServiceDesc, srv)
+}
+
+func _CartService_AddItem_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(AddItemRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(CartServiceServer).AddItem(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: CartService_AddItem_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(CartServiceServer).AddItem(ctx, req.(*AddItemRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _CartService_GetCart_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetCartRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(CartServiceServer).GetCart(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: CartService_GetCart_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(CartServiceServer).GetCart(ctx, req.(*GetCartRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _CartService_EmptyCart_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(EmptyCartRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(CartServiceServer).EmptyCart(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: CartService_EmptyCart_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(CartServiceServer).EmptyCart(ctx, req.(*EmptyCartRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+// CartService_ServiceDesc is the grpc.ServiceDesc for CartService service.
+// It's only intended for direct use with grpc.RegisterService,
+// and not to be introspected or modified (even as a copy)
+var CartService_ServiceDesc = grpc.ServiceDesc{
+ ServiceName: "oteldemo.CartService",
+ HandlerType: (*CartServiceServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "AddItem",
+ Handler: _CartService_AddItem_Handler,
+ },
+ {
+ MethodName: "GetCart",
+ Handler: _CartService_GetCart_Handler,
+ },
+ {
+ MethodName: "EmptyCart",
+ Handler: _CartService_EmptyCart_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "demo.proto",
+}
+
+const (
+ RecommendationService_ListRecommendations_FullMethodName = "/oteldemo.RecommendationService/ListRecommendations"
+)
+
+// RecommendationServiceClient is the client API for RecommendationService service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
+type RecommendationServiceClient interface {
+ ListRecommendations(ctx context.Context, in *ListRecommendationsRequest, opts ...grpc.CallOption) (*ListRecommendationsResponse, error)
+}
+
+type recommendationServiceClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewRecommendationServiceClient(cc grpc.ClientConnInterface) RecommendationServiceClient {
+ return &recommendationServiceClient{cc}
+}
+
+func (c *recommendationServiceClient) ListRecommendations(ctx context.Context, in *ListRecommendationsRequest, opts ...grpc.CallOption) (*ListRecommendationsResponse, error) {
+ cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
+ out := new(ListRecommendationsResponse)
+ err := c.cc.Invoke(ctx, RecommendationService_ListRecommendations_FullMethodName, in, out, cOpts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// RecommendationServiceServer is the server API for RecommendationService service.
+// All implementations must embed UnimplementedRecommendationServiceServer
+// for forward compatibility.
+type RecommendationServiceServer interface {
+ ListRecommendations(context.Context, *ListRecommendationsRequest) (*ListRecommendationsResponse, error)
+ mustEmbedUnimplementedRecommendationServiceServer()
+}
+
+// UnimplementedRecommendationServiceServer must be embedded to have
+// forward compatible implementations.
+//
+// NOTE: this should be embedded by value instead of pointer to avoid a nil
+// pointer dereference when methods are called.
+type UnimplementedRecommendationServiceServer struct{}
+
+func (UnimplementedRecommendationServiceServer) ListRecommendations(context.Context, *ListRecommendationsRequest) (*ListRecommendationsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListRecommendations not implemented")
+}
+func (UnimplementedRecommendationServiceServer) mustEmbedUnimplementedRecommendationServiceServer() {}
+func (UnimplementedRecommendationServiceServer) testEmbeddedByValue() {}
+
+// UnsafeRecommendationServiceServer may be embedded to opt out of forward compatibility for this service.
+// Use of this interface is not recommended, as added methods to RecommendationServiceServer will
+// result in compilation errors.
+type UnsafeRecommendationServiceServer interface {
+ mustEmbedUnimplementedRecommendationServiceServer()
+}
+
+func RegisterRecommendationServiceServer(s grpc.ServiceRegistrar, srv RecommendationServiceServer) {
+ // If the following call pancis, it indicates UnimplementedRecommendationServiceServer was
+ // embedded by pointer and is nil. This will cause panics if an
+ // unimplemented method is ever invoked, so we test this at initialization
+ // time to prevent it from happening at runtime later due to I/O.
+ if t, ok := srv.(interface{ testEmbeddedByValue() }); ok {
+ t.testEmbeddedByValue()
+ }
+ s.RegisterService(&RecommendationService_ServiceDesc, srv)
+}
+
+func _RecommendationService_ListRecommendations_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListRecommendationsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RecommendationServiceServer).ListRecommendations(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: RecommendationService_ListRecommendations_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RecommendationServiceServer).ListRecommendations(ctx, req.(*ListRecommendationsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+// RecommendationService_ServiceDesc is the grpc.ServiceDesc for RecommendationService service.
+// It's only intended for direct use with grpc.RegisterService,
+// and not to be introspected or modified (even as a copy)
+var RecommendationService_ServiceDesc = grpc.ServiceDesc{
+ ServiceName: "oteldemo.RecommendationService",
+ HandlerType: (*RecommendationServiceServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "ListRecommendations",
+ Handler: _RecommendationService_ListRecommendations_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "demo.proto",
+}
+
+const (
+ ProductCatalogService_ListProducts_FullMethodName = "/oteldemo.ProductCatalogService/ListProducts"
+ ProductCatalogService_GetProduct_FullMethodName = "/oteldemo.ProductCatalogService/GetProduct"
+ ProductCatalogService_SearchProducts_FullMethodName = "/oteldemo.ProductCatalogService/SearchProducts"
+)
+
+// ProductCatalogServiceClient is the client API for ProductCatalogService service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
+type ProductCatalogServiceClient interface {
+ ListProducts(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*ListProductsResponse, error)
+ GetProduct(ctx context.Context, in *GetProductRequest, opts ...grpc.CallOption) (*Product, error)
+ SearchProducts(ctx context.Context, in *SearchProductsRequest, opts ...grpc.CallOption) (*SearchProductsResponse, error)
+}
+
+type productCatalogServiceClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewProductCatalogServiceClient(cc grpc.ClientConnInterface) ProductCatalogServiceClient {
+ return &productCatalogServiceClient{cc}
+}
+
+func (c *productCatalogServiceClient) ListProducts(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*ListProductsResponse, error) {
+ cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
+ out := new(ListProductsResponse)
+ err := c.cc.Invoke(ctx, ProductCatalogService_ListProducts_FullMethodName, in, out, cOpts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *productCatalogServiceClient) GetProduct(ctx context.Context, in *GetProductRequest, opts ...grpc.CallOption) (*Product, error) {
+ cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
+ out := new(Product)
+ err := c.cc.Invoke(ctx, ProductCatalogService_GetProduct_FullMethodName, in, out, cOpts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *productCatalogServiceClient) SearchProducts(ctx context.Context, in *SearchProductsRequest, opts ...grpc.CallOption) (*SearchProductsResponse, error) {
+ cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
+ out := new(SearchProductsResponse)
+ err := c.cc.Invoke(ctx, ProductCatalogService_SearchProducts_FullMethodName, in, out, cOpts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// ProductCatalogServiceServer is the server API for ProductCatalogService service.
+// All implementations must embed UnimplementedProductCatalogServiceServer
+// for forward compatibility.
+type ProductCatalogServiceServer interface {
+ ListProducts(context.Context, *Empty) (*ListProductsResponse, error)
+ GetProduct(context.Context, *GetProductRequest) (*Product, error)
+ SearchProducts(context.Context, *SearchProductsRequest) (*SearchProductsResponse, error)
+ mustEmbedUnimplementedProductCatalogServiceServer()
+}
+
+// UnimplementedProductCatalogServiceServer must be embedded to have
+// forward compatible implementations.
+//
+// NOTE: this should be embedded by value instead of pointer to avoid a nil
+// pointer dereference when methods are called.
+type UnimplementedProductCatalogServiceServer struct{}
+
+func (UnimplementedProductCatalogServiceServer) ListProducts(context.Context, *Empty) (*ListProductsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListProducts not implemented")
+}
+func (UnimplementedProductCatalogServiceServer) GetProduct(context.Context, *GetProductRequest) (*Product, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetProduct not implemented")
+}
+func (UnimplementedProductCatalogServiceServer) SearchProducts(context.Context, *SearchProductsRequest) (*SearchProductsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method SearchProducts not implemented")
+}
+func (UnimplementedProductCatalogServiceServer) mustEmbedUnimplementedProductCatalogServiceServer() {}
+func (UnimplementedProductCatalogServiceServer) testEmbeddedByValue() {}
+
+// UnsafeProductCatalogServiceServer may be embedded to opt out of forward compatibility for this service.
+// Use of this interface is not recommended, as added methods to ProductCatalogServiceServer will
+// result in compilation errors.
+type UnsafeProductCatalogServiceServer interface {
+ mustEmbedUnimplementedProductCatalogServiceServer()
+}
+
+func RegisterProductCatalogServiceServer(s grpc.ServiceRegistrar, srv ProductCatalogServiceServer) {
+ // If the following call pancis, it indicates UnimplementedProductCatalogServiceServer was
+ // embedded by pointer and is nil. This will cause panics if an
+ // unimplemented method is ever invoked, so we test this at initialization
+ // time to prevent it from happening at runtime later due to I/O.
+ if t, ok := srv.(interface{ testEmbeddedByValue() }); ok {
+ t.testEmbeddedByValue()
+ }
+ s.RegisterService(&ProductCatalogService_ServiceDesc, srv)
+}
+
+func _ProductCatalogService_ListProducts_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(Empty)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ProductCatalogServiceServer).ListProducts(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: ProductCatalogService_ListProducts_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ProductCatalogServiceServer).ListProducts(ctx, req.(*Empty))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ProductCatalogService_GetProduct_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetProductRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ProductCatalogServiceServer).GetProduct(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: ProductCatalogService_GetProduct_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ProductCatalogServiceServer).GetProduct(ctx, req.(*GetProductRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ProductCatalogService_SearchProducts_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(SearchProductsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ProductCatalogServiceServer).SearchProducts(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: ProductCatalogService_SearchProducts_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ProductCatalogServiceServer).SearchProducts(ctx, req.(*SearchProductsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+// ProductCatalogService_ServiceDesc is the grpc.ServiceDesc for ProductCatalogService service.
+// It's only intended for direct use with grpc.RegisterService,
+// and not to be introspected or modified (even as a copy)
+var ProductCatalogService_ServiceDesc = grpc.ServiceDesc{
+ ServiceName: "oteldemo.ProductCatalogService",
+ HandlerType: (*ProductCatalogServiceServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "ListProducts",
+ Handler: _ProductCatalogService_ListProducts_Handler,
+ },
+ {
+ MethodName: "GetProduct",
+ Handler: _ProductCatalogService_GetProduct_Handler,
+ },
+ {
+ MethodName: "SearchProducts",
+ Handler: _ProductCatalogService_SearchProducts_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "demo.proto",
+}
+
+const (
+ ShippingService_GetQuote_FullMethodName = "/oteldemo.ShippingService/GetQuote"
+ ShippingService_ShipOrder_FullMethodName = "/oteldemo.ShippingService/ShipOrder"
+)
+
+// ShippingServiceClient is the client API for ShippingService service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
+type ShippingServiceClient interface {
+ GetQuote(ctx context.Context, in *GetQuoteRequest, opts ...grpc.CallOption) (*GetQuoteResponse, error)
+ ShipOrder(ctx context.Context, in *ShipOrderRequest, opts ...grpc.CallOption) (*ShipOrderResponse, error)
+}
+
+type shippingServiceClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewShippingServiceClient(cc grpc.ClientConnInterface) ShippingServiceClient {
+ return &shippingServiceClient{cc}
+}
+
+func (c *shippingServiceClient) GetQuote(ctx context.Context, in *GetQuoteRequest, opts ...grpc.CallOption) (*GetQuoteResponse, error) {
+ cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
+ out := new(GetQuoteResponse)
+ err := c.cc.Invoke(ctx, ShippingService_GetQuote_FullMethodName, in, out, cOpts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *shippingServiceClient) ShipOrder(ctx context.Context, in *ShipOrderRequest, opts ...grpc.CallOption) (*ShipOrderResponse, error) {
+ cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
+ out := new(ShipOrderResponse)
+ err := c.cc.Invoke(ctx, ShippingService_ShipOrder_FullMethodName, in, out, cOpts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// ShippingServiceServer is the server API for ShippingService service.
+// All implementations must embed UnimplementedShippingServiceServer
+// for forward compatibility.
+type ShippingServiceServer interface {
+ GetQuote(context.Context, *GetQuoteRequest) (*GetQuoteResponse, error)
+ ShipOrder(context.Context, *ShipOrderRequest) (*ShipOrderResponse, error)
+ mustEmbedUnimplementedShippingServiceServer()
+}
+
+// UnimplementedShippingServiceServer must be embedded to have
+// forward compatible implementations.
+//
+// NOTE: this should be embedded by value instead of pointer to avoid a nil
+// pointer dereference when methods are called.
+type UnimplementedShippingServiceServer struct{}
+
+func (UnimplementedShippingServiceServer) GetQuote(context.Context, *GetQuoteRequest) (*GetQuoteResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetQuote not implemented")
+}
+func (UnimplementedShippingServiceServer) ShipOrder(context.Context, *ShipOrderRequest) (*ShipOrderResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ShipOrder not implemented")
+}
+func (UnimplementedShippingServiceServer) mustEmbedUnimplementedShippingServiceServer() {}
+func (UnimplementedShippingServiceServer) testEmbeddedByValue() {}
+
+// UnsafeShippingServiceServer may be embedded to opt out of forward compatibility for this service.
+// Use of this interface is not recommended, as added methods to ShippingServiceServer will
+// result in compilation errors.
+type UnsafeShippingServiceServer interface {
+ mustEmbedUnimplementedShippingServiceServer()
+}
+
+func RegisterShippingServiceServer(s grpc.ServiceRegistrar, srv ShippingServiceServer) {
+ // If the following call pancis, it indicates UnimplementedShippingServiceServer was
+ // embedded by pointer and is nil. This will cause panics if an
+ // unimplemented method is ever invoked, so we test this at initialization
+ // time to prevent it from happening at runtime later due to I/O.
+ if t, ok := srv.(interface{ testEmbeddedByValue() }); ok {
+ t.testEmbeddedByValue()
+ }
+ s.RegisterService(&ShippingService_ServiceDesc, srv)
+}
+
+func _ShippingService_GetQuote_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetQuoteRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ShippingServiceServer).GetQuote(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: ShippingService_GetQuote_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ShippingServiceServer).GetQuote(ctx, req.(*GetQuoteRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ShippingService_ShipOrder_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ShipOrderRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ShippingServiceServer).ShipOrder(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: ShippingService_ShipOrder_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ShippingServiceServer).ShipOrder(ctx, req.(*ShipOrderRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+// ShippingService_ServiceDesc is the grpc.ServiceDesc for ShippingService service.
+// It's only intended for direct use with grpc.RegisterService,
+// and not to be introspected or modified (even as a copy)
+var ShippingService_ServiceDesc = grpc.ServiceDesc{
+ ServiceName: "oteldemo.ShippingService",
+ HandlerType: (*ShippingServiceServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "GetQuote",
+ Handler: _ShippingService_GetQuote_Handler,
+ },
+ {
+ MethodName: "ShipOrder",
+ Handler: _ShippingService_ShipOrder_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "demo.proto",
+}
+
+const (
+ CurrencyService_GetSupportedCurrencies_FullMethodName = "/oteldemo.CurrencyService/GetSupportedCurrencies"
+ CurrencyService_Convert_FullMethodName = "/oteldemo.CurrencyService/Convert"
+)
+
+// CurrencyServiceClient is the client API for CurrencyService service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
+type CurrencyServiceClient interface {
+ GetSupportedCurrencies(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*GetSupportedCurrenciesResponse, error)
+ Convert(ctx context.Context, in *CurrencyConversionRequest, opts ...grpc.CallOption) (*Money, error)
+}
+
+type currencyServiceClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewCurrencyServiceClient(cc grpc.ClientConnInterface) CurrencyServiceClient {
+ return &currencyServiceClient{cc}
+}
+
+func (c *currencyServiceClient) GetSupportedCurrencies(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*GetSupportedCurrenciesResponse, error) {
+ cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
+ out := new(GetSupportedCurrenciesResponse)
+ err := c.cc.Invoke(ctx, CurrencyService_GetSupportedCurrencies_FullMethodName, in, out, cOpts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *currencyServiceClient) Convert(ctx context.Context, in *CurrencyConversionRequest, opts ...grpc.CallOption) (*Money, error) {
+ cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
+ out := new(Money)
+ err := c.cc.Invoke(ctx, CurrencyService_Convert_FullMethodName, in, out, cOpts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// CurrencyServiceServer is the server API for CurrencyService service.
+// All implementations must embed UnimplementedCurrencyServiceServer
+// for forward compatibility.
+type CurrencyServiceServer interface {
+ GetSupportedCurrencies(context.Context, *Empty) (*GetSupportedCurrenciesResponse, error)
+ Convert(context.Context, *CurrencyConversionRequest) (*Money, error)
+ mustEmbedUnimplementedCurrencyServiceServer()
+}
+
+// UnimplementedCurrencyServiceServer must be embedded to have
+// forward compatible implementations.
+//
+// NOTE: this should be embedded by value instead of pointer to avoid a nil
+// pointer dereference when methods are called.
+type UnimplementedCurrencyServiceServer struct{}
+
+func (UnimplementedCurrencyServiceServer) GetSupportedCurrencies(context.Context, *Empty) (*GetSupportedCurrenciesResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetSupportedCurrencies not implemented")
+}
+func (UnimplementedCurrencyServiceServer) Convert(context.Context, *CurrencyConversionRequest) (*Money, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method Convert not implemented")
+}
+func (UnimplementedCurrencyServiceServer) mustEmbedUnimplementedCurrencyServiceServer() {}
+func (UnimplementedCurrencyServiceServer) testEmbeddedByValue() {}
+
+// UnsafeCurrencyServiceServer may be embedded to opt out of forward compatibility for this service.
+// Use of this interface is not recommended, as added methods to CurrencyServiceServer will
+// result in compilation errors.
+type UnsafeCurrencyServiceServer interface {
+ mustEmbedUnimplementedCurrencyServiceServer()
+}
+
+func RegisterCurrencyServiceServer(s grpc.ServiceRegistrar, srv CurrencyServiceServer) {
+ // If the following call pancis, it indicates UnimplementedCurrencyServiceServer was
+ // embedded by pointer and is nil. This will cause panics if an
+ // unimplemented method is ever invoked, so we test this at initialization
+ // time to prevent it from happening at runtime later due to I/O.
+ if t, ok := srv.(interface{ testEmbeddedByValue() }); ok {
+ t.testEmbeddedByValue()
+ }
+ s.RegisterService(&CurrencyService_ServiceDesc, srv)
+}
+
+func _CurrencyService_GetSupportedCurrencies_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(Empty)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(CurrencyServiceServer).GetSupportedCurrencies(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: CurrencyService_GetSupportedCurrencies_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(CurrencyServiceServer).GetSupportedCurrencies(ctx, req.(*Empty))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _CurrencyService_Convert_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CurrencyConversionRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(CurrencyServiceServer).Convert(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: CurrencyService_Convert_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(CurrencyServiceServer).Convert(ctx, req.(*CurrencyConversionRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+// CurrencyService_ServiceDesc is the grpc.ServiceDesc for CurrencyService service.
+// It's only intended for direct use with grpc.RegisterService,
+// and not to be introspected or modified (even as a copy)
+var CurrencyService_ServiceDesc = grpc.ServiceDesc{
+ ServiceName: "oteldemo.CurrencyService",
+ HandlerType: (*CurrencyServiceServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "GetSupportedCurrencies",
+ Handler: _CurrencyService_GetSupportedCurrencies_Handler,
+ },
+ {
+ MethodName: "Convert",
+ Handler: _CurrencyService_Convert_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "demo.proto",
+}
+
+const (
+ PaymentService_Charge_FullMethodName = "/oteldemo.PaymentService/Charge"
+)
+
+// PaymentServiceClient is the client API for PaymentService service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
+type PaymentServiceClient interface {
+ Charge(ctx context.Context, in *ChargeRequest, opts ...grpc.CallOption) (*ChargeResponse, error)
+}
+
+type paymentServiceClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewPaymentServiceClient(cc grpc.ClientConnInterface) PaymentServiceClient {
+ return &paymentServiceClient{cc}
+}
+
+func (c *paymentServiceClient) Charge(ctx context.Context, in *ChargeRequest, opts ...grpc.CallOption) (*ChargeResponse, error) {
+ cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
+ out := new(ChargeResponse)
+ err := c.cc.Invoke(ctx, PaymentService_Charge_FullMethodName, in, out, cOpts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// PaymentServiceServer is the server API for PaymentService service.
+// All implementations must embed UnimplementedPaymentServiceServer
+// for forward compatibility.
+type PaymentServiceServer interface {
+ Charge(context.Context, *ChargeRequest) (*ChargeResponse, error)
+ mustEmbedUnimplementedPaymentServiceServer()
+}
+
+// UnimplementedPaymentServiceServer must be embedded to have
+// forward compatible implementations.
+//
+// NOTE: this should be embedded by value instead of pointer to avoid a nil
+// pointer dereference when methods are called.
+type UnimplementedPaymentServiceServer struct{}
+
+func (UnimplementedPaymentServiceServer) Charge(context.Context, *ChargeRequest) (*ChargeResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method Charge not implemented")
+}
+func (UnimplementedPaymentServiceServer) mustEmbedUnimplementedPaymentServiceServer() {}
+func (UnimplementedPaymentServiceServer) testEmbeddedByValue() {}
+
+// UnsafePaymentServiceServer may be embedded to opt out of forward compatibility for this service.
+// Use of this interface is not recommended, as added methods to PaymentServiceServer will
+// result in compilation errors.
+type UnsafePaymentServiceServer interface {
+ mustEmbedUnimplementedPaymentServiceServer()
+}
+
+func RegisterPaymentServiceServer(s grpc.ServiceRegistrar, srv PaymentServiceServer) {
+ // If the following call pancis, it indicates UnimplementedPaymentServiceServer was
+ // embedded by pointer and is nil. This will cause panics if an
+ // unimplemented method is ever invoked, so we test this at initialization
+ // time to prevent it from happening at runtime later due to I/O.
+ if t, ok := srv.(interface{ testEmbeddedByValue() }); ok {
+ t.testEmbeddedByValue()
+ }
+ s.RegisterService(&PaymentService_ServiceDesc, srv)
+}
+
+func _PaymentService_Charge_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ChargeRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(PaymentServiceServer).Charge(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: PaymentService_Charge_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(PaymentServiceServer).Charge(ctx, req.(*ChargeRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+// PaymentService_ServiceDesc is the grpc.ServiceDesc for PaymentService service.
+// It's only intended for direct use with grpc.RegisterService,
+// and not to be introspected or modified (even as a copy)
+var PaymentService_ServiceDesc = grpc.ServiceDesc{
+ ServiceName: "oteldemo.PaymentService",
+ HandlerType: (*PaymentServiceServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "Charge",
+ Handler: _PaymentService_Charge_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "demo.proto",
+}
+
+const (
+ EmailService_SendOrderConfirmation_FullMethodName = "/oteldemo.EmailService/SendOrderConfirmation"
+)
+
+// EmailServiceClient is the client API for EmailService service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
+type EmailServiceClient interface {
+ SendOrderConfirmation(ctx context.Context, in *SendOrderConfirmationRequest, opts ...grpc.CallOption) (*Empty, error)
+}
+
+type emailServiceClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewEmailServiceClient(cc grpc.ClientConnInterface) EmailServiceClient {
+ return &emailServiceClient{cc}
+}
+
+func (c *emailServiceClient) SendOrderConfirmation(ctx context.Context, in *SendOrderConfirmationRequest, opts ...grpc.CallOption) (*Empty, error) {
+ cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
+ out := new(Empty)
+ err := c.cc.Invoke(ctx, EmailService_SendOrderConfirmation_FullMethodName, in, out, cOpts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// EmailServiceServer is the server API for EmailService service.
+// All implementations must embed UnimplementedEmailServiceServer
+// for forward compatibility.
+type EmailServiceServer interface {
+ SendOrderConfirmation(context.Context, *SendOrderConfirmationRequest) (*Empty, error)
+ mustEmbedUnimplementedEmailServiceServer()
+}
+
+// UnimplementedEmailServiceServer must be embedded to have
+// forward compatible implementations.
+//
+// NOTE: this should be embedded by value instead of pointer to avoid a nil
+// pointer dereference when methods are called.
+type UnimplementedEmailServiceServer struct{}
+
+func (UnimplementedEmailServiceServer) SendOrderConfirmation(context.Context, *SendOrderConfirmationRequest) (*Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method SendOrderConfirmation not implemented")
+}
+func (UnimplementedEmailServiceServer) mustEmbedUnimplementedEmailServiceServer() {}
+func (UnimplementedEmailServiceServer) testEmbeddedByValue() {}
+
+// UnsafeEmailServiceServer may be embedded to opt out of forward compatibility for this service.
+// Use of this interface is not recommended, as added methods to EmailServiceServer will
+// result in compilation errors.
+type UnsafeEmailServiceServer interface {
+ mustEmbedUnimplementedEmailServiceServer()
+}
+
+func RegisterEmailServiceServer(s grpc.ServiceRegistrar, srv EmailServiceServer) {
+ // If the following call pancis, it indicates UnimplementedEmailServiceServer was
+ // embedded by pointer and is nil. This will cause panics if an
+ // unimplemented method is ever invoked, so we test this at initialization
+ // time to prevent it from happening at runtime later due to I/O.
+ if t, ok := srv.(interface{ testEmbeddedByValue() }); ok {
+ t.testEmbeddedByValue()
+ }
+ s.RegisterService(&EmailService_ServiceDesc, srv)
+}
+
+func _EmailService_SendOrderConfirmation_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(SendOrderConfirmationRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(EmailServiceServer).SendOrderConfirmation(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: EmailService_SendOrderConfirmation_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(EmailServiceServer).SendOrderConfirmation(ctx, req.(*SendOrderConfirmationRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+// EmailService_ServiceDesc is the grpc.ServiceDesc for EmailService service.
+// It's only intended for direct use with grpc.RegisterService,
+// and not to be introspected or modified (even as a copy)
+var EmailService_ServiceDesc = grpc.ServiceDesc{
+ ServiceName: "oteldemo.EmailService",
+ HandlerType: (*EmailServiceServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "SendOrderConfirmation",
+ Handler: _EmailService_SendOrderConfirmation_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "demo.proto",
+}
+
+const (
+ CheckoutService_PlaceOrder_FullMethodName = "/oteldemo.CheckoutService/PlaceOrder"
+)
+
+// CheckoutServiceClient is the client API for CheckoutService service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
+type CheckoutServiceClient interface {
+ PlaceOrder(ctx context.Context, in *PlaceOrderRequest, opts ...grpc.CallOption) (*PlaceOrderResponse, error)
+}
+
+type checkoutServiceClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewCheckoutServiceClient(cc grpc.ClientConnInterface) CheckoutServiceClient {
+ return &checkoutServiceClient{cc}
+}
+
+func (c *checkoutServiceClient) PlaceOrder(ctx context.Context, in *PlaceOrderRequest, opts ...grpc.CallOption) (*PlaceOrderResponse, error) {
+ cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
+ out := new(PlaceOrderResponse)
+ err := c.cc.Invoke(ctx, CheckoutService_PlaceOrder_FullMethodName, in, out, cOpts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// CheckoutServiceServer is the server API for CheckoutService service.
+// All implementations must embed UnimplementedCheckoutServiceServer
+// for forward compatibility.
+type CheckoutServiceServer interface {
+ PlaceOrder(context.Context, *PlaceOrderRequest) (*PlaceOrderResponse, error)
+ mustEmbedUnimplementedCheckoutServiceServer()
+}
+
+// UnimplementedCheckoutServiceServer must be embedded to have
+// forward compatible implementations.
+//
+// NOTE: this should be embedded by value instead of pointer to avoid a nil
+// pointer dereference when methods are called.
+type UnimplementedCheckoutServiceServer struct{}
+
+func (UnimplementedCheckoutServiceServer) PlaceOrder(context.Context, *PlaceOrderRequest) (*PlaceOrderResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method PlaceOrder not implemented")
+}
+func (UnimplementedCheckoutServiceServer) mustEmbedUnimplementedCheckoutServiceServer() {}
+func (UnimplementedCheckoutServiceServer) testEmbeddedByValue() {}
+
+// UnsafeCheckoutServiceServer may be embedded to opt out of forward compatibility for this service.
+// Use of this interface is not recommended, as added methods to CheckoutServiceServer will
+// result in compilation errors.
+type UnsafeCheckoutServiceServer interface {
+ mustEmbedUnimplementedCheckoutServiceServer()
+}
+
+func RegisterCheckoutServiceServer(s grpc.ServiceRegistrar, srv CheckoutServiceServer) {
+ // If the following call pancis, it indicates UnimplementedCheckoutServiceServer was
+ // embedded by pointer and is nil. This will cause panics if an
+ // unimplemented method is ever invoked, so we test this at initialization
+ // time to prevent it from happening at runtime later due to I/O.
+ if t, ok := srv.(interface{ testEmbeddedByValue() }); ok {
+ t.testEmbeddedByValue()
+ }
+ s.RegisterService(&CheckoutService_ServiceDesc, srv)
+}
+
+func _CheckoutService_PlaceOrder_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(PlaceOrderRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(CheckoutServiceServer).PlaceOrder(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: CheckoutService_PlaceOrder_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(CheckoutServiceServer).PlaceOrder(ctx, req.(*PlaceOrderRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+// CheckoutService_ServiceDesc is the grpc.ServiceDesc for CheckoutService service.
+// It's only intended for direct use with grpc.RegisterService,
+// and not to be introspected or modified (even as a copy)
+var CheckoutService_ServiceDesc = grpc.ServiceDesc{
+ ServiceName: "oteldemo.CheckoutService",
+ HandlerType: (*CheckoutServiceServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "PlaceOrder",
+ Handler: _CheckoutService_PlaceOrder_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "demo.proto",
+}
+
+const (
+ AdService_GetAds_FullMethodName = "/oteldemo.AdService/GetAds"
+)
+
+// AdServiceClient is the client API for AdService service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
+type AdServiceClient interface {
+ GetAds(ctx context.Context, in *AdRequest, opts ...grpc.CallOption) (*AdResponse, error)
+}
+
+type adServiceClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewAdServiceClient(cc grpc.ClientConnInterface) AdServiceClient {
+ return &adServiceClient{cc}
+}
+
+func (c *adServiceClient) GetAds(ctx context.Context, in *AdRequest, opts ...grpc.CallOption) (*AdResponse, error) {
+ cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
+ out := new(AdResponse)
+ err := c.cc.Invoke(ctx, AdService_GetAds_FullMethodName, in, out, cOpts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// AdServiceServer is the server API for AdService service.
+// All implementations must embed UnimplementedAdServiceServer
+// for forward compatibility.
+type AdServiceServer interface {
+ GetAds(context.Context, *AdRequest) (*AdResponse, error)
+ mustEmbedUnimplementedAdServiceServer()
+}
+
+// UnimplementedAdServiceServer must be embedded to have
+// forward compatible implementations.
+//
+// NOTE: this should be embedded by value instead of pointer to avoid a nil
+// pointer dereference when methods are called.
+type UnimplementedAdServiceServer struct{}
+
+func (UnimplementedAdServiceServer) GetAds(context.Context, *AdRequest) (*AdResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetAds not implemented")
+}
+func (UnimplementedAdServiceServer) mustEmbedUnimplementedAdServiceServer() {}
+func (UnimplementedAdServiceServer) testEmbeddedByValue() {}
+
+// UnsafeAdServiceServer may be embedded to opt out of forward compatibility for this service.
+// Use of this interface is not recommended, as added methods to AdServiceServer will
+// result in compilation errors.
+type UnsafeAdServiceServer interface {
+ mustEmbedUnimplementedAdServiceServer()
+}
+
+func RegisterAdServiceServer(s grpc.ServiceRegistrar, srv AdServiceServer) {
+ // If the following call pancis, it indicates UnimplementedAdServiceServer was
+ // embedded by pointer and is nil. This will cause panics if an
+ // unimplemented method is ever invoked, so we test this at initialization
+ // time to prevent it from happening at runtime later due to I/O.
+ if t, ok := srv.(interface{ testEmbeddedByValue() }); ok {
+ t.testEmbeddedByValue()
+ }
+ s.RegisterService(&AdService_ServiceDesc, srv)
+}
+
+func _AdService_GetAds_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(AdRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(AdServiceServer).GetAds(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: AdService_GetAds_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(AdServiceServer).GetAds(ctx, req.(*AdRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+// AdService_ServiceDesc is the grpc.ServiceDesc for AdService service.
+// It's only intended for direct use with grpc.RegisterService,
+// and not to be introspected or modified (even as a copy)
+var AdService_ServiceDesc = grpc.ServiceDesc{
+ ServiceName: "oteldemo.AdService",
+ HandlerType: (*AdServiceServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "GetAds",
+ Handler: _AdService_GetAds_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "demo.proto",
+}
+
+const (
+ FeatureFlagService_GetFlag_FullMethodName = "/oteldemo.FeatureFlagService/GetFlag"
+ FeatureFlagService_CreateFlag_FullMethodName = "/oteldemo.FeatureFlagService/CreateFlag"
+ FeatureFlagService_UpdateFlag_FullMethodName = "/oteldemo.FeatureFlagService/UpdateFlag"
+ FeatureFlagService_ListFlags_FullMethodName = "/oteldemo.FeatureFlagService/ListFlags"
+ FeatureFlagService_DeleteFlag_FullMethodName = "/oteldemo.FeatureFlagService/DeleteFlag"
+)
+
+// FeatureFlagServiceClient is the client API for FeatureFlagService service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
+type FeatureFlagServiceClient interface {
+ GetFlag(ctx context.Context, in *GetFlagRequest, opts ...grpc.CallOption) (*GetFlagResponse, error)
+ CreateFlag(ctx context.Context, in *CreateFlagRequest, opts ...grpc.CallOption) (*CreateFlagResponse, error)
+ UpdateFlag(ctx context.Context, in *UpdateFlagRequest, opts ...grpc.CallOption) (*UpdateFlagResponse, error)
+ ListFlags(ctx context.Context, in *ListFlagsRequest, opts ...grpc.CallOption) (*ListFlagsResponse, error)
+ DeleteFlag(ctx context.Context, in *DeleteFlagRequest, opts ...grpc.CallOption) (*DeleteFlagResponse, error)
+}
+
+type featureFlagServiceClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewFeatureFlagServiceClient(cc grpc.ClientConnInterface) FeatureFlagServiceClient {
+ return &featureFlagServiceClient{cc}
+}
+
+func (c *featureFlagServiceClient) GetFlag(ctx context.Context, in *GetFlagRequest, opts ...grpc.CallOption) (*GetFlagResponse, error) {
+ cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
+ out := new(GetFlagResponse)
+ err := c.cc.Invoke(ctx, FeatureFlagService_GetFlag_FullMethodName, in, out, cOpts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *featureFlagServiceClient) CreateFlag(ctx context.Context, in *CreateFlagRequest, opts ...grpc.CallOption) (*CreateFlagResponse, error) {
+ cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
+ out := new(CreateFlagResponse)
+ err := c.cc.Invoke(ctx, FeatureFlagService_CreateFlag_FullMethodName, in, out, cOpts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *featureFlagServiceClient) UpdateFlag(ctx context.Context, in *UpdateFlagRequest, opts ...grpc.CallOption) (*UpdateFlagResponse, error) {
+ cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
+ out := new(UpdateFlagResponse)
+ err := c.cc.Invoke(ctx, FeatureFlagService_UpdateFlag_FullMethodName, in, out, cOpts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *featureFlagServiceClient) ListFlags(ctx context.Context, in *ListFlagsRequest, opts ...grpc.CallOption) (*ListFlagsResponse, error) {
+ cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
+ out := new(ListFlagsResponse)
+ err := c.cc.Invoke(ctx, FeatureFlagService_ListFlags_FullMethodName, in, out, cOpts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *featureFlagServiceClient) DeleteFlag(ctx context.Context, in *DeleteFlagRequest, opts ...grpc.CallOption) (*DeleteFlagResponse, error) {
+ cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
+ out := new(DeleteFlagResponse)
+ err := c.cc.Invoke(ctx, FeatureFlagService_DeleteFlag_FullMethodName, in, out, cOpts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// FeatureFlagServiceServer is the server API for FeatureFlagService service.
+// All implementations must embed UnimplementedFeatureFlagServiceServer
+// for forward compatibility.
+type FeatureFlagServiceServer interface {
+ GetFlag(context.Context, *GetFlagRequest) (*GetFlagResponse, error)
+ CreateFlag(context.Context, *CreateFlagRequest) (*CreateFlagResponse, error)
+ UpdateFlag(context.Context, *UpdateFlagRequest) (*UpdateFlagResponse, error)
+ ListFlags(context.Context, *ListFlagsRequest) (*ListFlagsResponse, error)
+ DeleteFlag(context.Context, *DeleteFlagRequest) (*DeleteFlagResponse, error)
+ mustEmbedUnimplementedFeatureFlagServiceServer()
+}
+
+// UnimplementedFeatureFlagServiceServer must be embedded to have
+// forward compatible implementations.
+//
+// NOTE: this should be embedded by value instead of pointer to avoid a nil
+// pointer dereference when methods are called.
+type UnimplementedFeatureFlagServiceServer struct{}
+
+func (UnimplementedFeatureFlagServiceServer) GetFlag(context.Context, *GetFlagRequest) (*GetFlagResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetFlag not implemented")
+}
+func (UnimplementedFeatureFlagServiceServer) CreateFlag(context.Context, *CreateFlagRequest) (*CreateFlagResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateFlag not implemented")
+}
+func (UnimplementedFeatureFlagServiceServer) UpdateFlag(context.Context, *UpdateFlagRequest) (*UpdateFlagResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateFlag not implemented")
+}
+func (UnimplementedFeatureFlagServiceServer) ListFlags(context.Context, *ListFlagsRequest) (*ListFlagsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListFlags not implemented")
+}
+func (UnimplementedFeatureFlagServiceServer) DeleteFlag(context.Context, *DeleteFlagRequest) (*DeleteFlagResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteFlag not implemented")
+}
+func (UnimplementedFeatureFlagServiceServer) mustEmbedUnimplementedFeatureFlagServiceServer() {}
+func (UnimplementedFeatureFlagServiceServer) testEmbeddedByValue() {}
+
+// UnsafeFeatureFlagServiceServer may be embedded to opt out of forward compatibility for this service.
+// Use of this interface is not recommended, as added methods to FeatureFlagServiceServer will
+// result in compilation errors.
+type UnsafeFeatureFlagServiceServer interface {
+ mustEmbedUnimplementedFeatureFlagServiceServer()
+}
+
+func RegisterFeatureFlagServiceServer(s grpc.ServiceRegistrar, srv FeatureFlagServiceServer) {
+ // If the following call pancis, it indicates UnimplementedFeatureFlagServiceServer was
+ // embedded by pointer and is nil. This will cause panics if an
+ // unimplemented method is ever invoked, so we test this at initialization
+ // time to prevent it from happening at runtime later due to I/O.
+ if t, ok := srv.(interface{ testEmbeddedByValue() }); ok {
+ t.testEmbeddedByValue()
+ }
+ s.RegisterService(&FeatureFlagService_ServiceDesc, srv)
+}
+
+func _FeatureFlagService_GetFlag_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetFlagRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(FeatureFlagServiceServer).GetFlag(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: FeatureFlagService_GetFlag_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(FeatureFlagServiceServer).GetFlag(ctx, req.(*GetFlagRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _FeatureFlagService_CreateFlag_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateFlagRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(FeatureFlagServiceServer).CreateFlag(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: FeatureFlagService_CreateFlag_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(FeatureFlagServiceServer).CreateFlag(ctx, req.(*CreateFlagRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _FeatureFlagService_UpdateFlag_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateFlagRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(FeatureFlagServiceServer).UpdateFlag(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: FeatureFlagService_UpdateFlag_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(FeatureFlagServiceServer).UpdateFlag(ctx, req.(*UpdateFlagRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _FeatureFlagService_ListFlags_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListFlagsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(FeatureFlagServiceServer).ListFlags(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: FeatureFlagService_ListFlags_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(FeatureFlagServiceServer).ListFlags(ctx, req.(*ListFlagsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _FeatureFlagService_DeleteFlag_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteFlagRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(FeatureFlagServiceServer).DeleteFlag(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: FeatureFlagService_DeleteFlag_FullMethodName,
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(FeatureFlagServiceServer).DeleteFlag(ctx, req.(*DeleteFlagRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+// FeatureFlagService_ServiceDesc is the grpc.ServiceDesc for FeatureFlagService service.
+// It's only intended for direct use with grpc.RegisterService,
+// and not to be introspected or modified (even as a copy)
+var FeatureFlagService_ServiceDesc = grpc.ServiceDesc{
+ ServiceName: "oteldemo.FeatureFlagService",
+ HandlerType: (*FeatureFlagServiceServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "GetFlag",
+ Handler: _FeatureFlagService_GetFlag_Handler,
+ },
+ {
+ MethodName: "CreateFlag",
+ Handler: _FeatureFlagService_CreateFlag_Handler,
+ },
+ {
+ MethodName: "UpdateFlag",
+ Handler: _FeatureFlagService_UpdateFlag_Handler,
+ },
+ {
+ MethodName: "ListFlags",
+ Handler: _FeatureFlagService_ListFlags_Handler,
+ },
+ {
+ MethodName: "DeleteFlag",
+ Handler: _FeatureFlagService_DeleteFlag_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "demo.proto",
+}