From b7ffb014eaddc82fb1f10e880c25bf4fcc31529e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Josef=20Fr=C3=B6hle?= Date: Sun, 22 May 2022 21:15:26 +0200 Subject: [PATCH] initial --- buf.gen.yaml | 16 + buf.work.yaml | 4 + gen/proto/go/payment/v1/payment.pb.go | 259 +++++++++ gen/proto/go/pet/v1/pet.pb.go | 790 ++++++++++++++++++++++++++ gen/proto/go/pet/v1/pet_grpc.pb.go | 211 +++++++ go.mod | 3 + install.sh | 8 + paymentapis/buf.lock | 7 + paymentapis/buf.yaml | 10 + paymentapis/payment/v1/payment.proto | 22 + petapis/buf.lock | 11 + petapis/buf.yaml | 11 + petapis/pet/v1/pet.proto | 60 ++ 13 files changed, 1412 insertions(+) create mode 100644 buf.gen.yaml create mode 100644 buf.work.yaml create mode 100644 gen/proto/go/payment/v1/payment.pb.go create mode 100644 gen/proto/go/pet/v1/pet.pb.go create mode 100644 gen/proto/go/pet/v1/pet_grpc.pb.go create mode 100644 go.mod create mode 100644 install.sh create mode 100644 paymentapis/buf.lock create mode 100644 paymentapis/buf.yaml create mode 100644 paymentapis/payment/v1/payment.proto create mode 100644 petapis/buf.lock create mode 100644 petapis/buf.yaml create mode 100644 petapis/pet/v1/pet.proto diff --git a/buf.gen.yaml b/buf.gen.yaml new file mode 100644 index 0000000..b09393f --- /dev/null +++ b/buf.gen.yaml @@ -0,0 +1,16 @@ +version: v1 +managed: + enabled: true + go_package_prefix: + default: github.com/bufbuild/buf-tour/petstore/gen/proto/go + except: + - buf.build/googleapis/googleapis +plugins: + - name: go + out: gen/proto/go + opt: paths=source_relative + - name: go-grpc + out: gen/proto/go + opt: + - paths=source_relative + - require_unimplemented_servers=false diff --git a/buf.work.yaml b/buf.work.yaml new file mode 100644 index 0000000..dc52797 --- /dev/null +++ b/buf.work.yaml @@ -0,0 +1,4 @@ +version: v1 +directories: + - paymentapis + - petapis \ No newline at end of file diff --git a/gen/proto/go/payment/v1/payment.pb.go b/gen/proto/go/payment/v1/payment.pb.go new file mode 100644 index 0000000..e3588c5 --- /dev/null +++ b/gen/proto/go/payment/v1/payment.pb.go @@ -0,0 +1,259 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.28.0 +// protoc (unknown) +// source: payment/v1/payment.proto + +package paymentv1 + +import ( + money "google.golang.org/genproto/googleapis/type/money" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +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) +) + +// PaymentProvider represents the supported set +// of payment providers. +type PaymentProvider int32 + +const ( + PaymentProvider_PAYMENT_PROVIDER_UNSPECIFIED PaymentProvider = 0 + PaymentProvider_PAYMENT_PROVIDER_STRIPE PaymentProvider = 1 + PaymentProvider_PAYMENT_PROVIDER_PAYPAL PaymentProvider = 2 + PaymentProvider_PAYMENT_PROVIDER_APPLE PaymentProvider = 3 +) + +// Enum value maps for PaymentProvider. +var ( + PaymentProvider_name = map[int32]string{ + 0: "PAYMENT_PROVIDER_UNSPECIFIED", + 1: "PAYMENT_PROVIDER_STRIPE", + 2: "PAYMENT_PROVIDER_PAYPAL", + 3: "PAYMENT_PROVIDER_APPLE", + } + PaymentProvider_value = map[string]int32{ + "PAYMENT_PROVIDER_UNSPECIFIED": 0, + "PAYMENT_PROVIDER_STRIPE": 1, + "PAYMENT_PROVIDER_PAYPAL": 2, + "PAYMENT_PROVIDER_APPLE": 3, + } +) + +func (x PaymentProvider) Enum() *PaymentProvider { + p := new(PaymentProvider) + *p = x + return p +} + +func (x PaymentProvider) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (PaymentProvider) Descriptor() protoreflect.EnumDescriptor { + return file_payment_v1_payment_proto_enumTypes[0].Descriptor() +} + +func (PaymentProvider) Type() protoreflect.EnumType { + return &file_payment_v1_payment_proto_enumTypes[0] +} + +func (x PaymentProvider) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use PaymentProvider.Descriptor instead. +func (PaymentProvider) EnumDescriptor() ([]byte, []int) { + return file_payment_v1_payment_proto_rawDescGZIP(), []int{0} +} + +// Order represents a monetary order. +type Order struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + OrderId string `protobuf:"bytes,1,opt,name=order_id,json=orderId,proto3" json:"order_id,omitempty"` + RecipientId string `protobuf:"bytes,2,opt,name=recipient_id,json=recipientId,proto3" json:"recipient_id,omitempty"` + Amount *money.Money `protobuf:"bytes,3,opt,name=amount,proto3" json:"amount,omitempty"` + PaymentProvider PaymentProvider `protobuf:"varint,4,opt,name=payment_provider,json=paymentProvider,proto3,enum=payment.v1.PaymentProvider" json:"payment_provider,omitempty"` +} + +func (x *Order) Reset() { + *x = Order{} + if protoimpl.UnsafeEnabled { + mi := &file_payment_v1_payment_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Order) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Order) ProtoMessage() {} + +func (x *Order) ProtoReflect() protoreflect.Message { + mi := &file_payment_v1_payment_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Order.ProtoReflect.Descriptor instead. +func (*Order) Descriptor() ([]byte, []int) { + return file_payment_v1_payment_proto_rawDescGZIP(), []int{0} +} + +func (x *Order) GetOrderId() string { + if x != nil { + return x.OrderId + } + return "" +} + +func (x *Order) GetRecipientId() string { + if x != nil { + return x.RecipientId + } + return "" +} + +func (x *Order) GetAmount() *money.Money { + if x != nil { + return x.Amount + } + return nil +} + +func (x *Order) GetPaymentProvider() PaymentProvider { + if x != nil { + return x.PaymentProvider + } + return PaymentProvider_PAYMENT_PROVIDER_UNSPECIFIED +} + +var File_payment_v1_payment_proto protoreflect.FileDescriptor + +var file_payment_v1_payment_proto_rawDesc = []byte{ + 0x0a, 0x18, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x61, 0x79, + 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0a, 0x70, 0x61, 0x79, 0x6d, + 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x74, + 0x79, 0x70, 0x65, 0x2f, 0x6d, 0x6f, 0x6e, 0x65, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, + 0xb9, 0x01, 0x0a, 0x05, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x72, 0x64, + 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x72, 0x64, + 0x65, 0x72, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x63, 0x69, + 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x2a, 0x0a, 0x06, 0x61, 0x6d, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x4d, 0x6f, 0x6e, 0x65, 0x79, 0x52, 0x06, 0x61, 0x6d, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x46, 0x0a, 0x10, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x70, + 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, + 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x61, 0x79, 0x6d, 0x65, + 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x0f, 0x70, 0x61, 0x79, 0x6d, + 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x2a, 0x89, 0x01, 0x0a, 0x0f, + 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, + 0x20, 0x0a, 0x1c, 0x50, 0x41, 0x59, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x50, 0x52, 0x4f, 0x56, 0x49, + 0x44, 0x45, 0x52, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, + 0x00, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x41, 0x59, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x50, 0x52, 0x4f, + 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x52, 0x49, 0x50, 0x45, 0x10, 0x01, 0x12, 0x1b, + 0x0a, 0x17, 0x50, 0x41, 0x59, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, + 0x45, 0x52, 0x5f, 0x50, 0x41, 0x59, 0x50, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x50, + 0x41, 0x59, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x50, 0x52, 0x4f, 0x56, 0x49, 0x44, 0x45, 0x52, 0x5f, + 0x41, 0x50, 0x50, 0x4c, 0x45, 0x10, 0x03, 0x42, 0xb0, 0x01, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x2e, + 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x42, 0x0c, 0x50, 0x61, 0x79, 0x6d, + 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x47, 0x67, 0x69, 0x74, 0x68, + 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x62, 0x75, 0x66, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x2f, + 0x62, 0x75, 0x66, 0x2d, 0x74, 0x6f, 0x75, 0x72, 0x2f, 0x70, 0x65, 0x74, 0x73, 0x74, 0x6f, 0x72, + 0x65, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x2f, 0x70, + 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x2f, 0x76, 0x31, 0x3b, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, + 0x74, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x50, 0x58, 0x58, 0xaa, 0x02, 0x0a, 0x50, 0x61, 0x79, 0x6d, + 0x65, 0x6e, 0x74, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x0a, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, + 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x16, 0x50, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5c, 0x56, 0x31, + 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x0b, 0x50, + 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x33, +} + +var ( + file_payment_v1_payment_proto_rawDescOnce sync.Once + file_payment_v1_payment_proto_rawDescData = file_payment_v1_payment_proto_rawDesc +) + +func file_payment_v1_payment_proto_rawDescGZIP() []byte { + file_payment_v1_payment_proto_rawDescOnce.Do(func() { + file_payment_v1_payment_proto_rawDescData = protoimpl.X.CompressGZIP(file_payment_v1_payment_proto_rawDescData) + }) + return file_payment_v1_payment_proto_rawDescData +} + +var file_payment_v1_payment_proto_enumTypes = make([]protoimpl.EnumInfo, 1) +var file_payment_v1_payment_proto_msgTypes = make([]protoimpl.MessageInfo, 1) +var file_payment_v1_payment_proto_goTypes = []interface{}{ + (PaymentProvider)(0), // 0: payment.v1.PaymentProvider + (*Order)(nil), // 1: payment.v1.Order + (*money.Money)(nil), // 2: google.type.Money +} +var file_payment_v1_payment_proto_depIdxs = []int32{ + 2, // 0: payment.v1.Order.amount:type_name -> google.type.Money + 0, // 1: payment.v1.Order.payment_provider:type_name -> payment.v1.PaymentProvider + 2, // [2:2] is the sub-list for method output_type + 2, // [2:2] is the sub-list for method input_type + 2, // [2:2] is the sub-list for extension type_name + 2, // [2:2] is the sub-list for extension extendee + 0, // [0:2] is the sub-list for field type_name +} + +func init() { file_payment_v1_payment_proto_init() } +func file_payment_v1_payment_proto_init() { + if File_payment_v1_payment_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_payment_v1_payment_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Order); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_payment_v1_payment_proto_rawDesc, + NumEnums: 1, + NumMessages: 1, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_payment_v1_payment_proto_goTypes, + DependencyIndexes: file_payment_v1_payment_proto_depIdxs, + EnumInfos: file_payment_v1_payment_proto_enumTypes, + MessageInfos: file_payment_v1_payment_proto_msgTypes, + }.Build() + File_payment_v1_payment_proto = out.File + file_payment_v1_payment_proto_rawDesc = nil + file_payment_v1_payment_proto_goTypes = nil + file_payment_v1_payment_proto_depIdxs = nil +} diff --git a/gen/proto/go/pet/v1/pet.pb.go b/gen/proto/go/pet/v1/pet.pb.go new file mode 100644 index 0000000..75f578e --- /dev/null +++ b/gen/proto/go/pet/v1/pet.pb.go @@ -0,0 +1,790 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.28.0 +// protoc (unknown) +// source: pet/v1/pet.proto + +package petv1 + +import ( + v1 "github.com/bufbuild/buf-tour/petstore/gen/proto/go/payment/v1" + datetime "google.golang.org/genproto/googleapis/type/datetime" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +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) +) + +// PetType represents the different types of pets in the pet store. +type PetType int32 + +const ( + PetType_PET_TYPE_UNSPECIFIED PetType = 0 + PetType_PET_TYPE_CAT PetType = 1 + PetType_PET_TYPE_DOG PetType = 2 + PetType_PET_TYPE_SNAKE PetType = 3 + PetType_PET_TYPE_HAMSTER PetType = 4 +) + +// Enum value maps for PetType. +var ( + PetType_name = map[int32]string{ + 0: "PET_TYPE_UNSPECIFIED", + 1: "PET_TYPE_CAT", + 2: "PET_TYPE_DOG", + 3: "PET_TYPE_SNAKE", + 4: "PET_TYPE_HAMSTER", + } + PetType_value = map[string]int32{ + "PET_TYPE_UNSPECIFIED": 0, + "PET_TYPE_CAT": 1, + "PET_TYPE_DOG": 2, + "PET_TYPE_SNAKE": 3, + "PET_TYPE_HAMSTER": 4, + } +) + +func (x PetType) Enum() *PetType { + p := new(PetType) + *p = x + return p +} + +func (x PetType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (PetType) Descriptor() protoreflect.EnumDescriptor { + return file_pet_v1_pet_proto_enumTypes[0].Descriptor() +} + +func (PetType) Type() protoreflect.EnumType { + return &file_pet_v1_pet_proto_enumTypes[0] +} + +func (x PetType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use PetType.Descriptor instead. +func (PetType) EnumDescriptor() ([]byte, []int) { + return file_pet_v1_pet_proto_rawDescGZIP(), []int{0} +} + +// Pet represents a pet in the pet store. +type Pet struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PetType PetType `protobuf:"varint,1,opt,name=pet_type,json=petType,proto3,enum=pet.v1.PetType" json:"pet_type,omitempty"` + PetId string `protobuf:"bytes,2,opt,name=pet_id,json=petId,proto3" json:"pet_id,omitempty"` + Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"` + CreatedAt *datetime.DateTime `protobuf:"bytes,4,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"` +} + +func (x *Pet) Reset() { + *x = Pet{} + if protoimpl.UnsafeEnabled { + mi := &file_pet_v1_pet_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *Pet) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*Pet) ProtoMessage() {} + +func (x *Pet) ProtoReflect() protoreflect.Message { + mi := &file_pet_v1_pet_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use Pet.ProtoReflect.Descriptor instead. +func (*Pet) Descriptor() ([]byte, []int) { + return file_pet_v1_pet_proto_rawDescGZIP(), []int{0} +} + +func (x *Pet) GetPetType() PetType { + if x != nil { + return x.PetType + } + return PetType_PET_TYPE_UNSPECIFIED +} + +func (x *Pet) GetPetId() string { + if x != nil { + return x.PetId + } + return "" +} + +func (x *Pet) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *Pet) GetCreatedAt() *datetime.DateTime { + if x != nil { + return x.CreatedAt + } + return nil +} + +type GetPetRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PetId string `protobuf:"bytes,1,opt,name=pet_id,json=petId,proto3" json:"pet_id,omitempty"` +} + +func (x *GetPetRequest) Reset() { + *x = GetPetRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_pet_v1_pet_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetPetRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetPetRequest) ProtoMessage() {} + +func (x *GetPetRequest) ProtoReflect() protoreflect.Message { + mi := &file_pet_v1_pet_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetPetRequest.ProtoReflect.Descriptor instead. +func (*GetPetRequest) Descriptor() ([]byte, []int) { + return file_pet_v1_pet_proto_rawDescGZIP(), []int{1} +} + +func (x *GetPetRequest) GetPetId() string { + if x != nil { + return x.PetId + } + return "" +} + +type GetPetResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Pet *Pet `protobuf:"bytes,1,opt,name=pet,proto3" json:"pet,omitempty"` +} + +func (x *GetPetResponse) Reset() { + *x = GetPetResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pet_v1_pet_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetPetResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetPetResponse) ProtoMessage() {} + +func (x *GetPetResponse) ProtoReflect() protoreflect.Message { + mi := &file_pet_v1_pet_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetPetResponse.ProtoReflect.Descriptor instead. +func (*GetPetResponse) Descriptor() ([]byte, []int) { + return file_pet_v1_pet_proto_rawDescGZIP(), []int{2} +} + +func (x *GetPetResponse) GetPet() *Pet { + if x != nil { + return x.Pet + } + return nil +} + +type PutPetRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PetType PetType `protobuf:"varint,1,opt,name=pet_type,json=petType,proto3,enum=pet.v1.PetType" json:"pet_type,omitempty"` + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` +} + +func (x *PutPetRequest) Reset() { + *x = PutPetRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_pet_v1_pet_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PutPetRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PutPetRequest) ProtoMessage() {} + +func (x *PutPetRequest) ProtoReflect() protoreflect.Message { + mi := &file_pet_v1_pet_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PutPetRequest.ProtoReflect.Descriptor instead. +func (*PutPetRequest) Descriptor() ([]byte, []int) { + return file_pet_v1_pet_proto_rawDescGZIP(), []int{3} +} + +func (x *PutPetRequest) GetPetType() PetType { + if x != nil { + return x.PetType + } + return PetType_PET_TYPE_UNSPECIFIED +} + +func (x *PutPetRequest) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +type PutPetResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Pet *Pet `protobuf:"bytes,1,opt,name=pet,proto3" json:"pet,omitempty"` +} + +func (x *PutPetResponse) Reset() { + *x = PutPetResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pet_v1_pet_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PutPetResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PutPetResponse) ProtoMessage() {} + +func (x *PutPetResponse) ProtoReflect() protoreflect.Message { + mi := &file_pet_v1_pet_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PutPetResponse.ProtoReflect.Descriptor instead. +func (*PutPetResponse) Descriptor() ([]byte, []int) { + return file_pet_v1_pet_proto_rawDescGZIP(), []int{4} +} + +func (x *PutPetResponse) GetPet() *Pet { + if x != nil { + return x.Pet + } + return nil +} + +type DeletePetRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PetId string `protobuf:"bytes,1,opt,name=pet_id,json=petId,proto3" json:"pet_id,omitempty"` +} + +func (x *DeletePetRequest) Reset() { + *x = DeletePetRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_pet_v1_pet_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeletePetRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeletePetRequest) ProtoMessage() {} + +func (x *DeletePetRequest) ProtoReflect() protoreflect.Message { + mi := &file_pet_v1_pet_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeletePetRequest.ProtoReflect.Descriptor instead. +func (*DeletePetRequest) Descriptor() ([]byte, []int) { + return file_pet_v1_pet_proto_rawDescGZIP(), []int{5} +} + +func (x *DeletePetRequest) GetPetId() string { + if x != nil { + return x.PetId + } + return "" +} + +type DeletePetResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *DeletePetResponse) Reset() { + *x = DeletePetResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pet_v1_pet_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeletePetResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeletePetResponse) ProtoMessage() {} + +func (x *DeletePetResponse) ProtoReflect() protoreflect.Message { + mi := &file_pet_v1_pet_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeletePetResponse.ProtoReflect.Descriptor instead. +func (*DeletePetResponse) Descriptor() ([]byte, []int) { + return file_pet_v1_pet_proto_rawDescGZIP(), []int{6} +} + +type PurchasePetRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PetId string `protobuf:"bytes,1,opt,name=pet_id,json=petId,proto3" json:"pet_id,omitempty"` + Order *v1.Order `protobuf:"bytes,2,opt,name=order,proto3" json:"order,omitempty"` +} + +func (x *PurchasePetRequest) Reset() { + *x = PurchasePetRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_pet_v1_pet_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PurchasePetRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PurchasePetRequest) ProtoMessage() {} + +func (x *PurchasePetRequest) ProtoReflect() protoreflect.Message { + mi := &file_pet_v1_pet_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PurchasePetRequest.ProtoReflect.Descriptor instead. +func (*PurchasePetRequest) Descriptor() ([]byte, []int) { + return file_pet_v1_pet_proto_rawDescGZIP(), []int{7} +} + +func (x *PurchasePetRequest) GetPetId() string { + if x != nil { + return x.PetId + } + return "" +} + +func (x *PurchasePetRequest) GetOrder() *v1.Order { + if x != nil { + return x.Order + } + return nil +} + +type PurchasePetResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *PurchasePetResponse) Reset() { + *x = PurchasePetResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pet_v1_pet_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PurchasePetResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PurchasePetResponse) ProtoMessage() {} + +func (x *PurchasePetResponse) ProtoReflect() protoreflect.Message { + mi := &file_pet_v1_pet_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PurchasePetResponse.ProtoReflect.Descriptor instead. +func (*PurchasePetResponse) Descriptor() ([]byte, []int) { + return file_pet_v1_pet_proto_rawDescGZIP(), []int{8} +} + +var File_pet_v1_pet_proto protoreflect.FileDescriptor + +var file_pet_v1_pet_proto_rawDesc = []byte{ + 0x0a, 0x10, 0x70, 0x65, 0x74, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x65, 0x74, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x12, 0x06, 0x70, 0x65, 0x74, 0x2e, 0x76, 0x31, 0x1a, 0x18, 0x70, 0x61, 0x79, 0x6d, + 0x65, 0x6e, 0x74, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x74, 0x79, 0x70, + 0x65, 0x2f, 0x64, 0x61, 0x74, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x22, 0x92, 0x01, 0x0a, 0x03, 0x50, 0x65, 0x74, 0x12, 0x2a, 0x0a, 0x08, 0x70, 0x65, 0x74, 0x5f, + 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x70, 0x65, 0x74, + 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x07, 0x70, 0x65, 0x74, + 0x54, 0x79, 0x70, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x70, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x65, 0x74, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, + 0x34, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x74, 0x79, 0x70, + 0x65, 0x2e, 0x44, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x26, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x50, 0x65, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x15, 0x0a, 0x06, 0x70, 0x65, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x65, 0x74, 0x49, 0x64, 0x22, 0x2f, 0x0a, + 0x0e, 0x47, 0x65, 0x74, 0x50, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x1d, 0x0a, 0x03, 0x70, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x70, + 0x65, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x65, 0x74, 0x52, 0x03, 0x70, 0x65, 0x74, 0x22, 0x4f, + 0x0a, 0x0d, 0x50, 0x75, 0x74, 0x50, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x2a, 0x0a, 0x08, 0x70, 0x65, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x0f, 0x2e, 0x70, 0x65, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x65, 0x74, 0x54, 0x79, + 0x70, 0x65, 0x52, 0x07, 0x70, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, + 0x2f, 0x0a, 0x0e, 0x50, 0x75, 0x74, 0x50, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x1d, 0x0a, 0x03, 0x70, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, + 0x2e, 0x70, 0x65, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x65, 0x74, 0x52, 0x03, 0x70, 0x65, 0x74, + 0x22, 0x29, 0x0a, 0x10, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x65, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x15, 0x0a, 0x06, 0x70, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x65, 0x74, 0x49, 0x64, 0x22, 0x13, 0x0a, 0x11, 0x44, + 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x54, 0x0a, 0x12, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x50, 0x65, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x15, 0x0a, 0x06, 0x70, 0x65, 0x74, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x65, 0x74, 0x49, 0x64, 0x12, 0x27, 0x0a, + 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, + 0x61, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, + 0x05, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x22, 0x15, 0x0a, 0x13, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, + 0x73, 0x65, 0x50, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2a, 0x71, 0x0a, + 0x07, 0x50, 0x65, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x45, 0x54, 0x5f, + 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, + 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x50, 0x45, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x43, + 0x41, 0x54, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x50, 0x45, 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, + 0x5f, 0x44, 0x4f, 0x47, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x50, 0x45, 0x54, 0x5f, 0x54, 0x59, + 0x50, 0x45, 0x5f, 0x53, 0x4e, 0x41, 0x4b, 0x45, 0x10, 0x03, 0x12, 0x14, 0x0a, 0x10, 0x50, 0x45, + 0x54, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x48, 0x41, 0x4d, 0x53, 0x54, 0x45, 0x52, 0x10, 0x04, + 0x32, 0x95, 0x02, 0x0a, 0x0f, 0x50, 0x65, 0x74, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x53, 0x65, 0x72, + 0x76, 0x69, 0x63, 0x65, 0x12, 0x39, 0x0a, 0x06, 0x47, 0x65, 0x74, 0x50, 0x65, 0x74, 0x12, 0x15, + 0x2e, 0x70, 0x65, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x65, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x70, 0x65, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x47, + 0x65, 0x74, 0x50, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, + 0x39, 0x0a, 0x06, 0x50, 0x75, 0x74, 0x50, 0x65, 0x74, 0x12, 0x15, 0x2e, 0x70, 0x65, 0x74, 0x2e, + 0x76, 0x31, 0x2e, 0x50, 0x75, 0x74, 0x50, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x16, 0x2e, 0x70, 0x65, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x75, 0x74, 0x50, 0x65, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x09, 0x44, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x50, 0x65, 0x74, 0x12, 0x18, 0x2e, 0x70, 0x65, 0x74, 0x2e, 0x76, 0x31, + 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x19, 0x2e, 0x70, 0x65, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x50, 0x65, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x48, + 0x0a, 0x0b, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x50, 0x65, 0x74, 0x12, 0x1a, 0x2e, + 0x70, 0x65, 0x74, 0x2e, 0x76, 0x31, 0x2e, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x50, + 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x70, 0x65, 0x74, 0x2e, + 0x76, 0x31, 0x2e, 0x50, 0x75, 0x72, 0x63, 0x68, 0x61, 0x73, 0x65, 0x50, 0x65, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0x90, 0x01, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, + 0x2e, 0x70, 0x65, 0x74, 0x2e, 0x76, 0x31, 0x42, 0x08, 0x50, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x74, + 0x6f, 0x50, 0x01, 0x5a, 0x3f, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, + 0x62, 0x75, 0x66, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x2f, 0x62, 0x75, 0x66, 0x2d, 0x74, 0x6f, 0x75, + 0x72, 0x2f, 0x70, 0x65, 0x74, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x2f, 0x70, 0x65, 0x74, 0x2f, 0x76, 0x31, 0x3b, 0x70, + 0x65, 0x74, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x50, 0x58, 0x58, 0xaa, 0x02, 0x06, 0x50, 0x65, 0x74, + 0x2e, 0x56, 0x31, 0xca, 0x02, 0x06, 0x50, 0x65, 0x74, 0x5c, 0x56, 0x31, 0xe2, 0x02, 0x12, 0x50, + 0x65, 0x74, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0xea, 0x02, 0x07, 0x50, 0x65, 0x74, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x33, +} + +var ( + file_pet_v1_pet_proto_rawDescOnce sync.Once + file_pet_v1_pet_proto_rawDescData = file_pet_v1_pet_proto_rawDesc +) + +func file_pet_v1_pet_proto_rawDescGZIP() []byte { + file_pet_v1_pet_proto_rawDescOnce.Do(func() { + file_pet_v1_pet_proto_rawDescData = protoimpl.X.CompressGZIP(file_pet_v1_pet_proto_rawDescData) + }) + return file_pet_v1_pet_proto_rawDescData +} + +var file_pet_v1_pet_proto_enumTypes = make([]protoimpl.EnumInfo, 1) +var file_pet_v1_pet_proto_msgTypes = make([]protoimpl.MessageInfo, 9) +var file_pet_v1_pet_proto_goTypes = []interface{}{ + (PetType)(0), // 0: pet.v1.PetType + (*Pet)(nil), // 1: pet.v1.Pet + (*GetPetRequest)(nil), // 2: pet.v1.GetPetRequest + (*GetPetResponse)(nil), // 3: pet.v1.GetPetResponse + (*PutPetRequest)(nil), // 4: pet.v1.PutPetRequest + (*PutPetResponse)(nil), // 5: pet.v1.PutPetResponse + (*DeletePetRequest)(nil), // 6: pet.v1.DeletePetRequest + (*DeletePetResponse)(nil), // 7: pet.v1.DeletePetResponse + (*PurchasePetRequest)(nil), // 8: pet.v1.PurchasePetRequest + (*PurchasePetResponse)(nil), // 9: pet.v1.PurchasePetResponse + (*datetime.DateTime)(nil), // 10: google.type.DateTime + (*v1.Order)(nil), // 11: payment.v1.Order +} +var file_pet_v1_pet_proto_depIdxs = []int32{ + 0, // 0: pet.v1.Pet.pet_type:type_name -> pet.v1.PetType + 10, // 1: pet.v1.Pet.created_at:type_name -> google.type.DateTime + 1, // 2: pet.v1.GetPetResponse.pet:type_name -> pet.v1.Pet + 0, // 3: pet.v1.PutPetRequest.pet_type:type_name -> pet.v1.PetType + 1, // 4: pet.v1.PutPetResponse.pet:type_name -> pet.v1.Pet + 11, // 5: pet.v1.PurchasePetRequest.order:type_name -> payment.v1.Order + 2, // 6: pet.v1.PetStoreService.GetPet:input_type -> pet.v1.GetPetRequest + 4, // 7: pet.v1.PetStoreService.PutPet:input_type -> pet.v1.PutPetRequest + 6, // 8: pet.v1.PetStoreService.DeletePet:input_type -> pet.v1.DeletePetRequest + 8, // 9: pet.v1.PetStoreService.PurchasePet:input_type -> pet.v1.PurchasePetRequest + 3, // 10: pet.v1.PetStoreService.GetPet:output_type -> pet.v1.GetPetResponse + 5, // 11: pet.v1.PetStoreService.PutPet:output_type -> pet.v1.PutPetResponse + 7, // 12: pet.v1.PetStoreService.DeletePet:output_type -> pet.v1.DeletePetResponse + 9, // 13: pet.v1.PetStoreService.PurchasePet:output_type -> pet.v1.PurchasePetResponse + 10, // [10:14] is the sub-list for method output_type + 6, // [6:10] is the sub-list for method input_type + 6, // [6:6] is the sub-list for extension type_name + 6, // [6:6] is the sub-list for extension extendee + 0, // [0:6] is the sub-list for field type_name +} + +func init() { file_pet_v1_pet_proto_init() } +func file_pet_v1_pet_proto_init() { + if File_pet_v1_pet_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_pet_v1_pet_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Pet); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pet_v1_pet_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetPetRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pet_v1_pet_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetPetResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pet_v1_pet_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PutPetRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pet_v1_pet_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PutPetResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pet_v1_pet_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeletePetRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pet_v1_pet_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeletePetResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pet_v1_pet_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PurchasePetRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pet_v1_pet_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PurchasePetResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_pet_v1_pet_proto_rawDesc, + NumEnums: 1, + NumMessages: 9, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_pet_v1_pet_proto_goTypes, + DependencyIndexes: file_pet_v1_pet_proto_depIdxs, + EnumInfos: file_pet_v1_pet_proto_enumTypes, + MessageInfos: file_pet_v1_pet_proto_msgTypes, + }.Build() + File_pet_v1_pet_proto = out.File + file_pet_v1_pet_proto_rawDesc = nil + file_pet_v1_pet_proto_goTypes = nil + file_pet_v1_pet_proto_depIdxs = nil +} diff --git a/gen/proto/go/pet/v1/pet_grpc.pb.go b/gen/proto/go/pet/v1/pet_grpc.pb.go new file mode 100644 index 0000000..e3f6af4 --- /dev/null +++ b/gen/proto/go/pet/v1/pet_grpc.pb.go @@ -0,0 +1,211 @@ +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. +// versions: +// - protoc-gen-go-grpc v1.2.0 +// - protoc (unknown) +// source: pet/v1/pet.proto + +package petv1 + +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.32.0 or later. +const _ = grpc.SupportPackageIsVersion7 + +// PetStoreServiceClient is the client API for PetStoreService 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 PetStoreServiceClient interface { + GetPet(ctx context.Context, in *GetPetRequest, opts ...grpc.CallOption) (*GetPetResponse, error) + PutPet(ctx context.Context, in *PutPetRequest, opts ...grpc.CallOption) (*PutPetResponse, error) + DeletePet(ctx context.Context, in *DeletePetRequest, opts ...grpc.CallOption) (*DeletePetResponse, error) + PurchasePet(ctx context.Context, in *PurchasePetRequest, opts ...grpc.CallOption) (*PurchasePetResponse, error) +} + +type petStoreServiceClient struct { + cc grpc.ClientConnInterface +} + +func NewPetStoreServiceClient(cc grpc.ClientConnInterface) PetStoreServiceClient { + return &petStoreServiceClient{cc} +} + +func (c *petStoreServiceClient) GetPet(ctx context.Context, in *GetPetRequest, opts ...grpc.CallOption) (*GetPetResponse, error) { + out := new(GetPetResponse) + err := c.cc.Invoke(ctx, "/pet.v1.PetStoreService/GetPet", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *petStoreServiceClient) PutPet(ctx context.Context, in *PutPetRequest, opts ...grpc.CallOption) (*PutPetResponse, error) { + out := new(PutPetResponse) + err := c.cc.Invoke(ctx, "/pet.v1.PetStoreService/PutPet", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *petStoreServiceClient) DeletePet(ctx context.Context, in *DeletePetRequest, opts ...grpc.CallOption) (*DeletePetResponse, error) { + out := new(DeletePetResponse) + err := c.cc.Invoke(ctx, "/pet.v1.PetStoreService/DeletePet", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *petStoreServiceClient) PurchasePet(ctx context.Context, in *PurchasePetRequest, opts ...grpc.CallOption) (*PurchasePetResponse, error) { + out := new(PurchasePetResponse) + err := c.cc.Invoke(ctx, "/pet.v1.PetStoreService/PurchasePet", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// PetStoreServiceServer is the server API for PetStoreService service. +// All implementations should embed UnimplementedPetStoreServiceServer +// for forward compatibility +type PetStoreServiceServer interface { + GetPet(context.Context, *GetPetRequest) (*GetPetResponse, error) + PutPet(context.Context, *PutPetRequest) (*PutPetResponse, error) + DeletePet(context.Context, *DeletePetRequest) (*DeletePetResponse, error) + PurchasePet(context.Context, *PurchasePetRequest) (*PurchasePetResponse, error) +} + +// UnimplementedPetStoreServiceServer should be embedded to have forward compatible implementations. +type UnimplementedPetStoreServiceServer struct { +} + +func (UnimplementedPetStoreServiceServer) GetPet(context.Context, *GetPetRequest) (*GetPetResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetPet not implemented") +} +func (UnimplementedPetStoreServiceServer) PutPet(context.Context, *PutPetRequest) (*PutPetResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method PutPet not implemented") +} +func (UnimplementedPetStoreServiceServer) DeletePet(context.Context, *DeletePetRequest) (*DeletePetResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method DeletePet not implemented") +} +func (UnimplementedPetStoreServiceServer) PurchasePet(context.Context, *PurchasePetRequest) (*PurchasePetResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method PurchasePet not implemented") +} + +// UnsafePetStoreServiceServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to PetStoreServiceServer will +// result in compilation errors. +type UnsafePetStoreServiceServer interface { + mustEmbedUnimplementedPetStoreServiceServer() +} + +func RegisterPetStoreServiceServer(s grpc.ServiceRegistrar, srv PetStoreServiceServer) { + s.RegisterService(&PetStoreService_ServiceDesc, srv) +} + +func _PetStoreService_GetPet_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetPetRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(PetStoreServiceServer).GetPet(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/pet.v1.PetStoreService/GetPet", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(PetStoreServiceServer).GetPet(ctx, req.(*GetPetRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _PetStoreService_PutPet_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(PutPetRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(PetStoreServiceServer).PutPet(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/pet.v1.PetStoreService/PutPet", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(PetStoreServiceServer).PutPet(ctx, req.(*PutPetRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _PetStoreService_DeletePet_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DeletePetRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(PetStoreServiceServer).DeletePet(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/pet.v1.PetStoreService/DeletePet", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(PetStoreServiceServer).DeletePet(ctx, req.(*DeletePetRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _PetStoreService_PurchasePet_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(PurchasePetRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(PetStoreServiceServer).PurchasePet(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/pet.v1.PetStoreService/PurchasePet", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(PetStoreServiceServer).PurchasePet(ctx, req.(*PurchasePetRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// PetStoreService_ServiceDesc is the grpc.ServiceDesc for PetStoreService service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var PetStoreService_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "pet.v1.PetStoreService", + HandlerType: (*PetStoreServiceServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "GetPet", + Handler: _PetStoreService_GetPet_Handler, + }, + { + MethodName: "PutPet", + Handler: _PetStoreService_PutPet_Handler, + }, + { + MethodName: "DeletePet", + Handler: _PetStoreService_DeletePet_Handler, + }, + { + MethodName: "PurchasePet", + Handler: _PetStoreService_PurchasePet_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "pet/v1/pet.proto", +} diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..ca29627 --- /dev/null +++ b/go.mod @@ -0,0 +1,3 @@ +module git.deineagentur.com/payment-backoffice/protobuf/petstore + +go 1.18 diff --git a/install.sh b/install.sh new file mode 100644 index 0000000..cb72d64 --- /dev/null +++ b/install.sh @@ -0,0 +1,8 @@ +#!/usr/bin/env bash + +brew install protobuf +brew install bufbuild/buf/buf + +go install google.golang.org/protobuf/cmd/protoc-gen-go@latest +go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest + diff --git a/paymentapis/buf.lock b/paymentapis/buf.lock new file mode 100644 index 0000000..9ab501e --- /dev/null +++ b/paymentapis/buf.lock @@ -0,0 +1,7 @@ +# Generated by buf. DO NOT EDIT. +version: v1 +deps: + - remote: buf.build + owner: googleapis + repository: googleapis + commit: 68946673f2d94bb2b24e6e97a208b752 diff --git a/paymentapis/buf.yaml b/paymentapis/buf.yaml new file mode 100644 index 0000000..445dc78 --- /dev/null +++ b/paymentapis/buf.yaml @@ -0,0 +1,10 @@ +version: v1 +name: buf.build/acme/paymentapis +deps: + - buf.build/googleapis/googleapis +lint: + use: + - DEFAULT +breaking: + use: + - FILE \ No newline at end of file diff --git a/paymentapis/payment/v1/payment.proto b/paymentapis/payment/v1/payment.proto new file mode 100644 index 0000000..3718257 --- /dev/null +++ b/paymentapis/payment/v1/payment.proto @@ -0,0 +1,22 @@ +syntax = "proto3"; + +package payment.v1; + +import "google/type/money.proto"; + +// PaymentProvider represents the supported set +// of payment providers. +enum PaymentProvider { + PAYMENT_PROVIDER_UNSPECIFIED = 0; + PAYMENT_PROVIDER_STRIPE = 1; + PAYMENT_PROVIDER_PAYPAL = 2; + PAYMENT_PROVIDER_APPLE = 3; +} + +// Order represents a monetary order. +message Order { + string order_id = 1; + string recipient_id = 2; + google.type.Money amount = 3; + PaymentProvider payment_provider = 4; +} \ No newline at end of file diff --git a/petapis/buf.lock b/petapis/buf.lock new file mode 100644 index 0000000..70e1501 --- /dev/null +++ b/petapis/buf.lock @@ -0,0 +1,11 @@ +# Generated by buf. DO NOT EDIT. +version: v1 +deps: + - remote: buf.build + owner: acme + repository: paymentapis + commit: 6e230f46113f498392c82d12b1a07b70 + - remote: buf.build + owner: googleapis + repository: googleapis + commit: 68946673f2d94bb2b24e6e97a208b752 diff --git a/petapis/buf.yaml b/petapis/buf.yaml new file mode 100644 index 0000000..cdf26a1 --- /dev/null +++ b/petapis/buf.yaml @@ -0,0 +1,11 @@ +version: v1 +name: buf.build/acme/petapis +deps: + - buf.build/googleapis/googleapis + - buf.build/acme/paymentapis +lint: + use: + - DEFAULT +breaking: + use: + - FILE \ No newline at end of file diff --git a/petapis/pet/v1/pet.proto b/petapis/pet/v1/pet.proto new file mode 100644 index 0000000..be66fab --- /dev/null +++ b/petapis/pet/v1/pet.proto @@ -0,0 +1,60 @@ +syntax = "proto3"; + +package pet.v1; + +import "payment/v1/payment.proto"; +import "google/type/datetime.proto"; + +// PetType represents the different types of pets in the pet store. +enum PetType { + PET_TYPE_UNSPECIFIED = 0; + PET_TYPE_CAT = 1; + PET_TYPE_DOG = 2; + PET_TYPE_SNAKE = 3; + PET_TYPE_HAMSTER = 4; +} + +// Pet represents a pet in the pet store. +message Pet { + PetType pet_type = 1; + string pet_id = 2; + string name = 3; + google.type.DateTime created_at = 4; +} + +message GetPetRequest { + string pet_id = 1; +} + +message GetPetResponse { + Pet pet = 1; +} + +message PutPetRequest { + PetType pet_type = 1; + string name = 2; +} + +message PutPetResponse { + Pet pet = 1; +} + +message DeletePetRequest { + string pet_id = 1; +} + +message DeletePetResponse {} + +message PurchasePetRequest { + string pet_id = 1; + payment.v1.Order order = 2; +} + +message PurchasePetResponse {} + +service PetStoreService { + rpc GetPet(GetPetRequest) returns (GetPetResponse) {} + rpc PutPet(PutPetRequest) returns (PutPetResponse) {} + rpc DeletePet(DeletePetRequest) returns (DeletePetResponse) {} + rpc PurchasePet(PurchasePetRequest) returns (PurchasePetResponse) {} +} \ No newline at end of file