1// Copyright 2021 Google LLC 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15// Code generated by protoc-gen-go. DO NOT EDIT. 16// versions: 17// protoc-gen-go v1.26.0 18// protoc v3.12.2 19// source: google/appengine/v1beta/service.proto 20 21package appengine 22 23import ( 24 reflect "reflect" 25 sync "sync" 26 27 _ "google.golang.org/genproto/googleapis/api/annotations" 28 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 29 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 30) 31 32const ( 33 // Verify that this generated code is sufficiently up-to-date. 34 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 35 // Verify that runtime/protoimpl is sufficiently up-to-date. 36 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 37) 38 39// Available sharding mechanisms. 40type TrafficSplit_ShardBy int32 41 42const ( 43 // Diversion method unspecified. 44 TrafficSplit_UNSPECIFIED TrafficSplit_ShardBy = 0 45 // Diversion based on a specially named cookie, "GOOGAPPUID." The cookie 46 // must be set by the application itself or no diversion will occur. 47 TrafficSplit_COOKIE TrafficSplit_ShardBy = 1 48 // Diversion based on applying the modulus operation to a fingerprint 49 // of the IP address. 50 TrafficSplit_IP TrafficSplit_ShardBy = 2 51 // Diversion based on weighted random assignment. An incoming request is 52 // randomly routed to a version in the traffic split, with probability 53 // proportional to the version's traffic share. 54 TrafficSplit_RANDOM TrafficSplit_ShardBy = 3 55) 56 57// Enum value maps for TrafficSplit_ShardBy. 58var ( 59 TrafficSplit_ShardBy_name = map[int32]string{ 60 0: "UNSPECIFIED", 61 1: "COOKIE", 62 2: "IP", 63 3: "RANDOM", 64 } 65 TrafficSplit_ShardBy_value = map[string]int32{ 66 "UNSPECIFIED": 0, 67 "COOKIE": 1, 68 "IP": 2, 69 "RANDOM": 3, 70 } 71) 72 73func (x TrafficSplit_ShardBy) Enum() *TrafficSplit_ShardBy { 74 p := new(TrafficSplit_ShardBy) 75 *p = x 76 return p 77} 78 79func (x TrafficSplit_ShardBy) String() string { 80 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 81} 82 83func (TrafficSplit_ShardBy) Descriptor() protoreflect.EnumDescriptor { 84 return file_google_appengine_v1beta_service_proto_enumTypes[0].Descriptor() 85} 86 87func (TrafficSplit_ShardBy) Type() protoreflect.EnumType { 88 return &file_google_appengine_v1beta_service_proto_enumTypes[0] 89} 90 91func (x TrafficSplit_ShardBy) Number() protoreflect.EnumNumber { 92 return protoreflect.EnumNumber(x) 93} 94 95// Deprecated: Use TrafficSplit_ShardBy.Descriptor instead. 96func (TrafficSplit_ShardBy) EnumDescriptor() ([]byte, []int) { 97 return file_google_appengine_v1beta_service_proto_rawDescGZIP(), []int{1, 0} 98} 99 100// A Service resource is a logical component of an application that can share 101// state and communicate in a secure fashion with other services. 102// For example, an application that handles customer requests might 103// include separate services to handle tasks such as backend data 104// analysis or API requests from mobile devices. Each service has a 105// collection of versions that define a specific set of code used to 106// implement the functionality of that service. 107type Service struct { 108 state protoimpl.MessageState 109 sizeCache protoimpl.SizeCache 110 unknownFields protoimpl.UnknownFields 111 112 // Full path to the Service resource in the API. 113 // Example: `apps/myapp/services/default`. 114 // 115 // @OutputOnly 116 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 117 // Relative name of the service within the application. 118 // Example: `default`. 119 // 120 // @OutputOnly 121 Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"` 122 // Mapping that defines fractional HTTP traffic diversion to 123 // different versions within the service. 124 Split *TrafficSplit `protobuf:"bytes,3,opt,name=split,proto3" json:"split,omitempty"` 125 // Ingress settings for this service. Will apply to all versions. 126 NetworkSettings *NetworkSettings `protobuf:"bytes,6,opt,name=network_settings,json=networkSettings,proto3" json:"network_settings,omitempty"` 127} 128 129func (x *Service) Reset() { 130 *x = Service{} 131 if protoimpl.UnsafeEnabled { 132 mi := &file_google_appengine_v1beta_service_proto_msgTypes[0] 133 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 134 ms.StoreMessageInfo(mi) 135 } 136} 137 138func (x *Service) String() string { 139 return protoimpl.X.MessageStringOf(x) 140} 141 142func (*Service) ProtoMessage() {} 143 144func (x *Service) ProtoReflect() protoreflect.Message { 145 mi := &file_google_appengine_v1beta_service_proto_msgTypes[0] 146 if protoimpl.UnsafeEnabled && x != nil { 147 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 148 if ms.LoadMessageInfo() == nil { 149 ms.StoreMessageInfo(mi) 150 } 151 return ms 152 } 153 return mi.MessageOf(x) 154} 155 156// Deprecated: Use Service.ProtoReflect.Descriptor instead. 157func (*Service) Descriptor() ([]byte, []int) { 158 return file_google_appengine_v1beta_service_proto_rawDescGZIP(), []int{0} 159} 160 161func (x *Service) GetName() string { 162 if x != nil { 163 return x.Name 164 } 165 return "" 166} 167 168func (x *Service) GetId() string { 169 if x != nil { 170 return x.Id 171 } 172 return "" 173} 174 175func (x *Service) GetSplit() *TrafficSplit { 176 if x != nil { 177 return x.Split 178 } 179 return nil 180} 181 182func (x *Service) GetNetworkSettings() *NetworkSettings { 183 if x != nil { 184 return x.NetworkSettings 185 } 186 return nil 187} 188 189// Traffic routing configuration for versions within a single service. Traffic 190// splits define how traffic directed to the service is assigned to versions. 191type TrafficSplit struct { 192 state protoimpl.MessageState 193 sizeCache protoimpl.SizeCache 194 unknownFields protoimpl.UnknownFields 195 196 // Mechanism used to determine which version a request is sent to. 197 // The traffic selection algorithm will 198 // be stable for either type until allocations are changed. 199 ShardBy TrafficSplit_ShardBy `protobuf:"varint,1,opt,name=shard_by,json=shardBy,proto3,enum=google.appengine.v1beta.TrafficSplit_ShardBy" json:"shard_by,omitempty"` 200 // Mapping from version IDs within the service to fractional 201 // (0.000, 1] allocations of traffic for that version. Each version can 202 // be specified only once, but some versions in the service may not 203 // have any traffic allocation. Services that have traffic allocated 204 // cannot be deleted until either the service is deleted or 205 // their traffic allocation is removed. Allocations must sum to 1. 206 // Up to two decimal place precision is supported for IP-based splits and 207 // up to three decimal places is supported for cookie-based splits. 208 Allocations map[string]float64 `protobuf:"bytes,2,rep,name=allocations,proto3" json:"allocations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"fixed64,2,opt,name=value,proto3"` 209} 210 211func (x *TrafficSplit) Reset() { 212 *x = TrafficSplit{} 213 if protoimpl.UnsafeEnabled { 214 mi := &file_google_appengine_v1beta_service_proto_msgTypes[1] 215 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 216 ms.StoreMessageInfo(mi) 217 } 218} 219 220func (x *TrafficSplit) String() string { 221 return protoimpl.X.MessageStringOf(x) 222} 223 224func (*TrafficSplit) ProtoMessage() {} 225 226func (x *TrafficSplit) ProtoReflect() protoreflect.Message { 227 mi := &file_google_appengine_v1beta_service_proto_msgTypes[1] 228 if protoimpl.UnsafeEnabled && x != nil { 229 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 230 if ms.LoadMessageInfo() == nil { 231 ms.StoreMessageInfo(mi) 232 } 233 return ms 234 } 235 return mi.MessageOf(x) 236} 237 238// Deprecated: Use TrafficSplit.ProtoReflect.Descriptor instead. 239func (*TrafficSplit) Descriptor() ([]byte, []int) { 240 return file_google_appengine_v1beta_service_proto_rawDescGZIP(), []int{1} 241} 242 243func (x *TrafficSplit) GetShardBy() TrafficSplit_ShardBy { 244 if x != nil { 245 return x.ShardBy 246 } 247 return TrafficSplit_UNSPECIFIED 248} 249 250func (x *TrafficSplit) GetAllocations() map[string]float64 { 251 if x != nil { 252 return x.Allocations 253 } 254 return nil 255} 256 257var File_google_appengine_v1beta_service_proto protoreflect.FileDescriptor 258 259var file_google_appengine_v1beta_service_proto_rawDesc = []byte{ 260 0x0a, 0x25, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x67, 0x69, 261 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 262 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 263 0x61, 0x70, 0x70, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 264 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x67, 0x69, 265 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 266 0x6b, 0x5f, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 267 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 268 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xbf, 269 0x01, 0x0a, 0x07, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 270 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x0e, 271 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x3b, 272 0x0a, 0x05, 0x73, 0x70, 0x6c, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 273 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 274 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x53, 275 0x70, 0x6c, 0x69, 0x74, 0x52, 0x05, 0x73, 0x70, 0x6c, 0x69, 0x74, 0x12, 0x53, 0x0a, 0x10, 0x6e, 276 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x18, 277 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 278 0x70, 0x70, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 279 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 280 0x0f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 281 0x22, 0xae, 0x02, 0x0a, 0x0c, 0x54, 0x72, 0x61, 0x66, 0x66, 0x69, 0x63, 0x53, 0x70, 0x6c, 0x69, 282 0x74, 0x12, 0x48, 0x0a, 0x08, 0x73, 0x68, 0x61, 0x72, 0x64, 0x5f, 0x62, 0x79, 0x18, 0x01, 0x20, 283 0x01, 0x28, 0x0e, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x70, 284 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x54, 0x72, 285 0x61, 0x66, 0x66, 0x69, 0x63, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x2e, 0x53, 0x68, 0x61, 0x72, 0x64, 286 0x42, 0x79, 0x52, 0x07, 0x73, 0x68, 0x61, 0x72, 0x64, 0x42, 0x79, 0x12, 0x58, 0x0a, 0x0b, 0x61, 287 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 288 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x67, 289 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x2e, 0x54, 0x72, 0x61, 0x66, 0x66, 290 0x69, 0x63, 0x53, 0x70, 0x6c, 0x69, 0x74, 0x2e, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 291 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0b, 0x61, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 292 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x3e, 0x0a, 0x10, 0x41, 0x6c, 0x6c, 0x6f, 0x63, 0x61, 0x74, 293 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 294 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 295 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 296 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x3a, 0x0a, 0x07, 0x53, 0x68, 0x61, 0x72, 0x64, 0x42, 0x79, 297 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 298 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x43, 0x4f, 0x4f, 0x4b, 0x49, 0x45, 0x10, 0x01, 0x12, 0x06, 0x0a, 299 0x02, 0x49, 0x50, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x52, 0x41, 0x4e, 0x44, 0x4f, 0x4d, 0x10, 300 0x03, 0x42, 0xd2, 0x01, 0x0a, 0x1b, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 301 0x2e, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x76, 0x31, 0x62, 0x65, 0x74, 302 0x61, 0x42, 0x0c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 303 0x01, 0x5a, 0x40, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 304 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 305 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x67, 0x69, 306 0x6e, 0x65, 0x2f, 0x76, 0x31, 0x62, 0x65, 0x74, 0x61, 0x3b, 0x61, 0x70, 0x70, 0x65, 0x6e, 0x67, 307 0x69, 0x6e, 0x65, 0xaa, 0x02, 0x1d, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 308 0x75, 0x64, 0x2e, 0x41, 0x70, 0x70, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x2e, 0x56, 0x31, 0x42, 309 0x65, 0x74, 0x61, 0xca, 0x02, 0x1d, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 310 0x75, 0x64, 0x5c, 0x41, 0x70, 0x70, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5c, 0x56, 0x31, 0x62, 311 0x65, 0x74, 0x61, 0xea, 0x02, 0x20, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c, 312 0x6f, 0x75, 0x64, 0x3a, 0x3a, 0x41, 0x70, 0x70, 0x45, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x3a, 0x3a, 313 0x56, 0x31, 0x62, 0x65, 0x74, 0x61, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 314} 315 316var ( 317 file_google_appengine_v1beta_service_proto_rawDescOnce sync.Once 318 file_google_appengine_v1beta_service_proto_rawDescData = file_google_appengine_v1beta_service_proto_rawDesc 319) 320 321func file_google_appengine_v1beta_service_proto_rawDescGZIP() []byte { 322 file_google_appengine_v1beta_service_proto_rawDescOnce.Do(func() { 323 file_google_appengine_v1beta_service_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_appengine_v1beta_service_proto_rawDescData) 324 }) 325 return file_google_appengine_v1beta_service_proto_rawDescData 326} 327 328var file_google_appengine_v1beta_service_proto_enumTypes = make([]protoimpl.EnumInfo, 1) 329var file_google_appengine_v1beta_service_proto_msgTypes = make([]protoimpl.MessageInfo, 3) 330var file_google_appengine_v1beta_service_proto_goTypes = []interface{}{ 331 (TrafficSplit_ShardBy)(0), // 0: google.appengine.v1beta.TrafficSplit.ShardBy 332 (*Service)(nil), // 1: google.appengine.v1beta.Service 333 (*TrafficSplit)(nil), // 2: google.appengine.v1beta.TrafficSplit 334 nil, // 3: google.appengine.v1beta.TrafficSplit.AllocationsEntry 335 (*NetworkSettings)(nil), // 4: google.appengine.v1beta.NetworkSettings 336} 337var file_google_appengine_v1beta_service_proto_depIdxs = []int32{ 338 2, // 0: google.appengine.v1beta.Service.split:type_name -> google.appengine.v1beta.TrafficSplit 339 4, // 1: google.appengine.v1beta.Service.network_settings:type_name -> google.appengine.v1beta.NetworkSettings 340 0, // 2: google.appengine.v1beta.TrafficSplit.shard_by:type_name -> google.appengine.v1beta.TrafficSplit.ShardBy 341 3, // 3: google.appengine.v1beta.TrafficSplit.allocations:type_name -> google.appengine.v1beta.TrafficSplit.AllocationsEntry 342 4, // [4:4] is the sub-list for method output_type 343 4, // [4:4] is the sub-list for method input_type 344 4, // [4:4] is the sub-list for extension type_name 345 4, // [4:4] is the sub-list for extension extendee 346 0, // [0:4] is the sub-list for field type_name 347} 348 349func init() { file_google_appengine_v1beta_service_proto_init() } 350func file_google_appengine_v1beta_service_proto_init() { 351 if File_google_appengine_v1beta_service_proto != nil { 352 return 353 } 354 file_google_appengine_v1beta_network_settings_proto_init() 355 if !protoimpl.UnsafeEnabled { 356 file_google_appengine_v1beta_service_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 357 switch v := v.(*Service); i { 358 case 0: 359 return &v.state 360 case 1: 361 return &v.sizeCache 362 case 2: 363 return &v.unknownFields 364 default: 365 return nil 366 } 367 } 368 file_google_appengine_v1beta_service_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 369 switch v := v.(*TrafficSplit); i { 370 case 0: 371 return &v.state 372 case 1: 373 return &v.sizeCache 374 case 2: 375 return &v.unknownFields 376 default: 377 return nil 378 } 379 } 380 } 381 type x struct{} 382 out := protoimpl.TypeBuilder{ 383 File: protoimpl.DescBuilder{ 384 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 385 RawDescriptor: file_google_appengine_v1beta_service_proto_rawDesc, 386 NumEnums: 1, 387 NumMessages: 3, 388 NumExtensions: 0, 389 NumServices: 0, 390 }, 391 GoTypes: file_google_appengine_v1beta_service_proto_goTypes, 392 DependencyIndexes: file_google_appengine_v1beta_service_proto_depIdxs, 393 EnumInfos: file_google_appengine_v1beta_service_proto_enumTypes, 394 MessageInfos: file_google_appengine_v1beta_service_proto_msgTypes, 395 }.Build() 396 File_google_appengine_v1beta_service_proto = out.File 397 file_google_appengine_v1beta_service_proto_rawDesc = nil 398 file_google_appengine_v1beta_service_proto_goTypes = nil 399 file_google_appengine_v1beta_service_proto_depIdxs = nil 400} 401