...

Source file src/google.golang.org/genproto/googleapis/cloud/networkservices/v1/http_route.pb.go

Documentation: google.golang.org/genproto/googleapis/cloud/networkservices/v1

     1  // Copyright 2022 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/cloud/networkservices/v1/http_route.proto
    20  
    21  package networkservices
    22  
    23  import (
    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  	durationpb "google.golang.org/protobuf/types/known/durationpb"
    31  	fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
    32  	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
    33  )
    34  
    35  const (
    36  	// Verify that this generated code is sufficiently up-to-date.
    37  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    38  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    39  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    40  )
    41  
    42  // Supported HTTP response code.
    43  type HttpRoute_Redirect_ResponseCode int32
    44  
    45  const (
    46  	// Default value
    47  	HttpRoute_Redirect_RESPONSE_CODE_UNSPECIFIED HttpRoute_Redirect_ResponseCode = 0
    48  	// Corresponds to 301.
    49  	HttpRoute_Redirect_MOVED_PERMANENTLY_DEFAULT HttpRoute_Redirect_ResponseCode = 1
    50  	// Corresponds to 302.
    51  	HttpRoute_Redirect_FOUND HttpRoute_Redirect_ResponseCode = 2
    52  	// Corresponds to 303.
    53  	HttpRoute_Redirect_SEE_OTHER HttpRoute_Redirect_ResponseCode = 3
    54  	// Corresponds to 307. In this case, the request method will be retained.
    55  	HttpRoute_Redirect_TEMPORARY_REDIRECT HttpRoute_Redirect_ResponseCode = 4
    56  	// Corresponds to 308. In this case, the request method will be retained.
    57  	HttpRoute_Redirect_PERMANENT_REDIRECT HttpRoute_Redirect_ResponseCode = 5
    58  )
    59  
    60  // Enum value maps for HttpRoute_Redirect_ResponseCode.
    61  var (
    62  	HttpRoute_Redirect_ResponseCode_name = map[int32]string{
    63  		0: "RESPONSE_CODE_UNSPECIFIED",
    64  		1: "MOVED_PERMANENTLY_DEFAULT",
    65  		2: "FOUND",
    66  		3: "SEE_OTHER",
    67  		4: "TEMPORARY_REDIRECT",
    68  		5: "PERMANENT_REDIRECT",
    69  	}
    70  	HttpRoute_Redirect_ResponseCode_value = map[string]int32{
    71  		"RESPONSE_CODE_UNSPECIFIED": 0,
    72  		"MOVED_PERMANENTLY_DEFAULT": 1,
    73  		"FOUND":                     2,
    74  		"SEE_OTHER":                 3,
    75  		"TEMPORARY_REDIRECT":        4,
    76  		"PERMANENT_REDIRECT":        5,
    77  	}
    78  )
    79  
    80  func (x HttpRoute_Redirect_ResponseCode) Enum() *HttpRoute_Redirect_ResponseCode {
    81  	p := new(HttpRoute_Redirect_ResponseCode)
    82  	*p = x
    83  	return p
    84  }
    85  
    86  func (x HttpRoute_Redirect_ResponseCode) String() string {
    87  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
    88  }
    89  
    90  func (HttpRoute_Redirect_ResponseCode) Descriptor() protoreflect.EnumDescriptor {
    91  	return file_google_cloud_networkservices_v1_http_route_proto_enumTypes[0].Descriptor()
    92  }
    93  
    94  func (HttpRoute_Redirect_ResponseCode) Type() protoreflect.EnumType {
    95  	return &file_google_cloud_networkservices_v1_http_route_proto_enumTypes[0]
    96  }
    97  
    98  func (x HttpRoute_Redirect_ResponseCode) Number() protoreflect.EnumNumber {
    99  	return protoreflect.EnumNumber(x)
   100  }
   101  
   102  // Deprecated: Use HttpRoute_Redirect_ResponseCode.Descriptor instead.
   103  func (HttpRoute_Redirect_ResponseCode) EnumDescriptor() ([]byte, []int) {
   104  	return file_google_cloud_networkservices_v1_http_route_proto_rawDescGZIP(), []int{0, 4, 0}
   105  }
   106  
   107  // HttpRoute is the resource defining how HTTP traffic should be routed by a
   108  // Mesh or Gateway resource.
   109  type HttpRoute struct {
   110  	state         protoimpl.MessageState
   111  	sizeCache     protoimpl.SizeCache
   112  	unknownFields protoimpl.UnknownFields
   113  
   114  	// Required. Name of the HttpRoute resource. It matches pattern
   115  	// `projects/*/locations/global/httpRoutes/http_route_name>`.
   116  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
   117  	// Output only. Server-defined URL of this resource
   118  	SelfLink string `protobuf:"bytes,11,opt,name=self_link,json=selfLink,proto3" json:"self_link,omitempty"`
   119  	// Optional. A free-text description of the resource. Max length 1024 characters.
   120  	Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
   121  	// Output only. The timestamp when the resource was created.
   122  	CreateTime *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
   123  	// Output only. The timestamp when the resource was updated.
   124  	UpdateTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
   125  	// Required. Hostnames define a set of hosts that should match against the HTTP host
   126  	// header to select a HttpRoute to process the request. Hostname is the fully
   127  	// qualified domain name of a network host, as defined by RFC 1123 with the
   128  	// exception that:
   129  	//  - IPs are not allowed.
   130  	//  - A hostname may be prefixed with a wildcard label (*.). The wildcard
   131  	//    label must appear by itself as the first label.
   132  	//
   133  	// Hostname can be "precise" which is a domain name without the terminating
   134  	// dot of a network host (e.g. "foo.example.com") or "wildcard", which is a
   135  	// domain name prefixed with a single wildcard label (e.g. *.example.com).
   136  	//
   137  	// Note that as per RFC1035 and RFC1123, a label must consist of lower case
   138  	// alphanumeric characters or '-', and must start and end with an alphanumeric
   139  	// character. No other punctuation is allowed.
   140  	//
   141  	// The routes associated with a Mesh or Gateways  must have unique hostnames.
   142  	// If you attempt to attach multiple routes with conflicting hostnames,
   143  	// the configuration will be rejected.
   144  	//
   145  	// For example, while it is acceptable for routes for the hostnames
   146  	// "*.foo.bar.com" and "*.bar.com" to be associated with the same Mesh (or
   147  	// Gateways under the same scope), it is not possible to associate two routes
   148  	// both with "*.bar.com" or both with "bar.com".
   149  	Hostnames []string `protobuf:"bytes,5,rep,name=hostnames,proto3" json:"hostnames,omitempty"`
   150  	// Optional. Meshes defines a list of meshes this HttpRoute is attached to, as one of
   151  	// the routing rules to route the requests served by the mesh.
   152  	//
   153  	// Each mesh reference should match the pattern:
   154  	// `projects/*/locations/global/meshes/<mesh_name>`
   155  	//
   156  	// The attached Mesh should be of a type SIDECAR
   157  	Meshes []string `protobuf:"bytes,8,rep,name=meshes,proto3" json:"meshes,omitempty"`
   158  	// Optional. Gateways defines a list of gateways this HttpRoute is attached to, as one
   159  	// of the routing rules to route the requests served by the gateway.
   160  	//
   161  	// Each gateway reference should match the pattern:
   162  	// `projects/*/locations/global/gateways/<gateway_name>`
   163  	Gateways []string `protobuf:"bytes,9,rep,name=gateways,proto3" json:"gateways,omitempty"`
   164  	// Optional. Set of label tags associated with the HttpRoute resource.
   165  	Labels map[string]string `protobuf:"bytes,10,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   166  	// Required. Rules that define how traffic is routed and handled.
   167  	// Rules will be matched sequentially based on the RouteMatch specified for
   168  	// the rule.
   169  	Rules []*HttpRoute_RouteRule `protobuf:"bytes,6,rep,name=rules,proto3" json:"rules,omitempty"`
   170  }
   171  
   172  func (x *HttpRoute) Reset() {
   173  	*x = HttpRoute{}
   174  	if protoimpl.UnsafeEnabled {
   175  		mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[0]
   176  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   177  		ms.StoreMessageInfo(mi)
   178  	}
   179  }
   180  
   181  func (x *HttpRoute) String() string {
   182  	return protoimpl.X.MessageStringOf(x)
   183  }
   184  
   185  func (*HttpRoute) ProtoMessage() {}
   186  
   187  func (x *HttpRoute) ProtoReflect() protoreflect.Message {
   188  	mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[0]
   189  	if protoimpl.UnsafeEnabled && x != nil {
   190  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   191  		if ms.LoadMessageInfo() == nil {
   192  			ms.StoreMessageInfo(mi)
   193  		}
   194  		return ms
   195  	}
   196  	return mi.MessageOf(x)
   197  }
   198  
   199  // Deprecated: Use HttpRoute.ProtoReflect.Descriptor instead.
   200  func (*HttpRoute) Descriptor() ([]byte, []int) {
   201  	return file_google_cloud_networkservices_v1_http_route_proto_rawDescGZIP(), []int{0}
   202  }
   203  
   204  func (x *HttpRoute) GetName() string {
   205  	if x != nil {
   206  		return x.Name
   207  	}
   208  	return ""
   209  }
   210  
   211  func (x *HttpRoute) GetSelfLink() string {
   212  	if x != nil {
   213  		return x.SelfLink
   214  	}
   215  	return ""
   216  }
   217  
   218  func (x *HttpRoute) GetDescription() string {
   219  	if x != nil {
   220  		return x.Description
   221  	}
   222  	return ""
   223  }
   224  
   225  func (x *HttpRoute) GetCreateTime() *timestamppb.Timestamp {
   226  	if x != nil {
   227  		return x.CreateTime
   228  	}
   229  	return nil
   230  }
   231  
   232  func (x *HttpRoute) GetUpdateTime() *timestamppb.Timestamp {
   233  	if x != nil {
   234  		return x.UpdateTime
   235  	}
   236  	return nil
   237  }
   238  
   239  func (x *HttpRoute) GetHostnames() []string {
   240  	if x != nil {
   241  		return x.Hostnames
   242  	}
   243  	return nil
   244  }
   245  
   246  func (x *HttpRoute) GetMeshes() []string {
   247  	if x != nil {
   248  		return x.Meshes
   249  	}
   250  	return nil
   251  }
   252  
   253  func (x *HttpRoute) GetGateways() []string {
   254  	if x != nil {
   255  		return x.Gateways
   256  	}
   257  	return nil
   258  }
   259  
   260  func (x *HttpRoute) GetLabels() map[string]string {
   261  	if x != nil {
   262  		return x.Labels
   263  	}
   264  	return nil
   265  }
   266  
   267  func (x *HttpRoute) GetRules() []*HttpRoute_RouteRule {
   268  	if x != nil {
   269  		return x.Rules
   270  	}
   271  	return nil
   272  }
   273  
   274  // Request used with the ListHttpRoutes method.
   275  type ListHttpRoutesRequest struct {
   276  	state         protoimpl.MessageState
   277  	sizeCache     protoimpl.SizeCache
   278  	unknownFields protoimpl.UnknownFields
   279  
   280  	// Required. The project and location from which the HttpRoutes should be
   281  	// listed, specified in the format `projects/*/locations/global`.
   282  	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
   283  	// Maximum number of HttpRoutes to return per call.
   284  	PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
   285  	// The value returned by the last `ListHttpRoutesResponse`
   286  	// Indicates that this is a continuation of a prior `ListHttpRoutes` call,
   287  	// and that the system should return the next page of data.
   288  	PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
   289  }
   290  
   291  func (x *ListHttpRoutesRequest) Reset() {
   292  	*x = ListHttpRoutesRequest{}
   293  	if protoimpl.UnsafeEnabled {
   294  		mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[1]
   295  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   296  		ms.StoreMessageInfo(mi)
   297  	}
   298  }
   299  
   300  func (x *ListHttpRoutesRequest) String() string {
   301  	return protoimpl.X.MessageStringOf(x)
   302  }
   303  
   304  func (*ListHttpRoutesRequest) ProtoMessage() {}
   305  
   306  func (x *ListHttpRoutesRequest) ProtoReflect() protoreflect.Message {
   307  	mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[1]
   308  	if protoimpl.UnsafeEnabled && x != nil {
   309  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   310  		if ms.LoadMessageInfo() == nil {
   311  			ms.StoreMessageInfo(mi)
   312  		}
   313  		return ms
   314  	}
   315  	return mi.MessageOf(x)
   316  }
   317  
   318  // Deprecated: Use ListHttpRoutesRequest.ProtoReflect.Descriptor instead.
   319  func (*ListHttpRoutesRequest) Descriptor() ([]byte, []int) {
   320  	return file_google_cloud_networkservices_v1_http_route_proto_rawDescGZIP(), []int{1}
   321  }
   322  
   323  func (x *ListHttpRoutesRequest) GetParent() string {
   324  	if x != nil {
   325  		return x.Parent
   326  	}
   327  	return ""
   328  }
   329  
   330  func (x *ListHttpRoutesRequest) GetPageSize() int32 {
   331  	if x != nil {
   332  		return x.PageSize
   333  	}
   334  	return 0
   335  }
   336  
   337  func (x *ListHttpRoutesRequest) GetPageToken() string {
   338  	if x != nil {
   339  		return x.PageToken
   340  	}
   341  	return ""
   342  }
   343  
   344  // Response returned by the ListHttpRoutes method.
   345  type ListHttpRoutesResponse struct {
   346  	state         protoimpl.MessageState
   347  	sizeCache     protoimpl.SizeCache
   348  	unknownFields protoimpl.UnknownFields
   349  
   350  	// List of HttpRoute resources.
   351  	HttpRoutes []*HttpRoute `protobuf:"bytes,1,rep,name=http_routes,json=httpRoutes,proto3" json:"http_routes,omitempty"`
   352  	// If there might be more results than those appearing in this response, then
   353  	// `next_page_token` is included. To get the next set of results, call this
   354  	// method again using the value of `next_page_token` as `page_token`.
   355  	NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
   356  }
   357  
   358  func (x *ListHttpRoutesResponse) Reset() {
   359  	*x = ListHttpRoutesResponse{}
   360  	if protoimpl.UnsafeEnabled {
   361  		mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[2]
   362  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   363  		ms.StoreMessageInfo(mi)
   364  	}
   365  }
   366  
   367  func (x *ListHttpRoutesResponse) String() string {
   368  	return protoimpl.X.MessageStringOf(x)
   369  }
   370  
   371  func (*ListHttpRoutesResponse) ProtoMessage() {}
   372  
   373  func (x *ListHttpRoutesResponse) ProtoReflect() protoreflect.Message {
   374  	mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[2]
   375  	if protoimpl.UnsafeEnabled && x != nil {
   376  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   377  		if ms.LoadMessageInfo() == nil {
   378  			ms.StoreMessageInfo(mi)
   379  		}
   380  		return ms
   381  	}
   382  	return mi.MessageOf(x)
   383  }
   384  
   385  // Deprecated: Use ListHttpRoutesResponse.ProtoReflect.Descriptor instead.
   386  func (*ListHttpRoutesResponse) Descriptor() ([]byte, []int) {
   387  	return file_google_cloud_networkservices_v1_http_route_proto_rawDescGZIP(), []int{2}
   388  }
   389  
   390  func (x *ListHttpRoutesResponse) GetHttpRoutes() []*HttpRoute {
   391  	if x != nil {
   392  		return x.HttpRoutes
   393  	}
   394  	return nil
   395  }
   396  
   397  func (x *ListHttpRoutesResponse) GetNextPageToken() string {
   398  	if x != nil {
   399  		return x.NextPageToken
   400  	}
   401  	return ""
   402  }
   403  
   404  // Request used by the GetHttpRoute method.
   405  type GetHttpRouteRequest struct {
   406  	state         protoimpl.MessageState
   407  	sizeCache     protoimpl.SizeCache
   408  	unknownFields protoimpl.UnknownFields
   409  
   410  	// Required. A name of the HttpRoute to get. Must be in the format
   411  	// `projects/*/locations/global/httpRoutes/*`.
   412  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
   413  }
   414  
   415  func (x *GetHttpRouteRequest) Reset() {
   416  	*x = GetHttpRouteRequest{}
   417  	if protoimpl.UnsafeEnabled {
   418  		mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[3]
   419  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   420  		ms.StoreMessageInfo(mi)
   421  	}
   422  }
   423  
   424  func (x *GetHttpRouteRequest) String() string {
   425  	return protoimpl.X.MessageStringOf(x)
   426  }
   427  
   428  func (*GetHttpRouteRequest) ProtoMessage() {}
   429  
   430  func (x *GetHttpRouteRequest) ProtoReflect() protoreflect.Message {
   431  	mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[3]
   432  	if protoimpl.UnsafeEnabled && x != nil {
   433  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   434  		if ms.LoadMessageInfo() == nil {
   435  			ms.StoreMessageInfo(mi)
   436  		}
   437  		return ms
   438  	}
   439  	return mi.MessageOf(x)
   440  }
   441  
   442  // Deprecated: Use GetHttpRouteRequest.ProtoReflect.Descriptor instead.
   443  func (*GetHttpRouteRequest) Descriptor() ([]byte, []int) {
   444  	return file_google_cloud_networkservices_v1_http_route_proto_rawDescGZIP(), []int{3}
   445  }
   446  
   447  func (x *GetHttpRouteRequest) GetName() string {
   448  	if x != nil {
   449  		return x.Name
   450  	}
   451  	return ""
   452  }
   453  
   454  // Request used by the HttpRoute method.
   455  type CreateHttpRouteRequest struct {
   456  	state         protoimpl.MessageState
   457  	sizeCache     protoimpl.SizeCache
   458  	unknownFields protoimpl.UnknownFields
   459  
   460  	// Required. The parent resource of the HttpRoute. Must be in the
   461  	// format `projects/*/locations/global`.
   462  	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
   463  	// Required. Short name of the HttpRoute resource to be created.
   464  	HttpRouteId string `protobuf:"bytes,2,opt,name=http_route_id,json=httpRouteId,proto3" json:"http_route_id,omitempty"`
   465  	// Required. HttpRoute resource to be created.
   466  	HttpRoute *HttpRoute `protobuf:"bytes,3,opt,name=http_route,json=httpRoute,proto3" json:"http_route,omitempty"`
   467  }
   468  
   469  func (x *CreateHttpRouteRequest) Reset() {
   470  	*x = CreateHttpRouteRequest{}
   471  	if protoimpl.UnsafeEnabled {
   472  		mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[4]
   473  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   474  		ms.StoreMessageInfo(mi)
   475  	}
   476  }
   477  
   478  func (x *CreateHttpRouteRequest) String() string {
   479  	return protoimpl.X.MessageStringOf(x)
   480  }
   481  
   482  func (*CreateHttpRouteRequest) ProtoMessage() {}
   483  
   484  func (x *CreateHttpRouteRequest) ProtoReflect() protoreflect.Message {
   485  	mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[4]
   486  	if protoimpl.UnsafeEnabled && x != nil {
   487  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   488  		if ms.LoadMessageInfo() == nil {
   489  			ms.StoreMessageInfo(mi)
   490  		}
   491  		return ms
   492  	}
   493  	return mi.MessageOf(x)
   494  }
   495  
   496  // Deprecated: Use CreateHttpRouteRequest.ProtoReflect.Descriptor instead.
   497  func (*CreateHttpRouteRequest) Descriptor() ([]byte, []int) {
   498  	return file_google_cloud_networkservices_v1_http_route_proto_rawDescGZIP(), []int{4}
   499  }
   500  
   501  func (x *CreateHttpRouteRequest) GetParent() string {
   502  	if x != nil {
   503  		return x.Parent
   504  	}
   505  	return ""
   506  }
   507  
   508  func (x *CreateHttpRouteRequest) GetHttpRouteId() string {
   509  	if x != nil {
   510  		return x.HttpRouteId
   511  	}
   512  	return ""
   513  }
   514  
   515  func (x *CreateHttpRouteRequest) GetHttpRoute() *HttpRoute {
   516  	if x != nil {
   517  		return x.HttpRoute
   518  	}
   519  	return nil
   520  }
   521  
   522  // Request used by the UpdateHttpRoute method.
   523  type UpdateHttpRouteRequest struct {
   524  	state         protoimpl.MessageState
   525  	sizeCache     protoimpl.SizeCache
   526  	unknownFields protoimpl.UnknownFields
   527  
   528  	// Optional. Field mask is used to specify the fields to be overwritten in the
   529  	// HttpRoute resource by the update.
   530  	// The fields specified in the update_mask are relative to the resource, not
   531  	// the full request. A field will be overwritten if it is in the mask. If the
   532  	// user does not provide a mask then all fields will be overwritten.
   533  	UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,1,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
   534  	// Required. Updated HttpRoute resource.
   535  	HttpRoute *HttpRoute `protobuf:"bytes,2,opt,name=http_route,json=httpRoute,proto3" json:"http_route,omitempty"`
   536  }
   537  
   538  func (x *UpdateHttpRouteRequest) Reset() {
   539  	*x = UpdateHttpRouteRequest{}
   540  	if protoimpl.UnsafeEnabled {
   541  		mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[5]
   542  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   543  		ms.StoreMessageInfo(mi)
   544  	}
   545  }
   546  
   547  func (x *UpdateHttpRouteRequest) String() string {
   548  	return protoimpl.X.MessageStringOf(x)
   549  }
   550  
   551  func (*UpdateHttpRouteRequest) ProtoMessage() {}
   552  
   553  func (x *UpdateHttpRouteRequest) ProtoReflect() protoreflect.Message {
   554  	mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[5]
   555  	if protoimpl.UnsafeEnabled && x != nil {
   556  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   557  		if ms.LoadMessageInfo() == nil {
   558  			ms.StoreMessageInfo(mi)
   559  		}
   560  		return ms
   561  	}
   562  	return mi.MessageOf(x)
   563  }
   564  
   565  // Deprecated: Use UpdateHttpRouteRequest.ProtoReflect.Descriptor instead.
   566  func (*UpdateHttpRouteRequest) Descriptor() ([]byte, []int) {
   567  	return file_google_cloud_networkservices_v1_http_route_proto_rawDescGZIP(), []int{5}
   568  }
   569  
   570  func (x *UpdateHttpRouteRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
   571  	if x != nil {
   572  		return x.UpdateMask
   573  	}
   574  	return nil
   575  }
   576  
   577  func (x *UpdateHttpRouteRequest) GetHttpRoute() *HttpRoute {
   578  	if x != nil {
   579  		return x.HttpRoute
   580  	}
   581  	return nil
   582  }
   583  
   584  // Request used by the DeleteHttpRoute method.
   585  type DeleteHttpRouteRequest struct {
   586  	state         protoimpl.MessageState
   587  	sizeCache     protoimpl.SizeCache
   588  	unknownFields protoimpl.UnknownFields
   589  
   590  	// Required. A name of the HttpRoute to delete. Must be in the format
   591  	// `projects/*/locations/global/httpRoutes/*`.
   592  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
   593  }
   594  
   595  func (x *DeleteHttpRouteRequest) Reset() {
   596  	*x = DeleteHttpRouteRequest{}
   597  	if protoimpl.UnsafeEnabled {
   598  		mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[6]
   599  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   600  		ms.StoreMessageInfo(mi)
   601  	}
   602  }
   603  
   604  func (x *DeleteHttpRouteRequest) String() string {
   605  	return protoimpl.X.MessageStringOf(x)
   606  }
   607  
   608  func (*DeleteHttpRouteRequest) ProtoMessage() {}
   609  
   610  func (x *DeleteHttpRouteRequest) ProtoReflect() protoreflect.Message {
   611  	mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[6]
   612  	if protoimpl.UnsafeEnabled && x != nil {
   613  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   614  		if ms.LoadMessageInfo() == nil {
   615  			ms.StoreMessageInfo(mi)
   616  		}
   617  		return ms
   618  	}
   619  	return mi.MessageOf(x)
   620  }
   621  
   622  // Deprecated: Use DeleteHttpRouteRequest.ProtoReflect.Descriptor instead.
   623  func (*DeleteHttpRouteRequest) Descriptor() ([]byte, []int) {
   624  	return file_google_cloud_networkservices_v1_http_route_proto_rawDescGZIP(), []int{6}
   625  }
   626  
   627  func (x *DeleteHttpRouteRequest) GetName() string {
   628  	if x != nil {
   629  		return x.Name
   630  	}
   631  	return ""
   632  }
   633  
   634  // Specifies how to select a route rule based on HTTP request headers.
   635  type HttpRoute_HeaderMatch struct {
   636  	state         protoimpl.MessageState
   637  	sizeCache     protoimpl.SizeCache
   638  	unknownFields protoimpl.UnknownFields
   639  
   640  	// Types that are assignable to MatchType:
   641  	//	*HttpRoute_HeaderMatch_ExactMatch
   642  	//	*HttpRoute_HeaderMatch_RegexMatch
   643  	//	*HttpRoute_HeaderMatch_PrefixMatch
   644  	//	*HttpRoute_HeaderMatch_PresentMatch
   645  	//	*HttpRoute_HeaderMatch_SuffixMatch
   646  	//	*HttpRoute_HeaderMatch_RangeMatch
   647  	MatchType isHttpRoute_HeaderMatch_MatchType `protobuf_oneof:"MatchType"`
   648  	// The name of the HTTP header to match against.
   649  	Header string `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"`
   650  	// If specified, the match result will be inverted before checking. Default
   651  	// value is set to false.
   652  	InvertMatch bool `protobuf:"varint,8,opt,name=invert_match,json=invertMatch,proto3" json:"invert_match,omitempty"`
   653  }
   654  
   655  func (x *HttpRoute_HeaderMatch) Reset() {
   656  	*x = HttpRoute_HeaderMatch{}
   657  	if protoimpl.UnsafeEnabled {
   658  		mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[7]
   659  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   660  		ms.StoreMessageInfo(mi)
   661  	}
   662  }
   663  
   664  func (x *HttpRoute_HeaderMatch) String() string {
   665  	return protoimpl.X.MessageStringOf(x)
   666  }
   667  
   668  func (*HttpRoute_HeaderMatch) ProtoMessage() {}
   669  
   670  func (x *HttpRoute_HeaderMatch) ProtoReflect() protoreflect.Message {
   671  	mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[7]
   672  	if protoimpl.UnsafeEnabled && x != nil {
   673  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   674  		if ms.LoadMessageInfo() == nil {
   675  			ms.StoreMessageInfo(mi)
   676  		}
   677  		return ms
   678  	}
   679  	return mi.MessageOf(x)
   680  }
   681  
   682  // Deprecated: Use HttpRoute_HeaderMatch.ProtoReflect.Descriptor instead.
   683  func (*HttpRoute_HeaderMatch) Descriptor() ([]byte, []int) {
   684  	return file_google_cloud_networkservices_v1_http_route_proto_rawDescGZIP(), []int{0, 0}
   685  }
   686  
   687  func (m *HttpRoute_HeaderMatch) GetMatchType() isHttpRoute_HeaderMatch_MatchType {
   688  	if m != nil {
   689  		return m.MatchType
   690  	}
   691  	return nil
   692  }
   693  
   694  func (x *HttpRoute_HeaderMatch) GetExactMatch() string {
   695  	if x, ok := x.GetMatchType().(*HttpRoute_HeaderMatch_ExactMatch); ok {
   696  		return x.ExactMatch
   697  	}
   698  	return ""
   699  }
   700  
   701  func (x *HttpRoute_HeaderMatch) GetRegexMatch() string {
   702  	if x, ok := x.GetMatchType().(*HttpRoute_HeaderMatch_RegexMatch); ok {
   703  		return x.RegexMatch
   704  	}
   705  	return ""
   706  }
   707  
   708  func (x *HttpRoute_HeaderMatch) GetPrefixMatch() string {
   709  	if x, ok := x.GetMatchType().(*HttpRoute_HeaderMatch_PrefixMatch); ok {
   710  		return x.PrefixMatch
   711  	}
   712  	return ""
   713  }
   714  
   715  func (x *HttpRoute_HeaderMatch) GetPresentMatch() bool {
   716  	if x, ok := x.GetMatchType().(*HttpRoute_HeaderMatch_PresentMatch); ok {
   717  		return x.PresentMatch
   718  	}
   719  	return false
   720  }
   721  
   722  func (x *HttpRoute_HeaderMatch) GetSuffixMatch() string {
   723  	if x, ok := x.GetMatchType().(*HttpRoute_HeaderMatch_SuffixMatch); ok {
   724  		return x.SuffixMatch
   725  	}
   726  	return ""
   727  }
   728  
   729  func (x *HttpRoute_HeaderMatch) GetRangeMatch() *HttpRoute_HeaderMatch_IntegerRange {
   730  	if x, ok := x.GetMatchType().(*HttpRoute_HeaderMatch_RangeMatch); ok {
   731  		return x.RangeMatch
   732  	}
   733  	return nil
   734  }
   735  
   736  func (x *HttpRoute_HeaderMatch) GetHeader() string {
   737  	if x != nil {
   738  		return x.Header
   739  	}
   740  	return ""
   741  }
   742  
   743  func (x *HttpRoute_HeaderMatch) GetInvertMatch() bool {
   744  	if x != nil {
   745  		return x.InvertMatch
   746  	}
   747  	return false
   748  }
   749  
   750  type isHttpRoute_HeaderMatch_MatchType interface {
   751  	isHttpRoute_HeaderMatch_MatchType()
   752  }
   753  
   754  type HttpRoute_HeaderMatch_ExactMatch struct {
   755  	// The value of the header should match exactly the content of
   756  	// exact_match.
   757  	ExactMatch string `protobuf:"bytes,2,opt,name=exact_match,json=exactMatch,proto3,oneof"`
   758  }
   759  
   760  type HttpRoute_HeaderMatch_RegexMatch struct {
   761  	// The value of the header must match the regular expression specified in
   762  	// regex_match. For regular expression grammar, please see:
   763  	// https://github.com/google/re2/wiki/Syntax
   764  	RegexMatch string `protobuf:"bytes,3,opt,name=regex_match,json=regexMatch,proto3,oneof"`
   765  }
   766  
   767  type HttpRoute_HeaderMatch_PrefixMatch struct {
   768  	// The value of the header must start with the contents of prefix_match.
   769  	PrefixMatch string `protobuf:"bytes,4,opt,name=prefix_match,json=prefixMatch,proto3,oneof"`
   770  }
   771  
   772  type HttpRoute_HeaderMatch_PresentMatch struct {
   773  	// A header with header_name must exist. The match takes place whether or
   774  	// not the header has a value.
   775  	PresentMatch bool `protobuf:"varint,5,opt,name=present_match,json=presentMatch,proto3,oneof"`
   776  }
   777  
   778  type HttpRoute_HeaderMatch_SuffixMatch struct {
   779  	// The value of the header must end with the contents of suffix_match.
   780  	SuffixMatch string `protobuf:"bytes,6,opt,name=suffix_match,json=suffixMatch,proto3,oneof"`
   781  }
   782  
   783  type HttpRoute_HeaderMatch_RangeMatch struct {
   784  	// If specified, the rule will match if the request header value is within
   785  	// the range.
   786  	RangeMatch *HttpRoute_HeaderMatch_IntegerRange `protobuf:"bytes,7,opt,name=range_match,json=rangeMatch,proto3,oneof"`
   787  }
   788  
   789  func (*HttpRoute_HeaderMatch_ExactMatch) isHttpRoute_HeaderMatch_MatchType() {}
   790  
   791  func (*HttpRoute_HeaderMatch_RegexMatch) isHttpRoute_HeaderMatch_MatchType() {}
   792  
   793  func (*HttpRoute_HeaderMatch_PrefixMatch) isHttpRoute_HeaderMatch_MatchType() {}
   794  
   795  func (*HttpRoute_HeaderMatch_PresentMatch) isHttpRoute_HeaderMatch_MatchType() {}
   796  
   797  func (*HttpRoute_HeaderMatch_SuffixMatch) isHttpRoute_HeaderMatch_MatchType() {}
   798  
   799  func (*HttpRoute_HeaderMatch_RangeMatch) isHttpRoute_HeaderMatch_MatchType() {}
   800  
   801  // Specifications to match a query parameter in the request.
   802  type HttpRoute_QueryParameterMatch struct {
   803  	state         protoimpl.MessageState
   804  	sizeCache     protoimpl.SizeCache
   805  	unknownFields protoimpl.UnknownFields
   806  
   807  	// Types that are assignable to MatchType:
   808  	//	*HttpRoute_QueryParameterMatch_ExactMatch
   809  	//	*HttpRoute_QueryParameterMatch_RegexMatch
   810  	//	*HttpRoute_QueryParameterMatch_PresentMatch
   811  	MatchType isHttpRoute_QueryParameterMatch_MatchType `protobuf_oneof:"MatchType"`
   812  	// The name of the query parameter to match.
   813  	QueryParameter string `protobuf:"bytes,1,opt,name=query_parameter,json=queryParameter,proto3" json:"query_parameter,omitempty"`
   814  }
   815  
   816  func (x *HttpRoute_QueryParameterMatch) Reset() {
   817  	*x = HttpRoute_QueryParameterMatch{}
   818  	if protoimpl.UnsafeEnabled {
   819  		mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[8]
   820  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   821  		ms.StoreMessageInfo(mi)
   822  	}
   823  }
   824  
   825  func (x *HttpRoute_QueryParameterMatch) String() string {
   826  	return protoimpl.X.MessageStringOf(x)
   827  }
   828  
   829  func (*HttpRoute_QueryParameterMatch) ProtoMessage() {}
   830  
   831  func (x *HttpRoute_QueryParameterMatch) ProtoReflect() protoreflect.Message {
   832  	mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[8]
   833  	if protoimpl.UnsafeEnabled && x != nil {
   834  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   835  		if ms.LoadMessageInfo() == nil {
   836  			ms.StoreMessageInfo(mi)
   837  		}
   838  		return ms
   839  	}
   840  	return mi.MessageOf(x)
   841  }
   842  
   843  // Deprecated: Use HttpRoute_QueryParameterMatch.ProtoReflect.Descriptor instead.
   844  func (*HttpRoute_QueryParameterMatch) Descriptor() ([]byte, []int) {
   845  	return file_google_cloud_networkservices_v1_http_route_proto_rawDescGZIP(), []int{0, 1}
   846  }
   847  
   848  func (m *HttpRoute_QueryParameterMatch) GetMatchType() isHttpRoute_QueryParameterMatch_MatchType {
   849  	if m != nil {
   850  		return m.MatchType
   851  	}
   852  	return nil
   853  }
   854  
   855  func (x *HttpRoute_QueryParameterMatch) GetExactMatch() string {
   856  	if x, ok := x.GetMatchType().(*HttpRoute_QueryParameterMatch_ExactMatch); ok {
   857  		return x.ExactMatch
   858  	}
   859  	return ""
   860  }
   861  
   862  func (x *HttpRoute_QueryParameterMatch) GetRegexMatch() string {
   863  	if x, ok := x.GetMatchType().(*HttpRoute_QueryParameterMatch_RegexMatch); ok {
   864  		return x.RegexMatch
   865  	}
   866  	return ""
   867  }
   868  
   869  func (x *HttpRoute_QueryParameterMatch) GetPresentMatch() bool {
   870  	if x, ok := x.GetMatchType().(*HttpRoute_QueryParameterMatch_PresentMatch); ok {
   871  		return x.PresentMatch
   872  	}
   873  	return false
   874  }
   875  
   876  func (x *HttpRoute_QueryParameterMatch) GetQueryParameter() string {
   877  	if x != nil {
   878  		return x.QueryParameter
   879  	}
   880  	return ""
   881  }
   882  
   883  type isHttpRoute_QueryParameterMatch_MatchType interface {
   884  	isHttpRoute_QueryParameterMatch_MatchType()
   885  }
   886  
   887  type HttpRoute_QueryParameterMatch_ExactMatch struct {
   888  	// The value of the query parameter must exactly match the contents of
   889  	// exact_match.
   890  	//
   891  	// Only one of exact_match, regex_match, or present_match must be set.
   892  	ExactMatch string `protobuf:"bytes,2,opt,name=exact_match,json=exactMatch,proto3,oneof"`
   893  }
   894  
   895  type HttpRoute_QueryParameterMatch_RegexMatch struct {
   896  	// The value of the query parameter must match the regular expression
   897  	// specified by regex_match. For regular expression grammar, please see
   898  	// https://github.com/google/re2/wiki/Syntax
   899  	//
   900  	// Only one of exact_match, regex_match, or present_match must be set.
   901  	RegexMatch string `protobuf:"bytes,3,opt,name=regex_match,json=regexMatch,proto3,oneof"`
   902  }
   903  
   904  type HttpRoute_QueryParameterMatch_PresentMatch struct {
   905  	// Specifies that the QueryParameterMatcher matches if request contains
   906  	// query parameter, irrespective of whether the parameter has a value or
   907  	// not.
   908  	//
   909  	// Only one of exact_match, regex_match, or present_match must be set.
   910  	PresentMatch bool `protobuf:"varint,4,opt,name=present_match,json=presentMatch,proto3,oneof"`
   911  }
   912  
   913  func (*HttpRoute_QueryParameterMatch_ExactMatch) isHttpRoute_QueryParameterMatch_MatchType() {}
   914  
   915  func (*HttpRoute_QueryParameterMatch_RegexMatch) isHttpRoute_QueryParameterMatch_MatchType() {}
   916  
   917  func (*HttpRoute_QueryParameterMatch_PresentMatch) isHttpRoute_QueryParameterMatch_MatchType() {}
   918  
   919  // RouteMatch defines specifications used to match requests. If multiple match
   920  // types are set, this RouteMatch will match if ALL type of matches are
   921  // matched.
   922  type HttpRoute_RouteMatch struct {
   923  	state         protoimpl.MessageState
   924  	sizeCache     protoimpl.SizeCache
   925  	unknownFields protoimpl.UnknownFields
   926  
   927  	// Types that are assignable to PathMatch:
   928  	//	*HttpRoute_RouteMatch_FullPathMatch
   929  	//	*HttpRoute_RouteMatch_PrefixMatch
   930  	//	*HttpRoute_RouteMatch_RegexMatch
   931  	PathMatch isHttpRoute_RouteMatch_PathMatch `protobuf_oneof:"PathMatch"`
   932  	// Specifies if prefix_match and full_path_match matches are case sensitive.
   933  	// The default value is false.
   934  	IgnoreCase bool `protobuf:"varint,4,opt,name=ignore_case,json=ignoreCase,proto3" json:"ignore_case,omitempty"`
   935  	// Specifies a list of HTTP request headers to match against. ALL of the
   936  	// supplied headers must be matched.
   937  	Headers []*HttpRoute_HeaderMatch `protobuf:"bytes,5,rep,name=headers,proto3" json:"headers,omitempty"`
   938  	// Specifies a list of query parameters to match against. ALL of the query
   939  	// parameters must be matched.
   940  	QueryParameters []*HttpRoute_QueryParameterMatch `protobuf:"bytes,6,rep,name=query_parameters,json=queryParameters,proto3" json:"query_parameters,omitempty"`
   941  }
   942  
   943  func (x *HttpRoute_RouteMatch) Reset() {
   944  	*x = HttpRoute_RouteMatch{}
   945  	if protoimpl.UnsafeEnabled {
   946  		mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[9]
   947  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   948  		ms.StoreMessageInfo(mi)
   949  	}
   950  }
   951  
   952  func (x *HttpRoute_RouteMatch) String() string {
   953  	return protoimpl.X.MessageStringOf(x)
   954  }
   955  
   956  func (*HttpRoute_RouteMatch) ProtoMessage() {}
   957  
   958  func (x *HttpRoute_RouteMatch) ProtoReflect() protoreflect.Message {
   959  	mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[9]
   960  	if protoimpl.UnsafeEnabled && x != nil {
   961  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   962  		if ms.LoadMessageInfo() == nil {
   963  			ms.StoreMessageInfo(mi)
   964  		}
   965  		return ms
   966  	}
   967  	return mi.MessageOf(x)
   968  }
   969  
   970  // Deprecated: Use HttpRoute_RouteMatch.ProtoReflect.Descriptor instead.
   971  func (*HttpRoute_RouteMatch) Descriptor() ([]byte, []int) {
   972  	return file_google_cloud_networkservices_v1_http_route_proto_rawDescGZIP(), []int{0, 2}
   973  }
   974  
   975  func (m *HttpRoute_RouteMatch) GetPathMatch() isHttpRoute_RouteMatch_PathMatch {
   976  	if m != nil {
   977  		return m.PathMatch
   978  	}
   979  	return nil
   980  }
   981  
   982  func (x *HttpRoute_RouteMatch) GetFullPathMatch() string {
   983  	if x, ok := x.GetPathMatch().(*HttpRoute_RouteMatch_FullPathMatch); ok {
   984  		return x.FullPathMatch
   985  	}
   986  	return ""
   987  }
   988  
   989  func (x *HttpRoute_RouteMatch) GetPrefixMatch() string {
   990  	if x, ok := x.GetPathMatch().(*HttpRoute_RouteMatch_PrefixMatch); ok {
   991  		return x.PrefixMatch
   992  	}
   993  	return ""
   994  }
   995  
   996  func (x *HttpRoute_RouteMatch) GetRegexMatch() string {
   997  	if x, ok := x.GetPathMatch().(*HttpRoute_RouteMatch_RegexMatch); ok {
   998  		return x.RegexMatch
   999  	}
  1000  	return ""
  1001  }
  1002  
  1003  func (x *HttpRoute_RouteMatch) GetIgnoreCase() bool {
  1004  	if x != nil {
  1005  		return x.IgnoreCase
  1006  	}
  1007  	return false
  1008  }
  1009  
  1010  func (x *HttpRoute_RouteMatch) GetHeaders() []*HttpRoute_HeaderMatch {
  1011  	if x != nil {
  1012  		return x.Headers
  1013  	}
  1014  	return nil
  1015  }
  1016  
  1017  func (x *HttpRoute_RouteMatch) GetQueryParameters() []*HttpRoute_QueryParameterMatch {
  1018  	if x != nil {
  1019  		return x.QueryParameters
  1020  	}
  1021  	return nil
  1022  }
  1023  
  1024  type isHttpRoute_RouteMatch_PathMatch interface {
  1025  	isHttpRoute_RouteMatch_PathMatch()
  1026  }
  1027  
  1028  type HttpRoute_RouteMatch_FullPathMatch struct {
  1029  	// The HTTP request path value should exactly match this value.
  1030  	//
  1031  	// Only one of full_path_match, prefix_match, or regex_match should be
  1032  	// used.
  1033  	FullPathMatch string `protobuf:"bytes,1,opt,name=full_path_match,json=fullPathMatch,proto3,oneof"`
  1034  }
  1035  
  1036  type HttpRoute_RouteMatch_PrefixMatch struct {
  1037  	// The HTTP request path value must begin with specified prefix_match.
  1038  	// prefix_match must begin with a /.
  1039  	//
  1040  	// Only one of full_path_match, prefix_match, or regex_match should be
  1041  	// used.
  1042  	PrefixMatch string `protobuf:"bytes,2,opt,name=prefix_match,json=prefixMatch,proto3,oneof"`
  1043  }
  1044  
  1045  type HttpRoute_RouteMatch_RegexMatch struct {
  1046  	// The HTTP request path value must satisfy the regular expression
  1047  	// specified by regex_match after removing any query parameters and anchor
  1048  	// supplied with the original URL. For regular expression grammar, please
  1049  	// see https://github.com/google/re2/wiki/Syntax
  1050  	//
  1051  	// Only one of full_path_match, prefix_match, or regex_match should be
  1052  	// used.
  1053  	RegexMatch string `protobuf:"bytes,3,opt,name=regex_match,json=regexMatch,proto3,oneof"`
  1054  }
  1055  
  1056  func (*HttpRoute_RouteMatch_FullPathMatch) isHttpRoute_RouteMatch_PathMatch() {}
  1057  
  1058  func (*HttpRoute_RouteMatch_PrefixMatch) isHttpRoute_RouteMatch_PathMatch() {}
  1059  
  1060  func (*HttpRoute_RouteMatch_RegexMatch) isHttpRoute_RouteMatch_PathMatch() {}
  1061  
  1062  // Specifications of a destination to which the request should be routed to.
  1063  type HttpRoute_Destination struct {
  1064  	state         protoimpl.MessageState
  1065  	sizeCache     protoimpl.SizeCache
  1066  	unknownFields protoimpl.UnknownFields
  1067  
  1068  	// The URL of a BackendService to route traffic to.
  1069  	ServiceName string `protobuf:"bytes,1,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty"`
  1070  	// Specifies the proportion of requests forwarded to the backend referenced
  1071  	// by the serviceName field. This is computed as:
  1072  	//         weight/Sum(weights in this destination list).
  1073  	// For non-zero values, there may be some epsilon from the exact proportion
  1074  	// defined here depending on the precision an implementation supports.
  1075  	//
  1076  	// If only one serviceName is specified and it has a weight greater than 0,
  1077  	// 100% of the traffic is forwarded to that backend.
  1078  	//
  1079  	// If weights are specified for any one service name, they need to be
  1080  	// specified for all of them.
  1081  	//
  1082  	// If weights are unspecified for all services, then, traffic is distributed
  1083  	// in equal proportions to all of them.
  1084  	Weight int32 `protobuf:"varint,2,opt,name=weight,proto3" json:"weight,omitempty"`
  1085  }
  1086  
  1087  func (x *HttpRoute_Destination) Reset() {
  1088  	*x = HttpRoute_Destination{}
  1089  	if protoimpl.UnsafeEnabled {
  1090  		mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[10]
  1091  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1092  		ms.StoreMessageInfo(mi)
  1093  	}
  1094  }
  1095  
  1096  func (x *HttpRoute_Destination) String() string {
  1097  	return protoimpl.X.MessageStringOf(x)
  1098  }
  1099  
  1100  func (*HttpRoute_Destination) ProtoMessage() {}
  1101  
  1102  func (x *HttpRoute_Destination) ProtoReflect() protoreflect.Message {
  1103  	mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[10]
  1104  	if protoimpl.UnsafeEnabled && x != nil {
  1105  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1106  		if ms.LoadMessageInfo() == nil {
  1107  			ms.StoreMessageInfo(mi)
  1108  		}
  1109  		return ms
  1110  	}
  1111  	return mi.MessageOf(x)
  1112  }
  1113  
  1114  // Deprecated: Use HttpRoute_Destination.ProtoReflect.Descriptor instead.
  1115  func (*HttpRoute_Destination) Descriptor() ([]byte, []int) {
  1116  	return file_google_cloud_networkservices_v1_http_route_proto_rawDescGZIP(), []int{0, 3}
  1117  }
  1118  
  1119  func (x *HttpRoute_Destination) GetServiceName() string {
  1120  	if x != nil {
  1121  		return x.ServiceName
  1122  	}
  1123  	return ""
  1124  }
  1125  
  1126  func (x *HttpRoute_Destination) GetWeight() int32 {
  1127  	if x != nil {
  1128  		return x.Weight
  1129  	}
  1130  	return 0
  1131  }
  1132  
  1133  // The specification for redirecting traffic.
  1134  type HttpRoute_Redirect struct {
  1135  	state         protoimpl.MessageState
  1136  	sizeCache     protoimpl.SizeCache
  1137  	unknownFields protoimpl.UnknownFields
  1138  
  1139  	// The host that will be used in the redirect response instead of the one
  1140  	// that was supplied in the request.
  1141  	HostRedirect string `protobuf:"bytes,1,opt,name=host_redirect,json=hostRedirect,proto3" json:"host_redirect,omitempty"`
  1142  	// The path that will be used in the redirect response instead of the one
  1143  	// that was supplied in the request.
  1144  	// path_redirect can not be supplied together with prefix_redirect. Supply
  1145  	// one alone or neither. If neither is supplied, the path of the original
  1146  	// request will be used for the redirect.
  1147  	PathRedirect string `protobuf:"bytes,2,opt,name=path_redirect,json=pathRedirect,proto3" json:"path_redirect,omitempty"`
  1148  	// Indicates that during redirection, the matched prefix (or path) should be
  1149  	// swapped with this value. This option allows URLs be dynamically created
  1150  	// based on the request.
  1151  	PrefixRewrite string `protobuf:"bytes,3,opt,name=prefix_rewrite,json=prefixRewrite,proto3" json:"prefix_rewrite,omitempty"`
  1152  	// The HTTP Status code to use for the redirect.
  1153  	ResponseCode HttpRoute_Redirect_ResponseCode `protobuf:"varint,4,opt,name=response_code,json=responseCode,proto3,enum=google.cloud.networkservices.v1.HttpRoute_Redirect_ResponseCode" json:"response_code,omitempty"`
  1154  	// If set to true, the URL scheme in the redirected request is set to https.
  1155  	// If set to false, the URL scheme of the redirected request will remain the
  1156  	// same as that of the request.
  1157  	//
  1158  	// The default is set to false.
  1159  	HttpsRedirect bool `protobuf:"varint,5,opt,name=https_redirect,json=httpsRedirect,proto3" json:"https_redirect,omitempty"`
  1160  	// if set to true, any accompanying query portion of the original URL is
  1161  	// removed prior to redirecting the request. If set to false, the query
  1162  	// portion of the original URL is retained.
  1163  	//
  1164  	// The default is set to false.
  1165  	StripQuery bool `protobuf:"varint,6,opt,name=strip_query,json=stripQuery,proto3" json:"strip_query,omitempty"`
  1166  	// The port that will be used in the redirected request instead of the one
  1167  	// that was supplied in the request.
  1168  	PortRedirect int32 `protobuf:"varint,7,opt,name=port_redirect,json=portRedirect,proto3" json:"port_redirect,omitempty"`
  1169  }
  1170  
  1171  func (x *HttpRoute_Redirect) Reset() {
  1172  	*x = HttpRoute_Redirect{}
  1173  	if protoimpl.UnsafeEnabled {
  1174  		mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[11]
  1175  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1176  		ms.StoreMessageInfo(mi)
  1177  	}
  1178  }
  1179  
  1180  func (x *HttpRoute_Redirect) String() string {
  1181  	return protoimpl.X.MessageStringOf(x)
  1182  }
  1183  
  1184  func (*HttpRoute_Redirect) ProtoMessage() {}
  1185  
  1186  func (x *HttpRoute_Redirect) ProtoReflect() protoreflect.Message {
  1187  	mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[11]
  1188  	if protoimpl.UnsafeEnabled && x != nil {
  1189  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1190  		if ms.LoadMessageInfo() == nil {
  1191  			ms.StoreMessageInfo(mi)
  1192  		}
  1193  		return ms
  1194  	}
  1195  	return mi.MessageOf(x)
  1196  }
  1197  
  1198  // Deprecated: Use HttpRoute_Redirect.ProtoReflect.Descriptor instead.
  1199  func (*HttpRoute_Redirect) Descriptor() ([]byte, []int) {
  1200  	return file_google_cloud_networkservices_v1_http_route_proto_rawDescGZIP(), []int{0, 4}
  1201  }
  1202  
  1203  func (x *HttpRoute_Redirect) GetHostRedirect() string {
  1204  	if x != nil {
  1205  		return x.HostRedirect
  1206  	}
  1207  	return ""
  1208  }
  1209  
  1210  func (x *HttpRoute_Redirect) GetPathRedirect() string {
  1211  	if x != nil {
  1212  		return x.PathRedirect
  1213  	}
  1214  	return ""
  1215  }
  1216  
  1217  func (x *HttpRoute_Redirect) GetPrefixRewrite() string {
  1218  	if x != nil {
  1219  		return x.PrefixRewrite
  1220  	}
  1221  	return ""
  1222  }
  1223  
  1224  func (x *HttpRoute_Redirect) GetResponseCode() HttpRoute_Redirect_ResponseCode {
  1225  	if x != nil {
  1226  		return x.ResponseCode
  1227  	}
  1228  	return HttpRoute_Redirect_RESPONSE_CODE_UNSPECIFIED
  1229  }
  1230  
  1231  func (x *HttpRoute_Redirect) GetHttpsRedirect() bool {
  1232  	if x != nil {
  1233  		return x.HttpsRedirect
  1234  	}
  1235  	return false
  1236  }
  1237  
  1238  func (x *HttpRoute_Redirect) GetStripQuery() bool {
  1239  	if x != nil {
  1240  		return x.StripQuery
  1241  	}
  1242  	return false
  1243  }
  1244  
  1245  func (x *HttpRoute_Redirect) GetPortRedirect() int32 {
  1246  	if x != nil {
  1247  		return x.PortRedirect
  1248  	}
  1249  	return 0
  1250  }
  1251  
  1252  // The specification for fault injection introduced into traffic to test the
  1253  // resiliency of clients to destination service failure. As part of fault
  1254  // injection, when clients send requests to a destination, delays can be
  1255  // introduced by client proxy on a percentage of requests before sending those
  1256  // requests to the destination service. Similarly requests can be aborted by
  1257  // client proxy for a percentage of requests.
  1258  type HttpRoute_FaultInjectionPolicy struct {
  1259  	state         protoimpl.MessageState
  1260  	sizeCache     protoimpl.SizeCache
  1261  	unknownFields protoimpl.UnknownFields
  1262  
  1263  	// The specification for injecting delay to client requests.
  1264  	Delay *HttpRoute_FaultInjectionPolicy_Delay `protobuf:"bytes,1,opt,name=delay,proto3" json:"delay,omitempty"`
  1265  	// The specification for aborting to client requests.
  1266  	Abort *HttpRoute_FaultInjectionPolicy_Abort `protobuf:"bytes,2,opt,name=abort,proto3" json:"abort,omitempty"`
  1267  }
  1268  
  1269  func (x *HttpRoute_FaultInjectionPolicy) Reset() {
  1270  	*x = HttpRoute_FaultInjectionPolicy{}
  1271  	if protoimpl.UnsafeEnabled {
  1272  		mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[12]
  1273  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1274  		ms.StoreMessageInfo(mi)
  1275  	}
  1276  }
  1277  
  1278  func (x *HttpRoute_FaultInjectionPolicy) String() string {
  1279  	return protoimpl.X.MessageStringOf(x)
  1280  }
  1281  
  1282  func (*HttpRoute_FaultInjectionPolicy) ProtoMessage() {}
  1283  
  1284  func (x *HttpRoute_FaultInjectionPolicy) ProtoReflect() protoreflect.Message {
  1285  	mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[12]
  1286  	if protoimpl.UnsafeEnabled && x != nil {
  1287  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1288  		if ms.LoadMessageInfo() == nil {
  1289  			ms.StoreMessageInfo(mi)
  1290  		}
  1291  		return ms
  1292  	}
  1293  	return mi.MessageOf(x)
  1294  }
  1295  
  1296  // Deprecated: Use HttpRoute_FaultInjectionPolicy.ProtoReflect.Descriptor instead.
  1297  func (*HttpRoute_FaultInjectionPolicy) Descriptor() ([]byte, []int) {
  1298  	return file_google_cloud_networkservices_v1_http_route_proto_rawDescGZIP(), []int{0, 5}
  1299  }
  1300  
  1301  func (x *HttpRoute_FaultInjectionPolicy) GetDelay() *HttpRoute_FaultInjectionPolicy_Delay {
  1302  	if x != nil {
  1303  		return x.Delay
  1304  	}
  1305  	return nil
  1306  }
  1307  
  1308  func (x *HttpRoute_FaultInjectionPolicy) GetAbort() *HttpRoute_FaultInjectionPolicy_Abort {
  1309  	if x != nil {
  1310  		return x.Abort
  1311  	}
  1312  	return nil
  1313  }
  1314  
  1315  // The specification for modifying HTTP header in HTTP request and HTTP
  1316  // response.
  1317  type HttpRoute_HeaderModifier struct {
  1318  	state         protoimpl.MessageState
  1319  	sizeCache     protoimpl.SizeCache
  1320  	unknownFields protoimpl.UnknownFields
  1321  
  1322  	// Completely overwrite/replace the headers with given map where key is the
  1323  	// name of the header, value is the value of the header.
  1324  	Set map[string]string `protobuf:"bytes,1,rep,name=set,proto3" json:"set,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  1325  	// Add the headers with given map where key is the name of the header, value
  1326  	// is the value of the header.
  1327  	Add map[string]string `protobuf:"bytes,2,rep,name=add,proto3" json:"add,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
  1328  	// Remove headers (matching by header names) specified in the list.
  1329  	Remove []string `protobuf:"bytes,3,rep,name=remove,proto3" json:"remove,omitempty"`
  1330  }
  1331  
  1332  func (x *HttpRoute_HeaderModifier) Reset() {
  1333  	*x = HttpRoute_HeaderModifier{}
  1334  	if protoimpl.UnsafeEnabled {
  1335  		mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[13]
  1336  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1337  		ms.StoreMessageInfo(mi)
  1338  	}
  1339  }
  1340  
  1341  func (x *HttpRoute_HeaderModifier) String() string {
  1342  	return protoimpl.X.MessageStringOf(x)
  1343  }
  1344  
  1345  func (*HttpRoute_HeaderModifier) ProtoMessage() {}
  1346  
  1347  func (x *HttpRoute_HeaderModifier) ProtoReflect() protoreflect.Message {
  1348  	mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[13]
  1349  	if protoimpl.UnsafeEnabled && x != nil {
  1350  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1351  		if ms.LoadMessageInfo() == nil {
  1352  			ms.StoreMessageInfo(mi)
  1353  		}
  1354  		return ms
  1355  	}
  1356  	return mi.MessageOf(x)
  1357  }
  1358  
  1359  // Deprecated: Use HttpRoute_HeaderModifier.ProtoReflect.Descriptor instead.
  1360  func (*HttpRoute_HeaderModifier) Descriptor() ([]byte, []int) {
  1361  	return file_google_cloud_networkservices_v1_http_route_proto_rawDescGZIP(), []int{0, 6}
  1362  }
  1363  
  1364  func (x *HttpRoute_HeaderModifier) GetSet() map[string]string {
  1365  	if x != nil {
  1366  		return x.Set
  1367  	}
  1368  	return nil
  1369  }
  1370  
  1371  func (x *HttpRoute_HeaderModifier) GetAdd() map[string]string {
  1372  	if x != nil {
  1373  		return x.Add
  1374  	}
  1375  	return nil
  1376  }
  1377  
  1378  func (x *HttpRoute_HeaderModifier) GetRemove() []string {
  1379  	if x != nil {
  1380  		return x.Remove
  1381  	}
  1382  	return nil
  1383  }
  1384  
  1385  // The specification for modifying the URL of the request, prior to forwarding
  1386  // the request to the destination.
  1387  type HttpRoute_URLRewrite struct {
  1388  	state         protoimpl.MessageState
  1389  	sizeCache     protoimpl.SizeCache
  1390  	unknownFields protoimpl.UnknownFields
  1391  
  1392  	// Prior to forwarding the request to the selected destination, the matching
  1393  	// portion of the requests path is replaced by this value.
  1394  	PathPrefixRewrite string `protobuf:"bytes,1,opt,name=path_prefix_rewrite,json=pathPrefixRewrite,proto3" json:"path_prefix_rewrite,omitempty"`
  1395  	// Prior to forwarding the request to the selected destination, the requests
  1396  	// host header is replaced by this value.
  1397  	HostRewrite string `protobuf:"bytes,2,opt,name=host_rewrite,json=hostRewrite,proto3" json:"host_rewrite,omitempty"`
  1398  }
  1399  
  1400  func (x *HttpRoute_URLRewrite) Reset() {
  1401  	*x = HttpRoute_URLRewrite{}
  1402  	if protoimpl.UnsafeEnabled {
  1403  		mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[14]
  1404  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1405  		ms.StoreMessageInfo(mi)
  1406  	}
  1407  }
  1408  
  1409  func (x *HttpRoute_URLRewrite) String() string {
  1410  	return protoimpl.X.MessageStringOf(x)
  1411  }
  1412  
  1413  func (*HttpRoute_URLRewrite) ProtoMessage() {}
  1414  
  1415  func (x *HttpRoute_URLRewrite) ProtoReflect() protoreflect.Message {
  1416  	mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[14]
  1417  	if protoimpl.UnsafeEnabled && x != nil {
  1418  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1419  		if ms.LoadMessageInfo() == nil {
  1420  			ms.StoreMessageInfo(mi)
  1421  		}
  1422  		return ms
  1423  	}
  1424  	return mi.MessageOf(x)
  1425  }
  1426  
  1427  // Deprecated: Use HttpRoute_URLRewrite.ProtoReflect.Descriptor instead.
  1428  func (*HttpRoute_URLRewrite) Descriptor() ([]byte, []int) {
  1429  	return file_google_cloud_networkservices_v1_http_route_proto_rawDescGZIP(), []int{0, 7}
  1430  }
  1431  
  1432  func (x *HttpRoute_URLRewrite) GetPathPrefixRewrite() string {
  1433  	if x != nil {
  1434  		return x.PathPrefixRewrite
  1435  	}
  1436  	return ""
  1437  }
  1438  
  1439  func (x *HttpRoute_URLRewrite) GetHostRewrite() string {
  1440  	if x != nil {
  1441  		return x.HostRewrite
  1442  	}
  1443  	return ""
  1444  }
  1445  
  1446  // The specifications for retries.
  1447  type HttpRoute_RetryPolicy struct {
  1448  	state         protoimpl.MessageState
  1449  	sizeCache     protoimpl.SizeCache
  1450  	unknownFields protoimpl.UnknownFields
  1451  
  1452  	// Specifies one or more conditions when this retry policy applies. Valid
  1453  	// values are:
  1454  	//   5xx: Proxy will attempt a retry if the destination service responds
  1455  	//     with any 5xx response code, of if the destination service does not
  1456  	//     respond at all, example: disconnect, reset, read timeout, connection
  1457  	//     failure and refused streams.
  1458  	//
  1459  	//   gateway-error: Similar to 5xx, but only applies to response codes 502,
  1460  	//     503, 504.
  1461  	//
  1462  	//   reset: Proxy will attempt a retry if the destination service does not
  1463  	//     respond at all (disconnect/reset/read timeout)
  1464  	//
  1465  	//   connect-failure: Proxy will retry on failures connecting to destination
  1466  	//     for example due to connection timeouts.
  1467  	//
  1468  	//   retriable-4xx: Proxy will retry fro retriable 4xx response codes.
  1469  	//     Currently the only retriable error supported is 409.
  1470  	//
  1471  	//   refused-stream: Proxy will retry if the destination resets the stream
  1472  	//     with a REFUSED_STREAM error code. This reset type indicates that it
  1473  	//     is safe to retry.
  1474  	RetryConditions []string `protobuf:"bytes,1,rep,name=retry_conditions,json=retryConditions,proto3" json:"retry_conditions,omitempty"`
  1475  	// Specifies the allowed number of retries. This number must be > 0. If not
  1476  	// specified, default to 1.
  1477  	NumRetries int32 `protobuf:"varint,2,opt,name=num_retries,json=numRetries,proto3" json:"num_retries,omitempty"`
  1478  	// Specifies a non-zero timeout per retry attempt.
  1479  	PerTryTimeout *durationpb.Duration `protobuf:"bytes,3,opt,name=per_try_timeout,json=perTryTimeout,proto3" json:"per_try_timeout,omitempty"`
  1480  }
  1481  
  1482  func (x *HttpRoute_RetryPolicy) Reset() {
  1483  	*x = HttpRoute_RetryPolicy{}
  1484  	if protoimpl.UnsafeEnabled {
  1485  		mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[15]
  1486  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1487  		ms.StoreMessageInfo(mi)
  1488  	}
  1489  }
  1490  
  1491  func (x *HttpRoute_RetryPolicy) String() string {
  1492  	return protoimpl.X.MessageStringOf(x)
  1493  }
  1494  
  1495  func (*HttpRoute_RetryPolicy) ProtoMessage() {}
  1496  
  1497  func (x *HttpRoute_RetryPolicy) ProtoReflect() protoreflect.Message {
  1498  	mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[15]
  1499  	if protoimpl.UnsafeEnabled && x != nil {
  1500  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1501  		if ms.LoadMessageInfo() == nil {
  1502  			ms.StoreMessageInfo(mi)
  1503  		}
  1504  		return ms
  1505  	}
  1506  	return mi.MessageOf(x)
  1507  }
  1508  
  1509  // Deprecated: Use HttpRoute_RetryPolicy.ProtoReflect.Descriptor instead.
  1510  func (*HttpRoute_RetryPolicy) Descriptor() ([]byte, []int) {
  1511  	return file_google_cloud_networkservices_v1_http_route_proto_rawDescGZIP(), []int{0, 8}
  1512  }
  1513  
  1514  func (x *HttpRoute_RetryPolicy) GetRetryConditions() []string {
  1515  	if x != nil {
  1516  		return x.RetryConditions
  1517  	}
  1518  	return nil
  1519  }
  1520  
  1521  func (x *HttpRoute_RetryPolicy) GetNumRetries() int32 {
  1522  	if x != nil {
  1523  		return x.NumRetries
  1524  	}
  1525  	return 0
  1526  }
  1527  
  1528  func (x *HttpRoute_RetryPolicy) GetPerTryTimeout() *durationpb.Duration {
  1529  	if x != nil {
  1530  		return x.PerTryTimeout
  1531  	}
  1532  	return nil
  1533  }
  1534  
  1535  // Specifies the policy on how requests are shadowed to a separate mirrored
  1536  // destination service. The proxy does not wait for responses from the
  1537  // shadow service. Prior to sending traffic to the shadow service, the
  1538  // host/authority header is suffixed with -shadow.
  1539  type HttpRoute_RequestMirrorPolicy struct {
  1540  	state         protoimpl.MessageState
  1541  	sizeCache     protoimpl.SizeCache
  1542  	unknownFields protoimpl.UnknownFields
  1543  
  1544  	// The destination the requests will be mirrored to. The weight of the
  1545  	// destination will be ignored.
  1546  	Destination *HttpRoute_Destination `protobuf:"bytes,1,opt,name=destination,proto3" json:"destination,omitempty"`
  1547  }
  1548  
  1549  func (x *HttpRoute_RequestMirrorPolicy) Reset() {
  1550  	*x = HttpRoute_RequestMirrorPolicy{}
  1551  	if protoimpl.UnsafeEnabled {
  1552  		mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[16]
  1553  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1554  		ms.StoreMessageInfo(mi)
  1555  	}
  1556  }
  1557  
  1558  func (x *HttpRoute_RequestMirrorPolicy) String() string {
  1559  	return protoimpl.X.MessageStringOf(x)
  1560  }
  1561  
  1562  func (*HttpRoute_RequestMirrorPolicy) ProtoMessage() {}
  1563  
  1564  func (x *HttpRoute_RequestMirrorPolicy) ProtoReflect() protoreflect.Message {
  1565  	mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[16]
  1566  	if protoimpl.UnsafeEnabled && x != nil {
  1567  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1568  		if ms.LoadMessageInfo() == nil {
  1569  			ms.StoreMessageInfo(mi)
  1570  		}
  1571  		return ms
  1572  	}
  1573  	return mi.MessageOf(x)
  1574  }
  1575  
  1576  // Deprecated: Use HttpRoute_RequestMirrorPolicy.ProtoReflect.Descriptor instead.
  1577  func (*HttpRoute_RequestMirrorPolicy) Descriptor() ([]byte, []int) {
  1578  	return file_google_cloud_networkservices_v1_http_route_proto_rawDescGZIP(), []int{0, 9}
  1579  }
  1580  
  1581  func (x *HttpRoute_RequestMirrorPolicy) GetDestination() *HttpRoute_Destination {
  1582  	if x != nil {
  1583  		return x.Destination
  1584  	}
  1585  	return nil
  1586  }
  1587  
  1588  // The Specification for allowing client side cross-origin requests.
  1589  type HttpRoute_CorsPolicy struct {
  1590  	state         protoimpl.MessageState
  1591  	sizeCache     protoimpl.SizeCache
  1592  	unknownFields protoimpl.UnknownFields
  1593  
  1594  	// Specifies the list of origins that will be allowed to do CORS requests.
  1595  	// An origin is allowed if it matches either an item in allow_origins or
  1596  	// an item in allow_origin_regexes.
  1597  	AllowOrigins []string `protobuf:"bytes,1,rep,name=allow_origins,json=allowOrigins,proto3" json:"allow_origins,omitempty"`
  1598  	// Specifies the regular expression patterns that match allowed origins. For
  1599  	// regular expression grammar, please see
  1600  	// https://github.com/google/re2/wiki/Syntax.
  1601  	AllowOriginRegexes []string `protobuf:"bytes,2,rep,name=allow_origin_regexes,json=allowOriginRegexes,proto3" json:"allow_origin_regexes,omitempty"`
  1602  	// Specifies the content for Access-Control-Allow-Methods header.
  1603  	AllowMethods []string `protobuf:"bytes,3,rep,name=allow_methods,json=allowMethods,proto3" json:"allow_methods,omitempty"`
  1604  	// Specifies the content for Access-Control-Allow-Headers header.
  1605  	AllowHeaders []string `protobuf:"bytes,4,rep,name=allow_headers,json=allowHeaders,proto3" json:"allow_headers,omitempty"`
  1606  	// Specifies the content for Access-Control-Expose-Headers header.
  1607  	ExposeHeaders []string `protobuf:"bytes,5,rep,name=expose_headers,json=exposeHeaders,proto3" json:"expose_headers,omitempty"`
  1608  	// Specifies how long result of a preflight request can be cached in
  1609  	// seconds. This translates to the Access-Control-Max-Age header.
  1610  	MaxAge string `protobuf:"bytes,6,opt,name=max_age,json=maxAge,proto3" json:"max_age,omitempty"`
  1611  	// In response to a preflight request, setting this to true indicates that
  1612  	// the actual request can include user credentials. This translates to the
  1613  	// Access-Control-Allow-Credentials header.
  1614  	//
  1615  	// Default value is false.
  1616  	AllowCredentials bool `protobuf:"varint,7,opt,name=allow_credentials,json=allowCredentials,proto3" json:"allow_credentials,omitempty"`
  1617  	// If true, the CORS policy is disabled. The default value is false, which
  1618  	// indicates that the CORS policy is in effect.
  1619  	Disabled bool `protobuf:"varint,8,opt,name=disabled,proto3" json:"disabled,omitempty"`
  1620  }
  1621  
  1622  func (x *HttpRoute_CorsPolicy) Reset() {
  1623  	*x = HttpRoute_CorsPolicy{}
  1624  	if protoimpl.UnsafeEnabled {
  1625  		mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[17]
  1626  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1627  		ms.StoreMessageInfo(mi)
  1628  	}
  1629  }
  1630  
  1631  func (x *HttpRoute_CorsPolicy) String() string {
  1632  	return protoimpl.X.MessageStringOf(x)
  1633  }
  1634  
  1635  func (*HttpRoute_CorsPolicy) ProtoMessage() {}
  1636  
  1637  func (x *HttpRoute_CorsPolicy) ProtoReflect() protoreflect.Message {
  1638  	mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[17]
  1639  	if protoimpl.UnsafeEnabled && x != nil {
  1640  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1641  		if ms.LoadMessageInfo() == nil {
  1642  			ms.StoreMessageInfo(mi)
  1643  		}
  1644  		return ms
  1645  	}
  1646  	return mi.MessageOf(x)
  1647  }
  1648  
  1649  // Deprecated: Use HttpRoute_CorsPolicy.ProtoReflect.Descriptor instead.
  1650  func (*HttpRoute_CorsPolicy) Descriptor() ([]byte, []int) {
  1651  	return file_google_cloud_networkservices_v1_http_route_proto_rawDescGZIP(), []int{0, 10}
  1652  }
  1653  
  1654  func (x *HttpRoute_CorsPolicy) GetAllowOrigins() []string {
  1655  	if x != nil {
  1656  		return x.AllowOrigins
  1657  	}
  1658  	return nil
  1659  }
  1660  
  1661  func (x *HttpRoute_CorsPolicy) GetAllowOriginRegexes() []string {
  1662  	if x != nil {
  1663  		return x.AllowOriginRegexes
  1664  	}
  1665  	return nil
  1666  }
  1667  
  1668  func (x *HttpRoute_CorsPolicy) GetAllowMethods() []string {
  1669  	if x != nil {
  1670  		return x.AllowMethods
  1671  	}
  1672  	return nil
  1673  }
  1674  
  1675  func (x *HttpRoute_CorsPolicy) GetAllowHeaders() []string {
  1676  	if x != nil {
  1677  		return x.AllowHeaders
  1678  	}
  1679  	return nil
  1680  }
  1681  
  1682  func (x *HttpRoute_CorsPolicy) GetExposeHeaders() []string {
  1683  	if x != nil {
  1684  		return x.ExposeHeaders
  1685  	}
  1686  	return nil
  1687  }
  1688  
  1689  func (x *HttpRoute_CorsPolicy) GetMaxAge() string {
  1690  	if x != nil {
  1691  		return x.MaxAge
  1692  	}
  1693  	return ""
  1694  }
  1695  
  1696  func (x *HttpRoute_CorsPolicy) GetAllowCredentials() bool {
  1697  	if x != nil {
  1698  		return x.AllowCredentials
  1699  	}
  1700  	return false
  1701  }
  1702  
  1703  func (x *HttpRoute_CorsPolicy) GetDisabled() bool {
  1704  	if x != nil {
  1705  		return x.Disabled
  1706  	}
  1707  	return false
  1708  }
  1709  
  1710  // The specifications for routing traffic and applying associated policies.
  1711  type HttpRoute_RouteAction struct {
  1712  	state         protoimpl.MessageState
  1713  	sizeCache     protoimpl.SizeCache
  1714  	unknownFields protoimpl.UnknownFields
  1715  
  1716  	// The destination to which traffic should be forwarded.
  1717  	Destinations []*HttpRoute_Destination `protobuf:"bytes,1,rep,name=destinations,proto3" json:"destinations,omitempty"`
  1718  	// If set, the request is directed as configured by this field.
  1719  	Redirect *HttpRoute_Redirect `protobuf:"bytes,2,opt,name=redirect,proto3" json:"redirect,omitempty"`
  1720  	// The specification for fault injection introduced into traffic to test the
  1721  	// resiliency of clients to backend service failure. As part of fault
  1722  	// injection, when clients send requests to a backend service, delays can be
  1723  	// introduced  on a percentage of requests before sending those requests to
  1724  	// the backend service. Similarly requests from clients can be aborted for a
  1725  	// percentage of requests.
  1726  	//
  1727  	// timeout and retry_policy will be ignored by clients that are configured
  1728  	// with a fault_injection_policy
  1729  	FaultInjectionPolicy *HttpRoute_FaultInjectionPolicy `protobuf:"bytes,4,opt,name=fault_injection_policy,json=faultInjectionPolicy,proto3" json:"fault_injection_policy,omitempty"`
  1730  	// The specification for modifying the headers of a matching request prior
  1731  	// to delivery of the request to the destination.
  1732  	RequestHeaderModifier *HttpRoute_HeaderModifier `protobuf:"bytes,5,opt,name=request_header_modifier,json=requestHeaderModifier,proto3" json:"request_header_modifier,omitempty"`
  1733  	// The specification for modifying the headers of a response prior to
  1734  	// sending the response back to the client.
  1735  	ResponseHeaderModifier *HttpRoute_HeaderModifier `protobuf:"bytes,6,opt,name=response_header_modifier,json=responseHeaderModifier,proto3" json:"response_header_modifier,omitempty"`
  1736  	// The specification for rewrite URL before forwarding requests to the
  1737  	// destination.
  1738  	UrlRewrite *HttpRoute_URLRewrite `protobuf:"bytes,7,opt,name=url_rewrite,json=urlRewrite,proto3" json:"url_rewrite,omitempty"`
  1739  	// Specifies the timeout for selected route. Timeout is computed from the
  1740  	// time the request has been fully processed (i.e. end of stream) up until
  1741  	// the response has been completely processed. Timeout includes all retries.
  1742  	Timeout *durationpb.Duration `protobuf:"bytes,8,opt,name=timeout,proto3" json:"timeout,omitempty"`
  1743  	// Specifies the retry policy associated with this route.
  1744  	RetryPolicy *HttpRoute_RetryPolicy `protobuf:"bytes,9,opt,name=retry_policy,json=retryPolicy,proto3" json:"retry_policy,omitempty"`
  1745  	// Specifies the policy on how requests intended for the routes destination
  1746  	// are shadowed to a separate mirrored destination. Proxy will not wait for
  1747  	// the shadow destination to respond before returning the response. Prior to
  1748  	// sending traffic to the shadow service, the host/authority header is
  1749  	// suffixed with -shadow.
  1750  	RequestMirrorPolicy *HttpRoute_RequestMirrorPolicy `protobuf:"bytes,10,opt,name=request_mirror_policy,json=requestMirrorPolicy,proto3" json:"request_mirror_policy,omitempty"`
  1751  	// The specification for allowing client side cross-origin requests.
  1752  	CorsPolicy *HttpRoute_CorsPolicy `protobuf:"bytes,11,opt,name=cors_policy,json=corsPolicy,proto3" json:"cors_policy,omitempty"`
  1753  }
  1754  
  1755  func (x *HttpRoute_RouteAction) Reset() {
  1756  	*x = HttpRoute_RouteAction{}
  1757  	if protoimpl.UnsafeEnabled {
  1758  		mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[18]
  1759  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1760  		ms.StoreMessageInfo(mi)
  1761  	}
  1762  }
  1763  
  1764  func (x *HttpRoute_RouteAction) String() string {
  1765  	return protoimpl.X.MessageStringOf(x)
  1766  }
  1767  
  1768  func (*HttpRoute_RouteAction) ProtoMessage() {}
  1769  
  1770  func (x *HttpRoute_RouteAction) ProtoReflect() protoreflect.Message {
  1771  	mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[18]
  1772  	if protoimpl.UnsafeEnabled && x != nil {
  1773  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1774  		if ms.LoadMessageInfo() == nil {
  1775  			ms.StoreMessageInfo(mi)
  1776  		}
  1777  		return ms
  1778  	}
  1779  	return mi.MessageOf(x)
  1780  }
  1781  
  1782  // Deprecated: Use HttpRoute_RouteAction.ProtoReflect.Descriptor instead.
  1783  func (*HttpRoute_RouteAction) Descriptor() ([]byte, []int) {
  1784  	return file_google_cloud_networkservices_v1_http_route_proto_rawDescGZIP(), []int{0, 11}
  1785  }
  1786  
  1787  func (x *HttpRoute_RouteAction) GetDestinations() []*HttpRoute_Destination {
  1788  	if x != nil {
  1789  		return x.Destinations
  1790  	}
  1791  	return nil
  1792  }
  1793  
  1794  func (x *HttpRoute_RouteAction) GetRedirect() *HttpRoute_Redirect {
  1795  	if x != nil {
  1796  		return x.Redirect
  1797  	}
  1798  	return nil
  1799  }
  1800  
  1801  func (x *HttpRoute_RouteAction) GetFaultInjectionPolicy() *HttpRoute_FaultInjectionPolicy {
  1802  	if x != nil {
  1803  		return x.FaultInjectionPolicy
  1804  	}
  1805  	return nil
  1806  }
  1807  
  1808  func (x *HttpRoute_RouteAction) GetRequestHeaderModifier() *HttpRoute_HeaderModifier {
  1809  	if x != nil {
  1810  		return x.RequestHeaderModifier
  1811  	}
  1812  	return nil
  1813  }
  1814  
  1815  func (x *HttpRoute_RouteAction) GetResponseHeaderModifier() *HttpRoute_HeaderModifier {
  1816  	if x != nil {
  1817  		return x.ResponseHeaderModifier
  1818  	}
  1819  	return nil
  1820  }
  1821  
  1822  func (x *HttpRoute_RouteAction) GetUrlRewrite() *HttpRoute_URLRewrite {
  1823  	if x != nil {
  1824  		return x.UrlRewrite
  1825  	}
  1826  	return nil
  1827  }
  1828  
  1829  func (x *HttpRoute_RouteAction) GetTimeout() *durationpb.Duration {
  1830  	if x != nil {
  1831  		return x.Timeout
  1832  	}
  1833  	return nil
  1834  }
  1835  
  1836  func (x *HttpRoute_RouteAction) GetRetryPolicy() *HttpRoute_RetryPolicy {
  1837  	if x != nil {
  1838  		return x.RetryPolicy
  1839  	}
  1840  	return nil
  1841  }
  1842  
  1843  func (x *HttpRoute_RouteAction) GetRequestMirrorPolicy() *HttpRoute_RequestMirrorPolicy {
  1844  	if x != nil {
  1845  		return x.RequestMirrorPolicy
  1846  	}
  1847  	return nil
  1848  }
  1849  
  1850  func (x *HttpRoute_RouteAction) GetCorsPolicy() *HttpRoute_CorsPolicy {
  1851  	if x != nil {
  1852  		return x.CorsPolicy
  1853  	}
  1854  	return nil
  1855  }
  1856  
  1857  // Specifies how to match traffic and how to route traffic when traffic is
  1858  // matched.
  1859  type HttpRoute_RouteRule struct {
  1860  	state         protoimpl.MessageState
  1861  	sizeCache     protoimpl.SizeCache
  1862  	unknownFields protoimpl.UnknownFields
  1863  
  1864  	// A list of matches define conditions used for matching the rule against
  1865  	// incoming HTTP requests. Each match is independent, i.e. this rule will be
  1866  	// matched if ANY one of the matches is satisfied.
  1867  	//
  1868  	// If no matches field is specified, this rule will unconditionally match
  1869  	// traffic.
  1870  	//
  1871  	// If a default rule is desired to be configured, add a rule with no matches
  1872  	// specified to the end of the rules list.
  1873  	Matches []*HttpRoute_RouteMatch `protobuf:"bytes,1,rep,name=matches,proto3" json:"matches,omitempty"`
  1874  	// The detailed rule defining how to route matched traffic.
  1875  	Action *HttpRoute_RouteAction `protobuf:"bytes,2,opt,name=action,proto3" json:"action,omitempty"`
  1876  }
  1877  
  1878  func (x *HttpRoute_RouteRule) Reset() {
  1879  	*x = HttpRoute_RouteRule{}
  1880  	if protoimpl.UnsafeEnabled {
  1881  		mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[19]
  1882  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1883  		ms.StoreMessageInfo(mi)
  1884  	}
  1885  }
  1886  
  1887  func (x *HttpRoute_RouteRule) String() string {
  1888  	return protoimpl.X.MessageStringOf(x)
  1889  }
  1890  
  1891  func (*HttpRoute_RouteRule) ProtoMessage() {}
  1892  
  1893  func (x *HttpRoute_RouteRule) ProtoReflect() protoreflect.Message {
  1894  	mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[19]
  1895  	if protoimpl.UnsafeEnabled && x != nil {
  1896  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1897  		if ms.LoadMessageInfo() == nil {
  1898  			ms.StoreMessageInfo(mi)
  1899  		}
  1900  		return ms
  1901  	}
  1902  	return mi.MessageOf(x)
  1903  }
  1904  
  1905  // Deprecated: Use HttpRoute_RouteRule.ProtoReflect.Descriptor instead.
  1906  func (*HttpRoute_RouteRule) Descriptor() ([]byte, []int) {
  1907  	return file_google_cloud_networkservices_v1_http_route_proto_rawDescGZIP(), []int{0, 12}
  1908  }
  1909  
  1910  func (x *HttpRoute_RouteRule) GetMatches() []*HttpRoute_RouteMatch {
  1911  	if x != nil {
  1912  		return x.Matches
  1913  	}
  1914  	return nil
  1915  }
  1916  
  1917  func (x *HttpRoute_RouteRule) GetAction() *HttpRoute_RouteAction {
  1918  	if x != nil {
  1919  		return x.Action
  1920  	}
  1921  	return nil
  1922  }
  1923  
  1924  // Represents an integer value range.
  1925  type HttpRoute_HeaderMatch_IntegerRange struct {
  1926  	state         protoimpl.MessageState
  1927  	sizeCache     protoimpl.SizeCache
  1928  	unknownFields protoimpl.UnknownFields
  1929  
  1930  	// Start of the range (inclusive)
  1931  	Start int32 `protobuf:"varint,1,opt,name=start,proto3" json:"start,omitempty"`
  1932  	// End of the range (exclusive)
  1933  	End int32 `protobuf:"varint,2,opt,name=end,proto3" json:"end,omitempty"`
  1934  }
  1935  
  1936  func (x *HttpRoute_HeaderMatch_IntegerRange) Reset() {
  1937  	*x = HttpRoute_HeaderMatch_IntegerRange{}
  1938  	if protoimpl.UnsafeEnabled {
  1939  		mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[21]
  1940  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1941  		ms.StoreMessageInfo(mi)
  1942  	}
  1943  }
  1944  
  1945  func (x *HttpRoute_HeaderMatch_IntegerRange) String() string {
  1946  	return protoimpl.X.MessageStringOf(x)
  1947  }
  1948  
  1949  func (*HttpRoute_HeaderMatch_IntegerRange) ProtoMessage() {}
  1950  
  1951  func (x *HttpRoute_HeaderMatch_IntegerRange) ProtoReflect() protoreflect.Message {
  1952  	mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[21]
  1953  	if protoimpl.UnsafeEnabled && x != nil {
  1954  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1955  		if ms.LoadMessageInfo() == nil {
  1956  			ms.StoreMessageInfo(mi)
  1957  		}
  1958  		return ms
  1959  	}
  1960  	return mi.MessageOf(x)
  1961  }
  1962  
  1963  // Deprecated: Use HttpRoute_HeaderMatch_IntegerRange.ProtoReflect.Descriptor instead.
  1964  func (*HttpRoute_HeaderMatch_IntegerRange) Descriptor() ([]byte, []int) {
  1965  	return file_google_cloud_networkservices_v1_http_route_proto_rawDescGZIP(), []int{0, 0, 0}
  1966  }
  1967  
  1968  func (x *HttpRoute_HeaderMatch_IntegerRange) GetStart() int32 {
  1969  	if x != nil {
  1970  		return x.Start
  1971  	}
  1972  	return 0
  1973  }
  1974  
  1975  func (x *HttpRoute_HeaderMatch_IntegerRange) GetEnd() int32 {
  1976  	if x != nil {
  1977  		return x.End
  1978  	}
  1979  	return 0
  1980  }
  1981  
  1982  // Specification of how client requests are delayed as part of fault
  1983  // injection before being sent to a destination.
  1984  type HttpRoute_FaultInjectionPolicy_Delay struct {
  1985  	state         protoimpl.MessageState
  1986  	sizeCache     protoimpl.SizeCache
  1987  	unknownFields protoimpl.UnknownFields
  1988  
  1989  	// Specify a fixed delay before forwarding the request.
  1990  	FixedDelay *durationpb.Duration `protobuf:"bytes,1,opt,name=fixed_delay,json=fixedDelay,proto3" json:"fixed_delay,omitempty"`
  1991  	// The percentage of traffic on which delay will be injected.
  1992  	//
  1993  	// The value must be between [0, 100]
  1994  	Percentage int32 `protobuf:"varint,2,opt,name=percentage,proto3" json:"percentage,omitempty"`
  1995  }
  1996  
  1997  func (x *HttpRoute_FaultInjectionPolicy_Delay) Reset() {
  1998  	*x = HttpRoute_FaultInjectionPolicy_Delay{}
  1999  	if protoimpl.UnsafeEnabled {
  2000  		mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[22]
  2001  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2002  		ms.StoreMessageInfo(mi)
  2003  	}
  2004  }
  2005  
  2006  func (x *HttpRoute_FaultInjectionPolicy_Delay) String() string {
  2007  	return protoimpl.X.MessageStringOf(x)
  2008  }
  2009  
  2010  func (*HttpRoute_FaultInjectionPolicy_Delay) ProtoMessage() {}
  2011  
  2012  func (x *HttpRoute_FaultInjectionPolicy_Delay) ProtoReflect() protoreflect.Message {
  2013  	mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[22]
  2014  	if protoimpl.UnsafeEnabled && x != nil {
  2015  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2016  		if ms.LoadMessageInfo() == nil {
  2017  			ms.StoreMessageInfo(mi)
  2018  		}
  2019  		return ms
  2020  	}
  2021  	return mi.MessageOf(x)
  2022  }
  2023  
  2024  // Deprecated: Use HttpRoute_FaultInjectionPolicy_Delay.ProtoReflect.Descriptor instead.
  2025  func (*HttpRoute_FaultInjectionPolicy_Delay) Descriptor() ([]byte, []int) {
  2026  	return file_google_cloud_networkservices_v1_http_route_proto_rawDescGZIP(), []int{0, 5, 0}
  2027  }
  2028  
  2029  func (x *HttpRoute_FaultInjectionPolicy_Delay) GetFixedDelay() *durationpb.Duration {
  2030  	if x != nil {
  2031  		return x.FixedDelay
  2032  	}
  2033  	return nil
  2034  }
  2035  
  2036  func (x *HttpRoute_FaultInjectionPolicy_Delay) GetPercentage() int32 {
  2037  	if x != nil {
  2038  		return x.Percentage
  2039  	}
  2040  	return 0
  2041  }
  2042  
  2043  // Specification of how client requests are aborted as part of fault
  2044  // injection before being sent to a destination.
  2045  type HttpRoute_FaultInjectionPolicy_Abort struct {
  2046  	state         protoimpl.MessageState
  2047  	sizeCache     protoimpl.SizeCache
  2048  	unknownFields protoimpl.UnknownFields
  2049  
  2050  	// The HTTP status code used to abort the request.
  2051  	//
  2052  	// The value must be between 200 and 599 inclusive.
  2053  	HttpStatus int32 `protobuf:"varint,1,opt,name=http_status,json=httpStatus,proto3" json:"http_status,omitempty"`
  2054  	// The percentage of traffic which will be aborted.
  2055  	//
  2056  	// The value must be between [0, 100]
  2057  	Percentage int32 `protobuf:"varint,2,opt,name=percentage,proto3" json:"percentage,omitempty"`
  2058  }
  2059  
  2060  func (x *HttpRoute_FaultInjectionPolicy_Abort) Reset() {
  2061  	*x = HttpRoute_FaultInjectionPolicy_Abort{}
  2062  	if protoimpl.UnsafeEnabled {
  2063  		mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[23]
  2064  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2065  		ms.StoreMessageInfo(mi)
  2066  	}
  2067  }
  2068  
  2069  func (x *HttpRoute_FaultInjectionPolicy_Abort) String() string {
  2070  	return protoimpl.X.MessageStringOf(x)
  2071  }
  2072  
  2073  func (*HttpRoute_FaultInjectionPolicy_Abort) ProtoMessage() {}
  2074  
  2075  func (x *HttpRoute_FaultInjectionPolicy_Abort) ProtoReflect() protoreflect.Message {
  2076  	mi := &file_google_cloud_networkservices_v1_http_route_proto_msgTypes[23]
  2077  	if protoimpl.UnsafeEnabled && x != nil {
  2078  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  2079  		if ms.LoadMessageInfo() == nil {
  2080  			ms.StoreMessageInfo(mi)
  2081  		}
  2082  		return ms
  2083  	}
  2084  	return mi.MessageOf(x)
  2085  }
  2086  
  2087  // Deprecated: Use HttpRoute_FaultInjectionPolicy_Abort.ProtoReflect.Descriptor instead.
  2088  func (*HttpRoute_FaultInjectionPolicy_Abort) Descriptor() ([]byte, []int) {
  2089  	return file_google_cloud_networkservices_v1_http_route_proto_rawDescGZIP(), []int{0, 5, 1}
  2090  }
  2091  
  2092  func (x *HttpRoute_FaultInjectionPolicy_Abort) GetHttpStatus() int32 {
  2093  	if x != nil {
  2094  		return x.HttpStatus
  2095  	}
  2096  	return 0
  2097  }
  2098  
  2099  func (x *HttpRoute_FaultInjectionPolicy_Abort) GetPercentage() int32 {
  2100  	if x != nil {
  2101  		return x.Percentage
  2102  	}
  2103  	return 0
  2104  }
  2105  
  2106  var File_google_cloud_networkservices_v1_http_route_proto protoreflect.FileDescriptor
  2107  
  2108  var file_google_cloud_networkservices_v1_http_route_proto_rawDesc = []byte{
  2109  	0x0a, 0x30, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x6e,
  2110  	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2f, 0x76,
  2111  	0x31, 0x2f, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f,
  2112  	0x74, 0x6f, 0x12, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
  2113  	0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73,
  2114  	0x2e, 0x76, 0x31, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f,
  2115  	0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70,
  2116  	0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69,
  2117  	0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
  2118  	0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
  2119  	0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
  2120  	0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
  2121  	0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74,
  2122  	0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
  2123  	0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f,
  2124  	0x74, 0x6f, 0x22, 0x9f, 0x26, 0x0a, 0x09, 0x48, 0x74, 0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65,
  2125  	0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
  2126  	0xe0, 0x41, 0x02, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x09, 0x73, 0x65, 0x6c,
  2127  	0x66, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,
  2128  	0x03, 0x52, 0x08, 0x73, 0x65, 0x6c, 0x66, 0x4c, 0x69, 0x6e, 0x6b, 0x12, 0x25, 0x0a, 0x0b, 0x64,
  2129  	0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
  2130  	0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
  2131  	0x6f, 0x6e, 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d,
  2132  	0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2133  	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74,
  2134  	0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
  2135  	0x54, 0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74,
  2136  	0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  2137  	0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65,
  2138  	0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61,
  2139  	0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x09, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61,
  2140  	0x6d, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09,
  2141  	0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x43, 0x0a, 0x06, 0x6d, 0x65, 0x73,
  2142  	0x68, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x42, 0x2b, 0xe0, 0x41, 0x01, 0xfa, 0x41,
  2143  	0x25, 0x0a, 0x23, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
  2144  	0x65, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f,
  2145  	0x6d, 0x2f, 0x4d, 0x65, 0x73, 0x68, 0x52, 0x06, 0x6d, 0x65, 0x73, 0x68, 0x65, 0x73, 0x12, 0x4a,
  2146  	0x0a, 0x08, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09,
  2147  	0x42, 0x2e, 0xe0, 0x41, 0x01, 0xfa, 0x41, 0x28, 0x0a, 0x26, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72,
  2148  	0x6b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2149  	0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x47, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79,
  2150  	0x52, 0x08, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x73, 0x12, 0x53, 0x0a, 0x06, 0x6c, 0x61,
  2151  	0x62, 0x65, 0x6c, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f,
  2152  	0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72,
  2153  	0x6b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x74, 0x74,
  2154  	0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74,
  2155  	0x72, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12,
  2156  	0x4f, 0x0a, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34,
  2157  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x65,
  2158  	0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x76, 0x31,
  2159  	0x2e, 0x48, 0x74, 0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65,
  2160  	0x52, 0x75, 0x6c, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x73,
  2161  	0x1a, 0xac, 0x03, 0x0a, 0x0b, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68,
  2162  	0x12, 0x21, 0x0a, 0x0b, 0x65, 0x78, 0x61, 0x63, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18,
  2163  	0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0a, 0x65, 0x78, 0x61, 0x63, 0x74, 0x4d, 0x61,
  2164  	0x74, 0x63, 0x68, 0x12, 0x21, 0x0a, 0x0b, 0x72, 0x65, 0x67, 0x65, 0x78, 0x5f, 0x6d, 0x61, 0x74,
  2165  	0x63, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0a, 0x72, 0x65, 0x67, 0x65,
  2166  	0x78, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x23, 0x0a, 0x0c, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78,
  2167  	0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b,
  2168  	0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x25, 0x0a, 0x0d, 0x70,
  2169  	0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x05, 0x20, 0x01,
  2170  	0x28, 0x08, 0x48, 0x00, 0x52, 0x0c, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x4d, 0x61, 0x74,
  2171  	0x63, 0x68, 0x12, 0x23, 0x0a, 0x0c, 0x73, 0x75, 0x66, 0x66, 0x69, 0x78, 0x5f, 0x6d, 0x61, 0x74,
  2172  	0x63, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b, 0x73, 0x75, 0x66, 0x66,
  2173  	0x69, 0x78, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x66, 0x0a, 0x0b, 0x72, 0x61, 0x6e, 0x67, 0x65,
  2174  	0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x67,
  2175  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x65, 0x74, 0x77,
  2176  	0x6f, 0x72, 0x6b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x48,
  2177  	0x74, 0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x4d,
  2178  	0x61, 0x74, 0x63, 0x68, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x67, 0x65, 0x72, 0x52, 0x61, 0x6e, 0x67,
  2179  	0x65, 0x48, 0x00, 0x52, 0x0a, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12,
  2180  	0x16, 0x0a, 0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
  2181  	0x06, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x6e, 0x76, 0x65, 0x72,
  2182  	0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69,
  2183  	0x6e, 0x76, 0x65, 0x72, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x1a, 0x36, 0x0a, 0x0c, 0x49, 0x6e,
  2184  	0x74, 0x65, 0x67, 0x65, 0x72, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74,
  2185  	0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74,
  2186  	0x12, 0x10, 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x65,
  2187  	0x6e, 0x64, 0x42, 0x0b, 0x0a, 0x09, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x1a,
  2188  	0xb8, 0x01, 0x0a, 0x13, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74,
  2189  	0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x21, 0x0a, 0x0b, 0x65, 0x78, 0x61, 0x63, 0x74,
  2190  	0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0a,
  2191  	0x65, 0x78, 0x61, 0x63, 0x74, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x21, 0x0a, 0x0b, 0x72, 0x65,
  2192  	0x67, 0x65, 0x78, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48,
  2193  	0x00, 0x52, 0x0a, 0x72, 0x65, 0x67, 0x65, 0x78, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x25, 0x0a,
  2194  	0x0d, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x04,
  2195  	0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x0c, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x4d,
  2196  	0x61, 0x74, 0x63, 0x68, 0x12, 0x27, 0x0a, 0x0f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x70, 0x61,
  2197  	0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x71,
  2198  	0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x42, 0x0b, 0x0a,
  2199  	0x09, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x1a, 0xe9, 0x02, 0x0a, 0x0a, 0x52,
  2200  	0x6f, 0x75, 0x74, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x28, 0x0a, 0x0f, 0x66, 0x75, 0x6c,
  2201  	0x6c, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01,
  2202  	0x28, 0x09, 0x48, 0x00, 0x52, 0x0d, 0x66, 0x75, 0x6c, 0x6c, 0x50, 0x61, 0x74, 0x68, 0x4d, 0x61,
  2203  	0x74, 0x63, 0x68, 0x12, 0x23, 0x0a, 0x0c, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x5f, 0x6d, 0x61,
  2204  	0x74, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b, 0x70, 0x72, 0x65,
  2205  	0x66, 0x69, 0x78, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x21, 0x0a, 0x0b, 0x72, 0x65, 0x67, 0x65,
  2206  	0x78, 0x5f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52,
  2207  	0x0a, 0x72, 0x65, 0x67, 0x65, 0x78, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x1f, 0x0a, 0x0b, 0x69,
  2208  	0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x63, 0x61, 0x73, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08,
  2209  	0x52, 0x0a, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x43, 0x61, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x07,
  2210  	0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e,
  2211  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x65, 0x74,
  2212  	0x77, 0x6f, 0x72, 0x6b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e,
  2213  	0x48, 0x74, 0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72,
  2214  	0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x69,
  2215  	0x0a, 0x10, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65,
  2216  	0x72, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  2217  	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73,
  2218  	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x52,
  2219  	0x6f, 0x75, 0x74, 0x65, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65,
  2220  	0x74, 0x65, 0x72, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x52, 0x0f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x50,
  2221  	0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x42, 0x0b, 0x0a, 0x09, 0x50, 0x61, 0x74,
  2222  	0x68, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x1a, 0x74, 0x0a, 0x0b, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e,
  2223  	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4d, 0x0a, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
  2224  	0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2a, 0xfa, 0x41, 0x27,
  2225  	0x0a, 0x25, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2226  	0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x42, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64,
  2227  	0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
  2228  	0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02,
  2229  	0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x77, 0x65, 0x69, 0x67, 0x68, 0x74, 0x1a, 0xe8, 0x03, 0x0a,
  2230  	0x08, 0x52, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x68, 0x6f, 0x73,
  2231  	0x74, 0x5f, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
  2232  	0x52, 0x0c, 0x68, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x12, 0x23,
  2233  	0x0a, 0x0d, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x18,
  2234  	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x61, 0x74, 0x68, 0x52, 0x65, 0x64, 0x69, 0x72,
  2235  	0x65, 0x63, 0x74, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x5f, 0x72, 0x65,
  2236  	0x77, 0x72, 0x69, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x70, 0x72, 0x65,
  2237  	0x66, 0x69, 0x78, 0x52, 0x65, 0x77, 0x72, 0x69, 0x74, 0x65, 0x12, 0x65, 0x0a, 0x0d, 0x72, 0x65,
  2238  	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28,
  2239  	0x0e, 0x32, 0x40, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
  2240  	0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73,
  2241  	0x2e, 0x76, 0x31, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x52, 0x65,
  2242  	0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x43,
  2243  	0x6f, 0x64, 0x65, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x43, 0x6f, 0x64,
  2244  	0x65, 0x12, 0x25, 0x0a, 0x0e, 0x68, 0x74, 0x74, 0x70, 0x73, 0x5f, 0x72, 0x65, 0x64, 0x69, 0x72,
  2245  	0x65, 0x63, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x68, 0x74, 0x74, 0x70, 0x73,
  2246  	0x52, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x72, 0x69,
  2247  	0x70, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x73,
  2248  	0x74, 0x72, 0x69, 0x70, 0x51, 0x75, 0x65, 0x72, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x6f, 0x72,
  2249  	0x74, 0x5f, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05,
  2250  	0x52, 0x0c, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x22, 0x96,
  2251  	0x01, 0x0a, 0x0c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12,
  2252  	0x1d, 0x0a, 0x19, 0x52, 0x45, 0x53, 0x50, 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x43, 0x4f, 0x44, 0x45,
  2253  	0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1d,
  2254  	0x0a, 0x19, 0x4d, 0x4f, 0x56, 0x45, 0x44, 0x5f, 0x50, 0x45, 0x52, 0x4d, 0x41, 0x4e, 0x45, 0x4e,
  2255  	0x54, 0x4c, 0x59, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x01, 0x12, 0x09, 0x0a,
  2256  	0x05, 0x46, 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x02, 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x45, 0x45, 0x5f,
  2257  	0x4f, 0x54, 0x48, 0x45, 0x52, 0x10, 0x03, 0x12, 0x16, 0x0a, 0x12, 0x54, 0x45, 0x4d, 0x50, 0x4f,
  2258  	0x52, 0x41, 0x52, 0x59, 0x5f, 0x52, 0x45, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x10, 0x04, 0x12,
  2259  	0x16, 0x0a, 0x12, 0x50, 0x45, 0x52, 0x4d, 0x41, 0x4e, 0x45, 0x4e, 0x54, 0x5f, 0x52, 0x45, 0x44,
  2260  	0x49, 0x52, 0x45, 0x43, 0x54, 0x10, 0x05, 0x1a, 0xff, 0x02, 0x0a, 0x14, 0x46, 0x61, 0x75, 0x6c,
  2261  	0x74, 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79,
  2262  	0x12, 0x5b, 0x0a, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
  2263  	0x45, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e,
  2264  	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x76,
  2265  	0x31, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x46, 0x61, 0x75, 0x6c,
  2266  	0x74, 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79,
  2267  	0x2e, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x52, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x12, 0x5b, 0x0a,
  2268  	0x05, 0x61, 0x62, 0x6f, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x45, 0x2e, 0x67,
  2269  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x65, 0x74, 0x77,
  2270  	0x6f, 0x72, 0x6b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x48,
  2271  	0x74, 0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x46, 0x61, 0x75, 0x6c, 0x74, 0x49, 0x6e,
  2272  	0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x41, 0x62,
  2273  	0x6f, 0x72, 0x74, 0x52, 0x05, 0x61, 0x62, 0x6f, 0x72, 0x74, 0x1a, 0x63, 0x0a, 0x05, 0x44, 0x65,
  2274  	0x6c, 0x61, 0x79, 0x12, 0x3a, 0x0a, 0x0b, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x64, 0x65, 0x6c,
  2275  	0x61, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  2276  	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74,
  2277  	0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x66, 0x69, 0x78, 0x65, 0x64, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x12,
  2278  	0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20,
  2279  	0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x1a,
  2280  	0x48, 0x0a, 0x05, 0x41, 0x62, 0x6f, 0x72, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x74, 0x74, 0x70,
  2281  	0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x68,
  2282  	0x74, 0x74, 0x70, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72,
  2283  	0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70,
  2284  	0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x1a, 0xc4, 0x02, 0x0a, 0x0e, 0x48, 0x65,
  2285  	0x61, 0x64, 0x65, 0x72, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x54, 0x0a, 0x03,
  2286  	0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x42, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  2287  	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
  2288  	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x74, 0x74, 0x70,
  2289  	0x52, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x4d, 0x6f, 0x64, 0x69,
  2290  	0x66, 0x69, 0x65, 0x72, 0x2e, 0x53, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x03, 0x73,
  2291  	0x65, 0x74, 0x12, 0x54, 0x0a, 0x03, 0x61, 0x64, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32,
  2292  	0x42, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e,
  2293  	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x76,
  2294  	0x31, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x48, 0x65, 0x61, 0x64,
  2295  	0x65, 0x72, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x2e, 0x41, 0x64, 0x64, 0x45, 0x6e,
  2296  	0x74, 0x72, 0x79, 0x52, 0x03, 0x61, 0x64, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x6f,
  2297  	0x76, 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65,
  2298  	0x1a, 0x36, 0x0a, 0x08, 0x53, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03,
  2299  	0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14,
  2300  	0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76,
  2301  	0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x36, 0x0a, 0x08, 0x41, 0x64, 0x64, 0x45,
  2302  	0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28,
  2303  	0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18,
  2304  	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01,
  2305  	0x1a, 0x5f, 0x0a, 0x0a, 0x55, 0x52, 0x4c, 0x52, 0x65, 0x77, 0x72, 0x69, 0x74, 0x65, 0x12, 0x2e,
  2306  	0x0a, 0x13, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x5f, 0x72, 0x65,
  2307  	0x77, 0x72, 0x69, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x70, 0x61, 0x74,
  2308  	0x68, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x52, 0x65, 0x77, 0x72, 0x69, 0x74, 0x65, 0x12, 0x21,
  2309  	0x0a, 0x0c, 0x68, 0x6f, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x77, 0x72, 0x69, 0x74, 0x65, 0x18, 0x02,
  2310  	0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x68, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x77, 0x72, 0x69, 0x74,
  2311  	0x65, 0x1a, 0x9c, 0x01, 0x0a, 0x0b, 0x52, 0x65, 0x74, 0x72, 0x79, 0x50, 0x6f, 0x6c, 0x69, 0x63,
  2312  	0x79, 0x12, 0x29, 0x0a, 0x10, 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x6e, 0x64, 0x69,
  2313  	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x72, 0x65, 0x74,
  2314  	0x72, 0x79, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1f, 0x0a, 0x0b,
  2315  	0x6e, 0x75, 0x6d, 0x5f, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28,
  2316  	0x05, 0x52, 0x0a, 0x6e, 0x75, 0x6d, 0x52, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, 0x41, 0x0a,
  2317  	0x0f, 0x70, 0x65, 0x72, 0x5f, 0x74, 0x72, 0x79, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74,
  2318  	0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  2319  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f,
  2320  	0x6e, 0x52, 0x0d, 0x70, 0x65, 0x72, 0x54, 0x72, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74,
  2321  	0x1a, 0x6f, 0x0a, 0x13, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x69, 0x72, 0x72, 0x6f,
  2322  	0x72, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x58, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69,
  2323  	0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67,
  2324  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x65, 0x74, 0x77,
  2325  	0x6f, 0x72, 0x6b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x48,
  2326  	0x74, 0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61,
  2327  	0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f,
  2328  	0x6e, 0x1a, 0xb6, 0x02, 0x0a, 0x0a, 0x43, 0x6f, 0x72, 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79,
  2329  	0x12, 0x23, 0x0a, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e,
  2330  	0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4f, 0x72,
  2331  	0x69, 0x67, 0x69, 0x6e, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x6f,
  2332  	0x72, 0x69, 0x67, 0x69, 0x6e, 0x5f, 0x72, 0x65, 0x67, 0x65, 0x78, 0x65, 0x73, 0x18, 0x02, 0x20,
  2333  	0x03, 0x28, 0x09, 0x52, 0x12, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e,
  2334  	0x52, 0x65, 0x67, 0x65, 0x78, 0x65, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x77,
  2335  	0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c,
  2336  	0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x73, 0x12, 0x23, 0x0a, 0x0d,
  2337  	0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20,
  2338  	0x03, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72,
  2339  	0x73, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x78, 0x70, 0x6f, 0x73, 0x65, 0x5f, 0x68, 0x65, 0x61, 0x64,
  2340  	0x65, 0x72, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x65, 0x78, 0x70, 0x6f, 0x73,
  2341  	0x65, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x6d, 0x61, 0x78, 0x5f,
  2342  	0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x61, 0x78, 0x41, 0x67,
  2343  	0x65, 0x12, 0x2b, 0x0a, 0x11, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x65,
  2344  	0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x61, 0x6c,
  2345  	0x6c, 0x6f, 0x77, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, 0x1a,
  2346  	0x0a, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08,
  2347  	0x52, 0x08, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x1a, 0xcd, 0x07, 0x0a, 0x0b, 0x52,
  2348  	0x6f, 0x75, 0x74, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x5a, 0x0a, 0x0c, 0x64, 0x65,
  2349  	0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
  2350  	0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
  2351  	0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e,
  2352  	0x76, 0x31, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x44, 0x65, 0x73,
  2353  	0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e,
  2354  	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4f, 0x0a, 0x08, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65,
  2355  	0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  2356  	0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73,
  2357  	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x52,
  2358  	0x6f, 0x75, 0x74, 0x65, 0x2e, 0x52, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x52, 0x08, 0x72,
  2359  	0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x12, 0x75, 0x0a, 0x16, 0x66, 0x61, 0x75, 0x6c, 0x74,
  2360  	0x5f, 0x69, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63,
  2361  	0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2362  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x65,
  2363  	0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x52, 0x6f,
  2364  	0x75, 0x74, 0x65, 0x2e, 0x46, 0x61, 0x75, 0x6c, 0x74, 0x49, 0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69,
  2365  	0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x14, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x49,
  2366  	0x6e, 0x6a, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x71,
  2367  	0x0a, 0x17, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72,
  2368  	0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32,
  2369  	0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e,
  2370  	0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x76,
  2371  	0x31, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x48, 0x65, 0x61, 0x64,
  2372  	0x65, 0x72, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x15, 0x72, 0x65, 0x71, 0x75,
  2373  	0x65, 0x73, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65,
  2374  	0x72, 0x12, 0x73, 0x0a, 0x18, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x68, 0x65,
  2375  	0x61, 0x64, 0x65, 0x72, 0x5f, 0x6d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x18, 0x06, 0x20,
  2376  	0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
  2377  	0x75, 0x64, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
  2378  	0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x2e,
  2379  	0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x4d, 0x6f, 0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x52, 0x16,
  2380  	0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x4d, 0x6f,
  2381  	0x64, 0x69, 0x66, 0x69, 0x65, 0x72, 0x12, 0x56, 0x0a, 0x0b, 0x75, 0x72, 0x6c, 0x5f, 0x72, 0x65,
  2382  	0x77, 0x72, 0x69, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f,
  2383  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f,
  2384  	0x72, 0x6b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x74,
  2385  	0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x55, 0x52, 0x4c, 0x52, 0x65, 0x77, 0x72, 0x69,
  2386  	0x74, 0x65, 0x52, 0x0a, 0x75, 0x72, 0x6c, 0x52, 0x65, 0x77, 0x72, 0x69, 0x74, 0x65, 0x12, 0x33,
  2387  	0x0a, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32,
  2388  	0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
  2389  	0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x74, 0x69, 0x6d, 0x65,
  2390  	0x6f, 0x75, 0x74, 0x12, 0x59, 0x0a, 0x0c, 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x70, 0x6f, 0x6c,
  2391  	0x69, 0x63, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  2392  	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
  2393  	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x74, 0x74, 0x70,
  2394  	0x52, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x52, 0x65, 0x74, 0x72, 0x79, 0x50, 0x6f, 0x6c, 0x69, 0x63,
  2395  	0x79, 0x52, 0x0b, 0x72, 0x65, 0x74, 0x72, 0x79, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x72,
  2396  	0x0a, 0x15, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x6d, 0x69, 0x72, 0x72, 0x6f, 0x72,
  2397  	0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3e, 0x2e,
  2398  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x65, 0x74,
  2399  	0x77, 0x6f, 0x72, 0x6b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e,
  2400  	0x48, 0x74, 0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
  2401  	0x74, 0x4d, 0x69, 0x72, 0x72, 0x6f, 0x72, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x13, 0x72,
  2402  	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x69, 0x72, 0x72, 0x6f, 0x72, 0x50, 0x6f, 0x6c, 0x69,
  2403  	0x63, 0x79, 0x12, 0x56, 0x0a, 0x0b, 0x63, 0x6f, 0x72, 0x73, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63,
  2404  	0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
  2405  	0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x65,
  2406  	0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x52, 0x6f,
  2407  	0x75, 0x74, 0x65, 0x2e, 0x43, 0x6f, 0x72, 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x0a,
  2408  	0x63, 0x6f, 0x72, 0x73, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x1a, 0xac, 0x01, 0x0a, 0x09, 0x52,
  2409  	0x6f, 0x75, 0x74, 0x65, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x4f, 0x0a, 0x07, 0x6d, 0x61, 0x74, 0x63,
  2410  	0x68, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  2411  	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
  2412  	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x74, 0x74, 0x70,
  2413  	0x52, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x4d, 0x61, 0x74, 0x63, 0x68,
  2414  	0x52, 0x07, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x65, 0x73, 0x12, 0x4e, 0x0a, 0x06, 0x61, 0x63, 0x74,
  2415  	0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
  2416  	0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
  2417  	0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x74, 0x74, 0x70,
  2418  	0x52, 0x6f, 0x75, 0x74, 0x65, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f,
  2419  	0x6e, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62,
  2420  	0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18,
  2421  	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61,
  2422  	0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
  2423  	0x3a, 0x02, 0x38, 0x01, 0x3a, 0x6e, 0xea, 0x41, 0x6b, 0x0a, 0x28, 0x6e, 0x65, 0x74, 0x77, 0x6f,
  2424  	0x72, 0x6b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
  2425  	0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x48, 0x74, 0x74, 0x70, 0x52, 0x6f,
  2426  	0x75, 0x74, 0x65, 0x12, 0x3f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70,
  2427  	0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
  2428  	0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x68, 0x74, 0x74,
  2429  	0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x2f, 0x7b, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x72, 0x6f,
  2430  	0x75, 0x74, 0x65, 0x7d, 0x22, 0x9d, 0x01, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x48, 0x74, 0x74,
  2431  	0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x48,
  2432  	0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x30,
  2433  	0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2a, 0x12, 0x28, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73,
  2434  	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
  2435  	0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x48, 0x74, 0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65,
  2436  	0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65,
  2437  	0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67,
  2438  	0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f,
  2439  	0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54,
  2440  	0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x8d, 0x01, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x48, 0x74, 0x74,
  2441  	0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
  2442  	0x4b, 0x0a, 0x0b, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x18, 0x01,
  2443  	0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
  2444  	0x6f, 0x75, 0x64, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x65, 0x72, 0x76, 0x69,
  2445  	0x63, 0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65,
  2446  	0x52, 0x0a, 0x68, 0x74, 0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f,
  2447  	0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18,
  2448  	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54,
  2449  	0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x5b, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x48, 0x74, 0x74, 0x70, 0x52,
  2450  	0x6f, 0x75, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x44, 0x0a, 0x04, 0x6e,
  2451  	0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x30, 0xe0, 0x41, 0x02, 0xfa, 0x41,
  2452  	0x2a, 0x0a, 0x28, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
  2453  	0x65, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f,
  2454  	0x6d, 0x2f, 0x48, 0x74, 0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x04, 0x6e, 0x61, 0x6d,
  2455  	0x65, 0x22, 0xdb, 0x01, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x48, 0x74, 0x74, 0x70,
  2456  	0x52, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x48, 0x0a, 0x06,
  2457  	0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x30, 0xe0, 0x41,
  2458  	0x02, 0xfa, 0x41, 0x2a, 0x12, 0x28, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x65, 0x72,
  2459  	0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73,
  2460  	0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x48, 0x74, 0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x06,
  2461  	0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x27, 0x0a, 0x0d, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x72,
  2462  	0x6f, 0x75, 0x74, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
  2463  	0x41, 0x02, 0x52, 0x0b, 0x68, 0x74, 0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x49, 0x64, 0x12,
  2464  	0x4e, 0x0a, 0x0a, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x18, 0x03, 0x20,
  2465  	0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
  2466  	0x75, 0x64, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
  2467  	0x65, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x42,
  2468  	0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x68, 0x74, 0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x22,
  2469  	0xaa, 0x01, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x48, 0x74, 0x74, 0x70, 0x52, 0x6f,
  2470  	0x75, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70,
  2471  	0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
  2472  	0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
  2473  	0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42, 0x03, 0xe0, 0x41, 0x01,
  2474  	0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x4e, 0x0a, 0x0a,
  2475  	0x68, 0x74, 0x74, 0x70, 0x5f, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
  2476  	0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
  2477  	0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e,
  2478  	0x76, 0x31, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41,
  2479  	0x02, 0x52, 0x09, 0x68, 0x74, 0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x22, 0x5e, 0x0a, 0x16,
  2480  	0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x48, 0x74, 0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x52,
  2481  	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x44, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
  2482  	0x20, 0x01, 0x28, 0x09, 0x42, 0x30, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2a, 0x0a, 0x28, 0x6e, 0x65,
  2483  	0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x67, 0x6f,
  2484  	0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x48, 0x74, 0x74,
  2485  	0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x42, 0xf0, 0x01, 0x0a,
  2486  	0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
  2487  	0x64, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
  2488  	0x73, 0x2e, 0x76, 0x31, 0x42, 0x0e, 0x48, 0x74, 0x74, 0x70, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x50,
  2489  	0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x4e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67,
  2490  	0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f,
  2491  	0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x63, 0x6c,
  2492  	0x6f, 0x75, 0x64, 0x2f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x65, 0x72, 0x76, 0x69,
  2493  	0x63, 0x65, 0x73, 0x2f, 0x76, 0x31, 0x3b, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x73, 0x65,
  2494  	0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0xaa, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
  2495  	0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x65, 0x72,
  2496  	0x76, 0x69, 0x63, 0x65, 0x73, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 0x67, 0x6c,
  2497  	0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53,
  2498  	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x5c, 0x56, 0x31, 0xea, 0x02, 0x22, 0x47, 0x6f, 0x6f,
  2499  	0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x3a, 0x3a, 0x4e, 0x65, 0x74, 0x77,
  2500  	0x6f, 0x72, 0x6b, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, 0x3a, 0x3a, 0x56, 0x31, 0x62,
  2501  	0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
  2502  }
  2503  
  2504  var (
  2505  	file_google_cloud_networkservices_v1_http_route_proto_rawDescOnce sync.Once
  2506  	file_google_cloud_networkservices_v1_http_route_proto_rawDescData = file_google_cloud_networkservices_v1_http_route_proto_rawDesc
  2507  )
  2508  
  2509  func file_google_cloud_networkservices_v1_http_route_proto_rawDescGZIP() []byte {
  2510  	file_google_cloud_networkservices_v1_http_route_proto_rawDescOnce.Do(func() {
  2511  		file_google_cloud_networkservices_v1_http_route_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_networkservices_v1_http_route_proto_rawDescData)
  2512  	})
  2513  	return file_google_cloud_networkservices_v1_http_route_proto_rawDescData
  2514  }
  2515  
  2516  var file_google_cloud_networkservices_v1_http_route_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
  2517  var file_google_cloud_networkservices_v1_http_route_proto_msgTypes = make([]protoimpl.MessageInfo, 26)
  2518  var file_google_cloud_networkservices_v1_http_route_proto_goTypes = []interface{}{
  2519  	(HttpRoute_Redirect_ResponseCode)(0),         // 0: google.cloud.networkservices.v1.HttpRoute.Redirect.ResponseCode
  2520  	(*HttpRoute)(nil),                            // 1: google.cloud.networkservices.v1.HttpRoute
  2521  	(*ListHttpRoutesRequest)(nil),                // 2: google.cloud.networkservices.v1.ListHttpRoutesRequest
  2522  	(*ListHttpRoutesResponse)(nil),               // 3: google.cloud.networkservices.v1.ListHttpRoutesResponse
  2523  	(*GetHttpRouteRequest)(nil),                  // 4: google.cloud.networkservices.v1.GetHttpRouteRequest
  2524  	(*CreateHttpRouteRequest)(nil),               // 5: google.cloud.networkservices.v1.CreateHttpRouteRequest
  2525  	(*UpdateHttpRouteRequest)(nil),               // 6: google.cloud.networkservices.v1.UpdateHttpRouteRequest
  2526  	(*DeleteHttpRouteRequest)(nil),               // 7: google.cloud.networkservices.v1.DeleteHttpRouteRequest
  2527  	(*HttpRoute_HeaderMatch)(nil),                // 8: google.cloud.networkservices.v1.HttpRoute.HeaderMatch
  2528  	(*HttpRoute_QueryParameterMatch)(nil),        // 9: google.cloud.networkservices.v1.HttpRoute.QueryParameterMatch
  2529  	(*HttpRoute_RouteMatch)(nil),                 // 10: google.cloud.networkservices.v1.HttpRoute.RouteMatch
  2530  	(*HttpRoute_Destination)(nil),                // 11: google.cloud.networkservices.v1.HttpRoute.Destination
  2531  	(*HttpRoute_Redirect)(nil),                   // 12: google.cloud.networkservices.v1.HttpRoute.Redirect
  2532  	(*HttpRoute_FaultInjectionPolicy)(nil),       // 13: google.cloud.networkservices.v1.HttpRoute.FaultInjectionPolicy
  2533  	(*HttpRoute_HeaderModifier)(nil),             // 14: google.cloud.networkservices.v1.HttpRoute.HeaderModifier
  2534  	(*HttpRoute_URLRewrite)(nil),                 // 15: google.cloud.networkservices.v1.HttpRoute.URLRewrite
  2535  	(*HttpRoute_RetryPolicy)(nil),                // 16: google.cloud.networkservices.v1.HttpRoute.RetryPolicy
  2536  	(*HttpRoute_RequestMirrorPolicy)(nil),        // 17: google.cloud.networkservices.v1.HttpRoute.RequestMirrorPolicy
  2537  	(*HttpRoute_CorsPolicy)(nil),                 // 18: google.cloud.networkservices.v1.HttpRoute.CorsPolicy
  2538  	(*HttpRoute_RouteAction)(nil),                // 19: google.cloud.networkservices.v1.HttpRoute.RouteAction
  2539  	(*HttpRoute_RouteRule)(nil),                  // 20: google.cloud.networkservices.v1.HttpRoute.RouteRule
  2540  	nil,                                          // 21: google.cloud.networkservices.v1.HttpRoute.LabelsEntry
  2541  	(*HttpRoute_HeaderMatch_IntegerRange)(nil),   // 22: google.cloud.networkservices.v1.HttpRoute.HeaderMatch.IntegerRange
  2542  	(*HttpRoute_FaultInjectionPolicy_Delay)(nil), // 23: google.cloud.networkservices.v1.HttpRoute.FaultInjectionPolicy.Delay
  2543  	(*HttpRoute_FaultInjectionPolicy_Abort)(nil), // 24: google.cloud.networkservices.v1.HttpRoute.FaultInjectionPolicy.Abort
  2544  	nil,                           // 25: google.cloud.networkservices.v1.HttpRoute.HeaderModifier.SetEntry
  2545  	nil,                           // 26: google.cloud.networkservices.v1.HttpRoute.HeaderModifier.AddEntry
  2546  	(*timestamppb.Timestamp)(nil), // 27: google.protobuf.Timestamp
  2547  	(*fieldmaskpb.FieldMask)(nil), // 28: google.protobuf.FieldMask
  2548  	(*durationpb.Duration)(nil),   // 29: google.protobuf.Duration
  2549  }
  2550  var file_google_cloud_networkservices_v1_http_route_proto_depIdxs = []int32{
  2551  	27, // 0: google.cloud.networkservices.v1.HttpRoute.create_time:type_name -> google.protobuf.Timestamp
  2552  	27, // 1: google.cloud.networkservices.v1.HttpRoute.update_time:type_name -> google.protobuf.Timestamp
  2553  	21, // 2: google.cloud.networkservices.v1.HttpRoute.labels:type_name -> google.cloud.networkservices.v1.HttpRoute.LabelsEntry
  2554  	20, // 3: google.cloud.networkservices.v1.HttpRoute.rules:type_name -> google.cloud.networkservices.v1.HttpRoute.RouteRule
  2555  	1,  // 4: google.cloud.networkservices.v1.ListHttpRoutesResponse.http_routes:type_name -> google.cloud.networkservices.v1.HttpRoute
  2556  	1,  // 5: google.cloud.networkservices.v1.CreateHttpRouteRequest.http_route:type_name -> google.cloud.networkservices.v1.HttpRoute
  2557  	28, // 6: google.cloud.networkservices.v1.UpdateHttpRouteRequest.update_mask:type_name -> google.protobuf.FieldMask
  2558  	1,  // 7: google.cloud.networkservices.v1.UpdateHttpRouteRequest.http_route:type_name -> google.cloud.networkservices.v1.HttpRoute
  2559  	22, // 8: google.cloud.networkservices.v1.HttpRoute.HeaderMatch.range_match:type_name -> google.cloud.networkservices.v1.HttpRoute.HeaderMatch.IntegerRange
  2560  	8,  // 9: google.cloud.networkservices.v1.HttpRoute.RouteMatch.headers:type_name -> google.cloud.networkservices.v1.HttpRoute.HeaderMatch
  2561  	9,  // 10: google.cloud.networkservices.v1.HttpRoute.RouteMatch.query_parameters:type_name -> google.cloud.networkservices.v1.HttpRoute.QueryParameterMatch
  2562  	0,  // 11: google.cloud.networkservices.v1.HttpRoute.Redirect.response_code:type_name -> google.cloud.networkservices.v1.HttpRoute.Redirect.ResponseCode
  2563  	23, // 12: google.cloud.networkservices.v1.HttpRoute.FaultInjectionPolicy.delay:type_name -> google.cloud.networkservices.v1.HttpRoute.FaultInjectionPolicy.Delay
  2564  	24, // 13: google.cloud.networkservices.v1.HttpRoute.FaultInjectionPolicy.abort:type_name -> google.cloud.networkservices.v1.HttpRoute.FaultInjectionPolicy.Abort
  2565  	25, // 14: google.cloud.networkservices.v1.HttpRoute.HeaderModifier.set:type_name -> google.cloud.networkservices.v1.HttpRoute.HeaderModifier.SetEntry
  2566  	26, // 15: google.cloud.networkservices.v1.HttpRoute.HeaderModifier.add:type_name -> google.cloud.networkservices.v1.HttpRoute.HeaderModifier.AddEntry
  2567  	29, // 16: google.cloud.networkservices.v1.HttpRoute.RetryPolicy.per_try_timeout:type_name -> google.protobuf.Duration
  2568  	11, // 17: google.cloud.networkservices.v1.HttpRoute.RequestMirrorPolicy.destination:type_name -> google.cloud.networkservices.v1.HttpRoute.Destination
  2569  	11, // 18: google.cloud.networkservices.v1.HttpRoute.RouteAction.destinations:type_name -> google.cloud.networkservices.v1.HttpRoute.Destination
  2570  	12, // 19: google.cloud.networkservices.v1.HttpRoute.RouteAction.redirect:type_name -> google.cloud.networkservices.v1.HttpRoute.Redirect
  2571  	13, // 20: google.cloud.networkservices.v1.HttpRoute.RouteAction.fault_injection_policy:type_name -> google.cloud.networkservices.v1.HttpRoute.FaultInjectionPolicy
  2572  	14, // 21: google.cloud.networkservices.v1.HttpRoute.RouteAction.request_header_modifier:type_name -> google.cloud.networkservices.v1.HttpRoute.HeaderModifier
  2573  	14, // 22: google.cloud.networkservices.v1.HttpRoute.RouteAction.response_header_modifier:type_name -> google.cloud.networkservices.v1.HttpRoute.HeaderModifier
  2574  	15, // 23: google.cloud.networkservices.v1.HttpRoute.RouteAction.url_rewrite:type_name -> google.cloud.networkservices.v1.HttpRoute.URLRewrite
  2575  	29, // 24: google.cloud.networkservices.v1.HttpRoute.RouteAction.timeout:type_name -> google.protobuf.Duration
  2576  	16, // 25: google.cloud.networkservices.v1.HttpRoute.RouteAction.retry_policy:type_name -> google.cloud.networkservices.v1.HttpRoute.RetryPolicy
  2577  	17, // 26: google.cloud.networkservices.v1.HttpRoute.RouteAction.request_mirror_policy:type_name -> google.cloud.networkservices.v1.HttpRoute.RequestMirrorPolicy
  2578  	18, // 27: google.cloud.networkservices.v1.HttpRoute.RouteAction.cors_policy:type_name -> google.cloud.networkservices.v1.HttpRoute.CorsPolicy
  2579  	10, // 28: google.cloud.networkservices.v1.HttpRoute.RouteRule.matches:type_name -> google.cloud.networkservices.v1.HttpRoute.RouteMatch
  2580  	19, // 29: google.cloud.networkservices.v1.HttpRoute.RouteRule.action:type_name -> google.cloud.networkservices.v1.HttpRoute.RouteAction
  2581  	29, // 30: google.cloud.networkservices.v1.HttpRoute.FaultInjectionPolicy.Delay.fixed_delay:type_name -> google.protobuf.Duration
  2582  	31, // [31:31] is the sub-list for method output_type
  2583  	31, // [31:31] is the sub-list for method input_type
  2584  	31, // [31:31] is the sub-list for extension type_name
  2585  	31, // [31:31] is the sub-list for extension extendee
  2586  	0,  // [0:31] is the sub-list for field type_name
  2587  }
  2588  
  2589  func init() { file_google_cloud_networkservices_v1_http_route_proto_init() }
  2590  func file_google_cloud_networkservices_v1_http_route_proto_init() {
  2591  	if File_google_cloud_networkservices_v1_http_route_proto != nil {
  2592  		return
  2593  	}
  2594  	if !protoimpl.UnsafeEnabled {
  2595  		file_google_cloud_networkservices_v1_http_route_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
  2596  			switch v := v.(*HttpRoute); i {
  2597  			case 0:
  2598  				return &v.state
  2599  			case 1:
  2600  				return &v.sizeCache
  2601  			case 2:
  2602  				return &v.unknownFields
  2603  			default:
  2604  				return nil
  2605  			}
  2606  		}
  2607  		file_google_cloud_networkservices_v1_http_route_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
  2608  			switch v := v.(*ListHttpRoutesRequest); i {
  2609  			case 0:
  2610  				return &v.state
  2611  			case 1:
  2612  				return &v.sizeCache
  2613  			case 2:
  2614  				return &v.unknownFields
  2615  			default:
  2616  				return nil
  2617  			}
  2618  		}
  2619  		file_google_cloud_networkservices_v1_http_route_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
  2620  			switch v := v.(*ListHttpRoutesResponse); i {
  2621  			case 0:
  2622  				return &v.state
  2623  			case 1:
  2624  				return &v.sizeCache
  2625  			case 2:
  2626  				return &v.unknownFields
  2627  			default:
  2628  				return nil
  2629  			}
  2630  		}
  2631  		file_google_cloud_networkservices_v1_http_route_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
  2632  			switch v := v.(*GetHttpRouteRequest); i {
  2633  			case 0:
  2634  				return &v.state
  2635  			case 1:
  2636  				return &v.sizeCache
  2637  			case 2:
  2638  				return &v.unknownFields
  2639  			default:
  2640  				return nil
  2641  			}
  2642  		}
  2643  		file_google_cloud_networkservices_v1_http_route_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
  2644  			switch v := v.(*CreateHttpRouteRequest); i {
  2645  			case 0:
  2646  				return &v.state
  2647  			case 1:
  2648  				return &v.sizeCache
  2649  			case 2:
  2650  				return &v.unknownFields
  2651  			default:
  2652  				return nil
  2653  			}
  2654  		}
  2655  		file_google_cloud_networkservices_v1_http_route_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  2656  			switch v := v.(*UpdateHttpRouteRequest); i {
  2657  			case 0:
  2658  				return &v.state
  2659  			case 1:
  2660  				return &v.sizeCache
  2661  			case 2:
  2662  				return &v.unknownFields
  2663  			default:
  2664  				return nil
  2665  			}
  2666  		}
  2667  		file_google_cloud_networkservices_v1_http_route_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
  2668  			switch v := v.(*DeleteHttpRouteRequest); i {
  2669  			case 0:
  2670  				return &v.state
  2671  			case 1:
  2672  				return &v.sizeCache
  2673  			case 2:
  2674  				return &v.unknownFields
  2675  			default:
  2676  				return nil
  2677  			}
  2678  		}
  2679  		file_google_cloud_networkservices_v1_http_route_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
  2680  			switch v := v.(*HttpRoute_HeaderMatch); i {
  2681  			case 0:
  2682  				return &v.state
  2683  			case 1:
  2684  				return &v.sizeCache
  2685  			case 2:
  2686  				return &v.unknownFields
  2687  			default:
  2688  				return nil
  2689  			}
  2690  		}
  2691  		file_google_cloud_networkservices_v1_http_route_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
  2692  			switch v := v.(*HttpRoute_QueryParameterMatch); i {
  2693  			case 0:
  2694  				return &v.state
  2695  			case 1:
  2696  				return &v.sizeCache
  2697  			case 2:
  2698  				return &v.unknownFields
  2699  			default:
  2700  				return nil
  2701  			}
  2702  		}
  2703  		file_google_cloud_networkservices_v1_http_route_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
  2704  			switch v := v.(*HttpRoute_RouteMatch); i {
  2705  			case 0:
  2706  				return &v.state
  2707  			case 1:
  2708  				return &v.sizeCache
  2709  			case 2:
  2710  				return &v.unknownFields
  2711  			default:
  2712  				return nil
  2713  			}
  2714  		}
  2715  		file_google_cloud_networkservices_v1_http_route_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
  2716  			switch v := v.(*HttpRoute_Destination); i {
  2717  			case 0:
  2718  				return &v.state
  2719  			case 1:
  2720  				return &v.sizeCache
  2721  			case 2:
  2722  				return &v.unknownFields
  2723  			default:
  2724  				return nil
  2725  			}
  2726  		}
  2727  		file_google_cloud_networkservices_v1_http_route_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
  2728  			switch v := v.(*HttpRoute_Redirect); i {
  2729  			case 0:
  2730  				return &v.state
  2731  			case 1:
  2732  				return &v.sizeCache
  2733  			case 2:
  2734  				return &v.unknownFields
  2735  			default:
  2736  				return nil
  2737  			}
  2738  		}
  2739  		file_google_cloud_networkservices_v1_http_route_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
  2740  			switch v := v.(*HttpRoute_FaultInjectionPolicy); i {
  2741  			case 0:
  2742  				return &v.state
  2743  			case 1:
  2744  				return &v.sizeCache
  2745  			case 2:
  2746  				return &v.unknownFields
  2747  			default:
  2748  				return nil
  2749  			}
  2750  		}
  2751  		file_google_cloud_networkservices_v1_http_route_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
  2752  			switch v := v.(*HttpRoute_HeaderModifier); i {
  2753  			case 0:
  2754  				return &v.state
  2755  			case 1:
  2756  				return &v.sizeCache
  2757  			case 2:
  2758  				return &v.unknownFields
  2759  			default:
  2760  				return nil
  2761  			}
  2762  		}
  2763  		file_google_cloud_networkservices_v1_http_route_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
  2764  			switch v := v.(*HttpRoute_URLRewrite); i {
  2765  			case 0:
  2766  				return &v.state
  2767  			case 1:
  2768  				return &v.sizeCache
  2769  			case 2:
  2770  				return &v.unknownFields
  2771  			default:
  2772  				return nil
  2773  			}
  2774  		}
  2775  		file_google_cloud_networkservices_v1_http_route_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
  2776  			switch v := v.(*HttpRoute_RetryPolicy); i {
  2777  			case 0:
  2778  				return &v.state
  2779  			case 1:
  2780  				return &v.sizeCache
  2781  			case 2:
  2782  				return &v.unknownFields
  2783  			default:
  2784  				return nil
  2785  			}
  2786  		}
  2787  		file_google_cloud_networkservices_v1_http_route_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
  2788  			switch v := v.(*HttpRoute_RequestMirrorPolicy); i {
  2789  			case 0:
  2790  				return &v.state
  2791  			case 1:
  2792  				return &v.sizeCache
  2793  			case 2:
  2794  				return &v.unknownFields
  2795  			default:
  2796  				return nil
  2797  			}
  2798  		}
  2799  		file_google_cloud_networkservices_v1_http_route_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
  2800  			switch v := v.(*HttpRoute_CorsPolicy); i {
  2801  			case 0:
  2802  				return &v.state
  2803  			case 1:
  2804  				return &v.sizeCache
  2805  			case 2:
  2806  				return &v.unknownFields
  2807  			default:
  2808  				return nil
  2809  			}
  2810  		}
  2811  		file_google_cloud_networkservices_v1_http_route_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
  2812  			switch v := v.(*HttpRoute_RouteAction); i {
  2813  			case 0:
  2814  				return &v.state
  2815  			case 1:
  2816  				return &v.sizeCache
  2817  			case 2:
  2818  				return &v.unknownFields
  2819  			default:
  2820  				return nil
  2821  			}
  2822  		}
  2823  		file_google_cloud_networkservices_v1_http_route_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
  2824  			switch v := v.(*HttpRoute_RouteRule); i {
  2825  			case 0:
  2826  				return &v.state
  2827  			case 1:
  2828  				return &v.sizeCache
  2829  			case 2:
  2830  				return &v.unknownFields
  2831  			default:
  2832  				return nil
  2833  			}
  2834  		}
  2835  		file_google_cloud_networkservices_v1_http_route_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
  2836  			switch v := v.(*HttpRoute_HeaderMatch_IntegerRange); i {
  2837  			case 0:
  2838  				return &v.state
  2839  			case 1:
  2840  				return &v.sizeCache
  2841  			case 2:
  2842  				return &v.unknownFields
  2843  			default:
  2844  				return nil
  2845  			}
  2846  		}
  2847  		file_google_cloud_networkservices_v1_http_route_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
  2848  			switch v := v.(*HttpRoute_FaultInjectionPolicy_Delay); i {
  2849  			case 0:
  2850  				return &v.state
  2851  			case 1:
  2852  				return &v.sizeCache
  2853  			case 2:
  2854  				return &v.unknownFields
  2855  			default:
  2856  				return nil
  2857  			}
  2858  		}
  2859  		file_google_cloud_networkservices_v1_http_route_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
  2860  			switch v := v.(*HttpRoute_FaultInjectionPolicy_Abort); i {
  2861  			case 0:
  2862  				return &v.state
  2863  			case 1:
  2864  				return &v.sizeCache
  2865  			case 2:
  2866  				return &v.unknownFields
  2867  			default:
  2868  				return nil
  2869  			}
  2870  		}
  2871  	}
  2872  	file_google_cloud_networkservices_v1_http_route_proto_msgTypes[7].OneofWrappers = []interface{}{
  2873  		(*HttpRoute_HeaderMatch_ExactMatch)(nil),
  2874  		(*HttpRoute_HeaderMatch_RegexMatch)(nil),
  2875  		(*HttpRoute_HeaderMatch_PrefixMatch)(nil),
  2876  		(*HttpRoute_HeaderMatch_PresentMatch)(nil),
  2877  		(*HttpRoute_HeaderMatch_SuffixMatch)(nil),
  2878  		(*HttpRoute_HeaderMatch_RangeMatch)(nil),
  2879  	}
  2880  	file_google_cloud_networkservices_v1_http_route_proto_msgTypes[8].OneofWrappers = []interface{}{
  2881  		(*HttpRoute_QueryParameterMatch_ExactMatch)(nil),
  2882  		(*HttpRoute_QueryParameterMatch_RegexMatch)(nil),
  2883  		(*HttpRoute_QueryParameterMatch_PresentMatch)(nil),
  2884  	}
  2885  	file_google_cloud_networkservices_v1_http_route_proto_msgTypes[9].OneofWrappers = []interface{}{
  2886  		(*HttpRoute_RouteMatch_FullPathMatch)(nil),
  2887  		(*HttpRoute_RouteMatch_PrefixMatch)(nil),
  2888  		(*HttpRoute_RouteMatch_RegexMatch)(nil),
  2889  	}
  2890  	type x struct{}
  2891  	out := protoimpl.TypeBuilder{
  2892  		File: protoimpl.DescBuilder{
  2893  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  2894  			RawDescriptor: file_google_cloud_networkservices_v1_http_route_proto_rawDesc,
  2895  			NumEnums:      1,
  2896  			NumMessages:   26,
  2897  			NumExtensions: 0,
  2898  			NumServices:   0,
  2899  		},
  2900  		GoTypes:           file_google_cloud_networkservices_v1_http_route_proto_goTypes,
  2901  		DependencyIndexes: file_google_cloud_networkservices_v1_http_route_proto_depIdxs,
  2902  		EnumInfos:         file_google_cloud_networkservices_v1_http_route_proto_enumTypes,
  2903  		MessageInfos:      file_google_cloud_networkservices_v1_http_route_proto_msgTypes,
  2904  	}.Build()
  2905  	File_google_cloud_networkservices_v1_http_route_proto = out.File
  2906  	file_google_cloud_networkservices_v1_http_route_proto_rawDesc = nil
  2907  	file_google_cloud_networkservices_v1_http_route_proto_goTypes = nil
  2908  	file_google_cloud_networkservices_v1_http_route_proto_depIdxs = nil
  2909  }
  2910  

View as plain text