1// Code generated by protoc-gen-go. DO NOT EDIT. 2// source: google/api/backend.proto 3 4package serviceconfig 5 6import ( 7 fmt "fmt" 8 math "math" 9 10 proto "github.com/golang/protobuf/proto" 11) 12 13// Reference imports to suppress errors if they are not otherwise used. 14var _ = proto.Marshal 15var _ = fmt.Errorf 16var _ = math.Inf 17 18// This is a compile-time assertion to ensure that this generated file 19// is compatible with the proto package it is being compiled against. 20// A compilation error at this line likely means your copy of the 21// proto package needs to be updated. 22const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package 23 24// Path Translation specifies how to combine the backend address with the 25// request path in order to produce the appropriate forwarding URL for the 26// request. 27// 28// Path Translation is applicable only to HTTP-based backends. Backends which 29// do not accept requests over HTTP/HTTPS should leave `path_translation` 30// unspecified. 31type BackendRule_PathTranslation int32 32 33const ( 34 BackendRule_PATH_TRANSLATION_UNSPECIFIED BackendRule_PathTranslation = 0 35 // Use the backend address as-is, with no modification to the path. If the 36 // URL pattern contains variables, the variable names and values will be 37 // appended to the query string. If a query string parameter and a URL 38 // pattern variable have the same name, this may result in duplicate keys in 39 // the query string. 40 // 41 // # Examples 42 // 43 // Given the following operation config: 44 // 45 // Method path: /api/company/{cid}/user/{uid} 46 // Backend address: https://example.cloudfunctions.net/getUser 47 // 48 // Requests to the following request paths will call the backend at the 49 // translated path: 50 // 51 // Request path: /api/company/widgetworks/user/johndoe 52 // Translated: 53 // https://example.cloudfunctions.net/getUser?cid=widgetworks&uid=johndoe 54 // 55 // Request path: /api/company/widgetworks/user/johndoe?timezone=EST 56 // Translated: 57 // https://example.cloudfunctions.net/getUser?timezone=EST&cid=widgetworks&uid=johndoe 58 BackendRule_CONSTANT_ADDRESS BackendRule_PathTranslation = 1 59 // The request path will be appended to the backend address. 60 // 61 // # Examples 62 // 63 // Given the following operation config: 64 // 65 // Method path: /api/company/{cid}/user/{uid} 66 // Backend address: https://example.appspot.com 67 // 68 // Requests to the following request paths will call the backend at the 69 // translated path: 70 // 71 // Request path: /api/company/widgetworks/user/johndoe 72 // Translated: 73 // https://example.appspot.com/api/company/widgetworks/user/johndoe 74 // 75 // Request path: /api/company/widgetworks/user/johndoe?timezone=EST 76 // Translated: 77 // https://example.appspot.com/api/company/widgetworks/user/johndoe?timezone=EST 78 BackendRule_APPEND_PATH_TO_ADDRESS BackendRule_PathTranslation = 2 79) 80 81var BackendRule_PathTranslation_name = map[int32]string{ 82 0: "PATH_TRANSLATION_UNSPECIFIED", 83 1: "CONSTANT_ADDRESS", 84 2: "APPEND_PATH_TO_ADDRESS", 85} 86 87var BackendRule_PathTranslation_value = map[string]int32{ 88 "PATH_TRANSLATION_UNSPECIFIED": 0, 89 "CONSTANT_ADDRESS": 1, 90 "APPEND_PATH_TO_ADDRESS": 2, 91} 92 93func (x BackendRule_PathTranslation) String() string { 94 return proto.EnumName(BackendRule_PathTranslation_name, int32(x)) 95} 96 97func (BackendRule_PathTranslation) EnumDescriptor() ([]byte, []int) { 98 return fileDescriptor_87d0f28daa3f64f0, []int{1, 0} 99} 100 101// `Backend` defines the backend configuration for a service. 102type Backend struct { 103 // A list of API backend rules that apply to individual API methods. 104 // 105 // **NOTE:** All service configuration rules follow "last one wins" order. 106 Rules []*BackendRule `protobuf:"bytes,1,rep,name=rules,proto3" json:"rules,omitempty"` 107 XXX_NoUnkeyedLiteral struct{} `json:"-"` 108 XXX_unrecognized []byte `json:"-"` 109 XXX_sizecache int32 `json:"-"` 110} 111 112func (m *Backend) Reset() { *m = Backend{} } 113func (m *Backend) String() string { return proto.CompactTextString(m) } 114func (*Backend) ProtoMessage() {} 115func (*Backend) Descriptor() ([]byte, []int) { 116 return fileDescriptor_87d0f28daa3f64f0, []int{0} 117} 118 119func (m *Backend) XXX_Unmarshal(b []byte) error { 120 return xxx_messageInfo_Backend.Unmarshal(m, b) 121} 122func (m *Backend) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 123 return xxx_messageInfo_Backend.Marshal(b, m, deterministic) 124} 125func (m *Backend) XXX_Merge(src proto.Message) { 126 xxx_messageInfo_Backend.Merge(m, src) 127} 128func (m *Backend) XXX_Size() int { 129 return xxx_messageInfo_Backend.Size(m) 130} 131func (m *Backend) XXX_DiscardUnknown() { 132 xxx_messageInfo_Backend.DiscardUnknown(m) 133} 134 135var xxx_messageInfo_Backend proto.InternalMessageInfo 136 137func (m *Backend) GetRules() []*BackendRule { 138 if m != nil { 139 return m.Rules 140 } 141 return nil 142} 143 144// A backend rule provides configuration for an individual API element. 145type BackendRule struct { 146 // Selects the methods to which this rule applies. 147 // 148 // Refer to [selector][google.api.DocumentationRule.selector] for syntax details. 149 Selector string `protobuf:"bytes,1,opt,name=selector,proto3" json:"selector,omitempty"` 150 // The address of the API backend. 151 Address string `protobuf:"bytes,2,opt,name=address,proto3" json:"address,omitempty"` 152 // The number of seconds to wait for a response from a request. The default 153 // deadline for gRPC is infinite (no deadline) and HTTP requests is 5 seconds. 154 Deadline float64 `protobuf:"fixed64,3,opt,name=deadline,proto3" json:"deadline,omitempty"` 155 // Minimum deadline in seconds needed for this method. Calls having deadline 156 // value lower than this will be rejected. 157 MinDeadline float64 `protobuf:"fixed64,4,opt,name=min_deadline,json=minDeadline,proto3" json:"min_deadline,omitempty"` 158 // The number of seconds to wait for the completion of a long running 159 // operation. The default is no deadline. 160 OperationDeadline float64 `protobuf:"fixed64,5,opt,name=operation_deadline,json=operationDeadline,proto3" json:"operation_deadline,omitempty"` 161 PathTranslation BackendRule_PathTranslation `protobuf:"varint,6,opt,name=path_translation,json=pathTranslation,proto3,enum=google.api.BackendRule_PathTranslation" json:"path_translation,omitempty"` 162 // Authentication settings used by the backend. 163 // 164 // These are typically used to provide service management functionality to 165 // a backend served on a publicly-routable URL. The `authentication` 166 // details should match the authentication behavior used by the backend. 167 // 168 // For example, specifying `jwt_audience` implies that the backend expects 169 // authentication via a JWT. 170 // 171 // Types that are valid to be assigned to Authentication: 172 // *BackendRule_JwtAudience 173 Authentication isBackendRule_Authentication `protobuf_oneof:"authentication"` 174 XXX_NoUnkeyedLiteral struct{} `json:"-"` 175 XXX_unrecognized []byte `json:"-"` 176 XXX_sizecache int32 `json:"-"` 177} 178 179func (m *BackendRule) Reset() { *m = BackendRule{} } 180func (m *BackendRule) String() string { return proto.CompactTextString(m) } 181func (*BackendRule) ProtoMessage() {} 182func (*BackendRule) Descriptor() ([]byte, []int) { 183 return fileDescriptor_87d0f28daa3f64f0, []int{1} 184} 185 186func (m *BackendRule) XXX_Unmarshal(b []byte) error { 187 return xxx_messageInfo_BackendRule.Unmarshal(m, b) 188} 189func (m *BackendRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 190 return xxx_messageInfo_BackendRule.Marshal(b, m, deterministic) 191} 192func (m *BackendRule) XXX_Merge(src proto.Message) { 193 xxx_messageInfo_BackendRule.Merge(m, src) 194} 195func (m *BackendRule) XXX_Size() int { 196 return xxx_messageInfo_BackendRule.Size(m) 197} 198func (m *BackendRule) XXX_DiscardUnknown() { 199 xxx_messageInfo_BackendRule.DiscardUnknown(m) 200} 201 202var xxx_messageInfo_BackendRule proto.InternalMessageInfo 203 204func (m *BackendRule) GetSelector() string { 205 if m != nil { 206 return m.Selector 207 } 208 return "" 209} 210 211func (m *BackendRule) GetAddress() string { 212 if m != nil { 213 return m.Address 214 } 215 return "" 216} 217 218func (m *BackendRule) GetDeadline() float64 { 219 if m != nil { 220 return m.Deadline 221 } 222 return 0 223} 224 225func (m *BackendRule) GetMinDeadline() float64 { 226 if m != nil { 227 return m.MinDeadline 228 } 229 return 0 230} 231 232func (m *BackendRule) GetOperationDeadline() float64 { 233 if m != nil { 234 return m.OperationDeadline 235 } 236 return 0 237} 238 239func (m *BackendRule) GetPathTranslation() BackendRule_PathTranslation { 240 if m != nil { 241 return m.PathTranslation 242 } 243 return BackendRule_PATH_TRANSLATION_UNSPECIFIED 244} 245 246type isBackendRule_Authentication interface { 247 isBackendRule_Authentication() 248} 249 250type BackendRule_JwtAudience struct { 251 JwtAudience string `protobuf:"bytes,7,opt,name=jwt_audience,json=jwtAudience,proto3,oneof"` 252} 253 254func (*BackendRule_JwtAudience) isBackendRule_Authentication() {} 255 256func (m *BackendRule) GetAuthentication() isBackendRule_Authentication { 257 if m != nil { 258 return m.Authentication 259 } 260 return nil 261} 262 263func (m *BackendRule) GetJwtAudience() string { 264 if x, ok := m.GetAuthentication().(*BackendRule_JwtAudience); ok { 265 return x.JwtAudience 266 } 267 return "" 268} 269 270// XXX_OneofWrappers is for the internal use of the proto package. 271func (*BackendRule) XXX_OneofWrappers() []interface{} { 272 return []interface{}{ 273 (*BackendRule_JwtAudience)(nil), 274 } 275} 276 277func init() { 278 proto.RegisterEnum("google.api.BackendRule_PathTranslation", BackendRule_PathTranslation_name, BackendRule_PathTranslation_value) 279 proto.RegisterType((*Backend)(nil), "google.api.Backend") 280 proto.RegisterType((*BackendRule)(nil), "google.api.BackendRule") 281} 282 283func init() { proto.RegisterFile("google/api/backend.proto", fileDescriptor_87d0f28daa3f64f0) } 284 285var fileDescriptor_87d0f28daa3f64f0 = []byte{ 286 // 408 bytes of a gzipped FileDescriptorProto 287 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x74, 0x92, 0x41, 0x6f, 0xd3, 0x30, 288 0x14, 0xc7, 0x97, 0x76, 0x5b, 0xe1, 0xb5, 0xea, 0x82, 0x85, 0x20, 0x9a, 0x38, 0x84, 0x72, 0xa0, 289 0x97, 0xa5, 0xd2, 0xb8, 0x20, 0x71, 0x4a, 0x97, 0xc0, 0x2a, 0xa1, 0x34, 0x72, 0xc2, 0x85, 0x4b, 290 0xe4, 0x25, 0x8f, 0xd4, 0x23, 0xb5, 0x23, 0xc7, 0x65, 0xdf, 0x07, 0xbe, 0x28, 0xaa, 0x93, 0x65, 291 0x2d, 0x12, 0xc7, 0xff, 0xfb, 0xfd, 0x9e, 0xad, 0xbf, 0xf4, 0xc0, 0x29, 0xa5, 0x2c, 0x2b, 0x5c, 292 0xb0, 0x9a, 0x2f, 0xee, 0x58, 0xfe, 0x13, 0x45, 0xe1, 0xd5, 0x4a, 0x6a, 0x49, 0xa0, 0x25, 0x1e, 293 0xab, 0xf9, 0xec, 0x23, 0x8c, 0x96, 0x2d, 0x24, 0x57, 0x70, 0xa6, 0x76, 0x15, 0x36, 0x8e, 0xe5, 294 0x0e, 0xe7, 0xe3, 0xeb, 0xd7, 0xde, 0x93, 0xe6, 0x75, 0x0e, 0xdd, 0x55, 0x48, 0x5b, 0x6b, 0xf6, 295 0x67, 0x08, 0xe3, 0x83, 0x31, 0xb9, 0x84, 0x67, 0x0d, 0x56, 0x98, 0x6b, 0xa9, 0x1c, 0xcb, 0xb5, 296 0xe6, 0xcf, 0x69, 0x9f, 0x89, 0x03, 0x23, 0x56, 0x14, 0x0a, 0x9b, 0xc6, 0x19, 0x18, 0xf4, 0x18, 297 0xf7, 0x5b, 0x05, 0xb2, 0xa2, 0xe2, 0x02, 0x9d, 0xa1, 0x6b, 0xcd, 0x2d, 0xda, 0x67, 0xf2, 0x16, 298 0x26, 0x5b, 0x2e, 0xb2, 0x9e, 0x9f, 0x1a, 0x3e, 0xde, 0x72, 0x11, 0x3c, 0x2a, 0x57, 0x40, 0x64, 299 0x8d, 0x8a, 0x69, 0x2e, 0x0f, 0xc4, 0x33, 0x23, 0xbe, 0xe8, 0x49, 0xaf, 0x53, 0xb0, 0x6b, 0xa6, 300 0x37, 0x99, 0x56, 0x4c, 0x34, 0x95, 0x61, 0xce, 0xb9, 0x6b, 0xcd, 0xa7, 0xd7, 0xef, 0xff, 0xd3, 301 0xd6, 0x8b, 0x99, 0xde, 0xa4, 0x4f, 0x3a, 0xbd, 0xa8, 0x8f, 0x07, 0xe4, 0x1d, 0x4c, 0xee, 0x1f, 302 0x74, 0xc6, 0x76, 0x05, 0x47, 0x91, 0xa3, 0x33, 0xda, 0x17, 0xbc, 0x3d, 0xa1, 0xe3, 0xfb, 0x07, 303 0xed, 0x77, 0xc3, 0x19, 0xc2, 0xc5, 0x3f, 0x0f, 0x11, 0x17, 0xde, 0xc4, 0x7e, 0x7a, 0x9b, 0xa5, 304 0xd4, 0x8f, 0x92, 0xaf, 0x7e, 0xba, 0x5a, 0x47, 0xd9, 0xb7, 0x28, 0x89, 0xc3, 0x9b, 0xd5, 0xe7, 305 0x55, 0x18, 0xd8, 0x27, 0xe4, 0x25, 0xd8, 0x37, 0xeb, 0x28, 0x49, 0xfd, 0x28, 0xcd, 0xfc, 0x20, 306 0xa0, 0x61, 0x92, 0xd8, 0x16, 0xb9, 0x84, 0x57, 0x7e, 0x1c, 0x87, 0x51, 0x90, 0xb5, 0xeb, 0xeb, 307 0x9e, 0x0d, 0x96, 0x36, 0x4c, 0xd9, 0x4e, 0x6f, 0x50, 0x68, 0x9e, 0x9b, 0x5f, 0x96, 0x02, 0xa6, 308 0xb9, 0xdc, 0x1e, 0x94, 0x5b, 0x4e, 0xba, 0x76, 0xf1, 0xfe, 0x16, 0x62, 0xeb, 0x7b, 0xd8, 0xb1, 309 0x52, 0x56, 0x4c, 0x94, 0x9e, 0x54, 0xe5, 0xa2, 0x44, 0x61, 0x2e, 0x65, 0xd1, 0x22, 0x56, 0xf3, 310 0xc6, 0x9c, 0x51, 0x83, 0xea, 0x17, 0xcf, 0x31, 0x97, 0xe2, 0x07, 0x2f, 0x3f, 0x1d, 0xa5, 0xdf, 311 0x83, 0xd3, 0x2f, 0x7e, 0xbc, 0xba, 0x3b, 0x37, 0x8b, 0x1f, 0xfe, 0x06, 0x00, 0x00, 0xff, 0xff, 312 0x2b, 0x64, 0x62, 0xc8, 0x7e, 0x02, 0x00, 0x00, 313} 314