1 /* 2 * Copyright 2020 Google LLC 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * https://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 // Generated by the protocol buffer compiler. DO NOT EDIT! 17 // source: google/cloud/compute/v1/compute.proto 18 19 package com.google.cloud.compute.v1; 20 21 public interface HttpRouteRuleMatchOrBuilder 22 extends 23 // @@protoc_insertion_point(interface_extends:google.cloud.compute.v1.HttpRouteRuleMatch) 24 com.google.protobuf.MessageOrBuilder { 25 26 /** 27 * 28 * 29 * <pre> 30 * For satisfying the matchRule condition, the path of the request must exactly match the value specified in fullPathMatch after removing any query parameters and anchor that may be part of the original URL. fullPathMatch must be from 1 to 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch must be specified. 31 * </pre> 32 * 33 * <code>optional string full_path_match = 214598875;</code> 34 * 35 * @return Whether the fullPathMatch field is set. 36 */ hasFullPathMatch()37 boolean hasFullPathMatch(); 38 /** 39 * 40 * 41 * <pre> 42 * For satisfying the matchRule condition, the path of the request must exactly match the value specified in fullPathMatch after removing any query parameters and anchor that may be part of the original URL. fullPathMatch must be from 1 to 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch must be specified. 43 * </pre> 44 * 45 * <code>optional string full_path_match = 214598875;</code> 46 * 47 * @return The fullPathMatch. 48 */ getFullPathMatch()49 java.lang.String getFullPathMatch(); 50 /** 51 * 52 * 53 * <pre> 54 * For satisfying the matchRule condition, the path of the request must exactly match the value specified in fullPathMatch after removing any query parameters and anchor that may be part of the original URL. fullPathMatch must be from 1 to 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch must be specified. 55 * </pre> 56 * 57 * <code>optional string full_path_match = 214598875;</code> 58 * 59 * @return The bytes for fullPathMatch. 60 */ getFullPathMatchBytes()61 com.google.protobuf.ByteString getFullPathMatchBytes(); 62 63 /** 64 * 65 * 66 * <pre> 67 * Specifies a list of header match criteria, all of which must match corresponding headers in the request. 68 * </pre> 69 * 70 * <code>repeated .google.cloud.compute.v1.HttpHeaderMatch header_matches = 361903489;</code> 71 */ getHeaderMatchesList()72 java.util.List<com.google.cloud.compute.v1.HttpHeaderMatch> getHeaderMatchesList(); 73 /** 74 * 75 * 76 * <pre> 77 * Specifies a list of header match criteria, all of which must match corresponding headers in the request. 78 * </pre> 79 * 80 * <code>repeated .google.cloud.compute.v1.HttpHeaderMatch header_matches = 361903489;</code> 81 */ getHeaderMatches(int index)82 com.google.cloud.compute.v1.HttpHeaderMatch getHeaderMatches(int index); 83 /** 84 * 85 * 86 * <pre> 87 * Specifies a list of header match criteria, all of which must match corresponding headers in the request. 88 * </pre> 89 * 90 * <code>repeated .google.cloud.compute.v1.HttpHeaderMatch header_matches = 361903489;</code> 91 */ getHeaderMatchesCount()92 int getHeaderMatchesCount(); 93 /** 94 * 95 * 96 * <pre> 97 * Specifies a list of header match criteria, all of which must match corresponding headers in the request. 98 * </pre> 99 * 100 * <code>repeated .google.cloud.compute.v1.HttpHeaderMatch header_matches = 361903489;</code> 101 */ 102 java.util.List<? extends com.google.cloud.compute.v1.HttpHeaderMatchOrBuilder> getHeaderMatchesOrBuilderList()103 getHeaderMatchesOrBuilderList(); 104 /** 105 * 106 * 107 * <pre> 108 * Specifies a list of header match criteria, all of which must match corresponding headers in the request. 109 * </pre> 110 * 111 * <code>repeated .google.cloud.compute.v1.HttpHeaderMatch header_matches = 361903489;</code> 112 */ getHeaderMatchesOrBuilder(int index)113 com.google.cloud.compute.v1.HttpHeaderMatchOrBuilder getHeaderMatchesOrBuilder(int index); 114 115 /** 116 * 117 * 118 * <pre> 119 * Specifies that prefixMatch and fullPathMatch matches are case sensitive. The default value is false. ignoreCase must not be used with regexMatch. Not supported when the URL map is bound to a target gRPC proxy. 120 * </pre> 121 * 122 * <code>optional bool ignore_case = 464324989;</code> 123 * 124 * @return Whether the ignoreCase field is set. 125 */ hasIgnoreCase()126 boolean hasIgnoreCase(); 127 /** 128 * 129 * 130 * <pre> 131 * Specifies that prefixMatch and fullPathMatch matches are case sensitive. The default value is false. ignoreCase must not be used with regexMatch. Not supported when the URL map is bound to a target gRPC proxy. 132 * </pre> 133 * 134 * <code>optional bool ignore_case = 464324989;</code> 135 * 136 * @return The ignoreCase. 137 */ getIgnoreCase()138 boolean getIgnoreCase(); 139 140 /** 141 * 142 * 143 * <pre> 144 * Opaque filter criteria used by the load balancer to restrict routing configuration to a limited set of xDS compliant clients. In their xDS requests to the load balancer, xDS clients present node metadata. When there is a match, the relevant routing configuration is made available to those proxies. For each metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the filterLabels must match the corresponding label provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match with corresponding labels provided in the metadata. If multiple metadata filters are specified, all of them need to be satisfied in order to be considered a match. metadataFilters specified here is applied after those specified in ForwardingRule that refers to the UrlMap this HttpRouteRuleMatch belongs to. metadataFilters only applies to load balancers that have loadBalancingScheme set to INTERNAL_SELF_MANAGED. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true. 145 * </pre> 146 * 147 * <code>repeated .google.cloud.compute.v1.MetadataFilter metadata_filters = 464725739;</code> 148 */ getMetadataFiltersList()149 java.util.List<com.google.cloud.compute.v1.MetadataFilter> getMetadataFiltersList(); 150 /** 151 * 152 * 153 * <pre> 154 * Opaque filter criteria used by the load balancer to restrict routing configuration to a limited set of xDS compliant clients. In their xDS requests to the load balancer, xDS clients present node metadata. When there is a match, the relevant routing configuration is made available to those proxies. For each metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the filterLabels must match the corresponding label provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match with corresponding labels provided in the metadata. If multiple metadata filters are specified, all of them need to be satisfied in order to be considered a match. metadataFilters specified here is applied after those specified in ForwardingRule that refers to the UrlMap this HttpRouteRuleMatch belongs to. metadataFilters only applies to load balancers that have loadBalancingScheme set to INTERNAL_SELF_MANAGED. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true. 155 * </pre> 156 * 157 * <code>repeated .google.cloud.compute.v1.MetadataFilter metadata_filters = 464725739;</code> 158 */ getMetadataFilters(int index)159 com.google.cloud.compute.v1.MetadataFilter getMetadataFilters(int index); 160 /** 161 * 162 * 163 * <pre> 164 * Opaque filter criteria used by the load balancer to restrict routing configuration to a limited set of xDS compliant clients. In their xDS requests to the load balancer, xDS clients present node metadata. When there is a match, the relevant routing configuration is made available to those proxies. For each metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the filterLabels must match the corresponding label provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match with corresponding labels provided in the metadata. If multiple metadata filters are specified, all of them need to be satisfied in order to be considered a match. metadataFilters specified here is applied after those specified in ForwardingRule that refers to the UrlMap this HttpRouteRuleMatch belongs to. metadataFilters only applies to load balancers that have loadBalancingScheme set to INTERNAL_SELF_MANAGED. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true. 165 * </pre> 166 * 167 * <code>repeated .google.cloud.compute.v1.MetadataFilter metadata_filters = 464725739;</code> 168 */ getMetadataFiltersCount()169 int getMetadataFiltersCount(); 170 /** 171 * 172 * 173 * <pre> 174 * Opaque filter criteria used by the load balancer to restrict routing configuration to a limited set of xDS compliant clients. In their xDS requests to the load balancer, xDS clients present node metadata. When there is a match, the relevant routing configuration is made available to those proxies. For each metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the filterLabels must match the corresponding label provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match with corresponding labels provided in the metadata. If multiple metadata filters are specified, all of them need to be satisfied in order to be considered a match. metadataFilters specified here is applied after those specified in ForwardingRule that refers to the UrlMap this HttpRouteRuleMatch belongs to. metadataFilters only applies to load balancers that have loadBalancingScheme set to INTERNAL_SELF_MANAGED. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true. 175 * </pre> 176 * 177 * <code>repeated .google.cloud.compute.v1.MetadataFilter metadata_filters = 464725739;</code> 178 */ 179 java.util.List<? extends com.google.cloud.compute.v1.MetadataFilterOrBuilder> getMetadataFiltersOrBuilderList()180 getMetadataFiltersOrBuilderList(); 181 /** 182 * 183 * 184 * <pre> 185 * Opaque filter criteria used by the load balancer to restrict routing configuration to a limited set of xDS compliant clients. In their xDS requests to the load balancer, xDS clients present node metadata. When there is a match, the relevant routing configuration is made available to those proxies. For each metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the filterLabels must match the corresponding label provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match with corresponding labels provided in the metadata. If multiple metadata filters are specified, all of them need to be satisfied in order to be considered a match. metadataFilters specified here is applied after those specified in ForwardingRule that refers to the UrlMap this HttpRouteRuleMatch belongs to. metadataFilters only applies to load balancers that have loadBalancingScheme set to INTERNAL_SELF_MANAGED. Not supported when the URL map is bound to a target gRPC proxy that has validateForProxyless field set to true. 186 * </pre> 187 * 188 * <code>repeated .google.cloud.compute.v1.MetadataFilter metadata_filters = 464725739;</code> 189 */ getMetadataFiltersOrBuilder(int index)190 com.google.cloud.compute.v1.MetadataFilterOrBuilder getMetadataFiltersOrBuilder(int index); 191 192 /** 193 * 194 * 195 * <pre> 196 * For satisfying the matchRule condition, the request's path must begin with the specified prefixMatch. prefixMatch must begin with a /. The value must be from 1 to 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch must be specified. 197 * </pre> 198 * 199 * <code>optional string prefix_match = 257898968;</code> 200 * 201 * @return Whether the prefixMatch field is set. 202 */ hasPrefixMatch()203 boolean hasPrefixMatch(); 204 /** 205 * 206 * 207 * <pre> 208 * For satisfying the matchRule condition, the request's path must begin with the specified prefixMatch. prefixMatch must begin with a /. The value must be from 1 to 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch must be specified. 209 * </pre> 210 * 211 * <code>optional string prefix_match = 257898968;</code> 212 * 213 * @return The prefixMatch. 214 */ getPrefixMatch()215 java.lang.String getPrefixMatch(); 216 /** 217 * 218 * 219 * <pre> 220 * For satisfying the matchRule condition, the request's path must begin with the specified prefixMatch. prefixMatch must begin with a /. The value must be from 1 to 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch must be specified. 221 * </pre> 222 * 223 * <code>optional string prefix_match = 257898968;</code> 224 * 225 * @return The bytes for prefixMatch. 226 */ getPrefixMatchBytes()227 com.google.protobuf.ByteString getPrefixMatchBytes(); 228 229 /** 230 * 231 * 232 * <pre> 233 * Specifies a list of query parameter match criteria, all of which must match corresponding query parameters in the request. Not supported when the URL map is bound to a target gRPC proxy. 234 * </pre> 235 * 236 * <code> 237 * repeated .google.cloud.compute.v1.HttpQueryParameterMatch query_parameter_matches = 286231270; 238 * </code> 239 */ 240 java.util.List<com.google.cloud.compute.v1.HttpQueryParameterMatch> getQueryParameterMatchesList()241 getQueryParameterMatchesList(); 242 /** 243 * 244 * 245 * <pre> 246 * Specifies a list of query parameter match criteria, all of which must match corresponding query parameters in the request. Not supported when the URL map is bound to a target gRPC proxy. 247 * </pre> 248 * 249 * <code> 250 * repeated .google.cloud.compute.v1.HttpQueryParameterMatch query_parameter_matches = 286231270; 251 * </code> 252 */ getQueryParameterMatches(int index)253 com.google.cloud.compute.v1.HttpQueryParameterMatch getQueryParameterMatches(int index); 254 /** 255 * 256 * 257 * <pre> 258 * Specifies a list of query parameter match criteria, all of which must match corresponding query parameters in the request. Not supported when the URL map is bound to a target gRPC proxy. 259 * </pre> 260 * 261 * <code> 262 * repeated .google.cloud.compute.v1.HttpQueryParameterMatch query_parameter_matches = 286231270; 263 * </code> 264 */ getQueryParameterMatchesCount()265 int getQueryParameterMatchesCount(); 266 /** 267 * 268 * 269 * <pre> 270 * Specifies a list of query parameter match criteria, all of which must match corresponding query parameters in the request. Not supported when the URL map is bound to a target gRPC proxy. 271 * </pre> 272 * 273 * <code> 274 * repeated .google.cloud.compute.v1.HttpQueryParameterMatch query_parameter_matches = 286231270; 275 * </code> 276 */ 277 java.util.List<? extends com.google.cloud.compute.v1.HttpQueryParameterMatchOrBuilder> getQueryParameterMatchesOrBuilderList()278 getQueryParameterMatchesOrBuilderList(); 279 /** 280 * 281 * 282 * <pre> 283 * Specifies a list of query parameter match criteria, all of which must match corresponding query parameters in the request. Not supported when the URL map is bound to a target gRPC proxy. 284 * </pre> 285 * 286 * <code> 287 * repeated .google.cloud.compute.v1.HttpQueryParameterMatch query_parameter_matches = 286231270; 288 * </code> 289 */ getQueryParameterMatchesOrBuilder( int index)290 com.google.cloud.compute.v1.HttpQueryParameterMatchOrBuilder getQueryParameterMatchesOrBuilder( 291 int index); 292 293 /** 294 * 295 * 296 * <pre> 297 * For satisfying the matchRule condition, the path of the request must satisfy the regular expression specified in regexMatch after removing any query parameters and anchor supplied with the original URL. For more information about regular expression syntax, see Syntax. Only one of prefixMatch, fullPathMatch or regexMatch must be specified. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED. 298 * </pre> 299 * 300 * <code>optional string regex_match = 107387853;</code> 301 * 302 * @return Whether the regexMatch field is set. 303 */ hasRegexMatch()304 boolean hasRegexMatch(); 305 /** 306 * 307 * 308 * <pre> 309 * For satisfying the matchRule condition, the path of the request must satisfy the regular expression specified in regexMatch after removing any query parameters and anchor supplied with the original URL. For more information about regular expression syntax, see Syntax. Only one of prefixMatch, fullPathMatch or regexMatch must be specified. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED. 310 * </pre> 311 * 312 * <code>optional string regex_match = 107387853;</code> 313 * 314 * @return The regexMatch. 315 */ getRegexMatch()316 java.lang.String getRegexMatch(); 317 /** 318 * 319 * 320 * <pre> 321 * For satisfying the matchRule condition, the path of the request must satisfy the regular expression specified in regexMatch after removing any query parameters and anchor supplied with the original URL. For more information about regular expression syntax, see Syntax. Only one of prefixMatch, fullPathMatch or regexMatch must be specified. Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED. 322 * </pre> 323 * 324 * <code>optional string regex_match = 107387853;</code> 325 * 326 * @return The bytes for regexMatch. 327 */ getRegexMatchBytes()328 com.google.protobuf.ByteString getRegexMatchBytes(); 329 } 330