• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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/tasks/v2/target.proto
18 
19 package com.google.cloud.tasks.v2;
20 
21 /**
22  *
23  *
24  * <pre>
25  * HTTP request.
26  * The task will be pushed to the worker as an HTTP request. If the worker
27  * or the redirected worker acknowledges the task by returning a successful HTTP
28  * response code ([`200` - `299`]), the task will be removed from the queue. If
29  * any other HTTP response code is returned or no response is received, the
30  * task will be retried according to the following:
31  * * User-specified throttling: [retry
32  * configuration][google.cloud.tasks.v2.Queue.retry_config],
33  *   [rate limits][google.cloud.tasks.v2.Queue.rate_limits], and the [queue's
34  *   state][google.cloud.tasks.v2.Queue.state].
35  * * System throttling: To prevent the worker from overloading, Cloud Tasks may
36  *   temporarily reduce the queue's effective rate. User-specified settings
37  *   will not be changed.
38  *  System throttling happens because:
39  *   * Cloud Tasks backs off on all errors. Normally the backoff specified in
40  *     [rate limits][google.cloud.tasks.v2.Queue.rate_limits] will be used. But
41  *     if the worker returns `429` (Too Many Requests), `503` (Service
42  *     Unavailable), or the rate of errors is high, Cloud Tasks will use a
43  *     higher backoff rate. The retry specified in the `Retry-After` HTTP
44  *     response header is considered.
45  *   * To prevent traffic spikes and to smooth sudden increases in traffic,
46  *     dispatches ramp up slowly when the queue is newly created or idle and
47  *     if large numbers of tasks suddenly become available to dispatch (due to
48  *     spikes in create task rates, the queue being unpaused, or many tasks
49  *     that are scheduled at the same time).
50  * </pre>
51  *
52  * Protobuf type {@code google.cloud.tasks.v2.HttpRequest}
53  */
54 public final class HttpRequest extends com.google.protobuf.GeneratedMessageV3
55     implements
56     // @@protoc_insertion_point(message_implements:google.cloud.tasks.v2.HttpRequest)
57     HttpRequestOrBuilder {
58   private static final long serialVersionUID = 0L;
59   // Use HttpRequest.newBuilder() to construct.
HttpRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder)60   private HttpRequest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
61     super(builder);
62   }
63 
HttpRequest()64   private HttpRequest() {
65     url_ = "";
66     httpMethod_ = 0;
67     body_ = com.google.protobuf.ByteString.EMPTY;
68   }
69 
70   @java.lang.Override
71   @SuppressWarnings({"unused"})
newInstance(UnusedPrivateParameter unused)72   protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
73     return new HttpRequest();
74   }
75 
76   @java.lang.Override
getUnknownFields()77   public final com.google.protobuf.UnknownFieldSet getUnknownFields() {
78     return this.unknownFields;
79   }
80 
getDescriptor()81   public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
82     return com.google.cloud.tasks.v2.TargetProto
83         .internal_static_google_cloud_tasks_v2_HttpRequest_descriptor;
84   }
85 
86   @SuppressWarnings({"rawtypes"})
87   @java.lang.Override
internalGetMapField(int number)88   protected com.google.protobuf.MapField internalGetMapField(int number) {
89     switch (number) {
90       case 3:
91         return internalGetHeaders();
92       default:
93         throw new RuntimeException("Invalid map field number: " + number);
94     }
95   }
96 
97   @java.lang.Override
98   protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable()99       internalGetFieldAccessorTable() {
100     return com.google.cloud.tasks.v2.TargetProto
101         .internal_static_google_cloud_tasks_v2_HttpRequest_fieldAccessorTable
102         .ensureFieldAccessorsInitialized(
103             com.google.cloud.tasks.v2.HttpRequest.class,
104             com.google.cloud.tasks.v2.HttpRequest.Builder.class);
105   }
106 
107   private int authorizationHeaderCase_ = 0;
108   private java.lang.Object authorizationHeader_;
109 
110   public enum AuthorizationHeaderCase
111       implements
112           com.google.protobuf.Internal.EnumLite,
113           com.google.protobuf.AbstractMessage.InternalOneOfEnum {
114     OAUTH_TOKEN(5),
115     OIDC_TOKEN(6),
116     AUTHORIZATIONHEADER_NOT_SET(0);
117     private final int value;
118 
AuthorizationHeaderCase(int value)119     private AuthorizationHeaderCase(int value) {
120       this.value = value;
121     }
122     /**
123      * @param value The number of the enum to look for.
124      * @return The enum associated with the given number.
125      * @deprecated Use {@link #forNumber(int)} instead.
126      */
127     @java.lang.Deprecated
valueOf(int value)128     public static AuthorizationHeaderCase valueOf(int value) {
129       return forNumber(value);
130     }
131 
forNumber(int value)132     public static AuthorizationHeaderCase forNumber(int value) {
133       switch (value) {
134         case 5:
135           return OAUTH_TOKEN;
136         case 6:
137           return OIDC_TOKEN;
138         case 0:
139           return AUTHORIZATIONHEADER_NOT_SET;
140         default:
141           return null;
142       }
143     }
144 
getNumber()145     public int getNumber() {
146       return this.value;
147     }
148   };
149 
getAuthorizationHeaderCase()150   public AuthorizationHeaderCase getAuthorizationHeaderCase() {
151     return AuthorizationHeaderCase.forNumber(authorizationHeaderCase_);
152   }
153 
154   public static final int URL_FIELD_NUMBER = 1;
155 
156   @SuppressWarnings("serial")
157   private volatile java.lang.Object url_ = "";
158   /**
159    *
160    *
161    * <pre>
162    * Required. The full url path that the request will be sent to.
163    * This string must begin with either "http://" or "https://". Some examples
164    * are: `http://acme.com` and `https://acme.com/sales:8080`. Cloud Tasks will
165    * encode some characters for safety and compatibility. The maximum allowed
166    * URL length is 2083 characters after encoding.
167    * The `Location` header response from a redirect response [`300` - `399`]
168    * may be followed. The redirect is not counted as a separate attempt.
169    * </pre>
170    *
171    * <code>string url = 1 [(.google.api.field_behavior) = REQUIRED];</code>
172    *
173    * @return The url.
174    */
175   @java.lang.Override
getUrl()176   public java.lang.String getUrl() {
177     java.lang.Object ref = url_;
178     if (ref instanceof java.lang.String) {
179       return (java.lang.String) ref;
180     } else {
181       com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
182       java.lang.String s = bs.toStringUtf8();
183       url_ = s;
184       return s;
185     }
186   }
187   /**
188    *
189    *
190    * <pre>
191    * Required. The full url path that the request will be sent to.
192    * This string must begin with either "http://" or "https://". Some examples
193    * are: `http://acme.com` and `https://acme.com/sales:8080`. Cloud Tasks will
194    * encode some characters for safety and compatibility. The maximum allowed
195    * URL length is 2083 characters after encoding.
196    * The `Location` header response from a redirect response [`300` - `399`]
197    * may be followed. The redirect is not counted as a separate attempt.
198    * </pre>
199    *
200    * <code>string url = 1 [(.google.api.field_behavior) = REQUIRED];</code>
201    *
202    * @return The bytes for url.
203    */
204   @java.lang.Override
getUrlBytes()205   public com.google.protobuf.ByteString getUrlBytes() {
206     java.lang.Object ref = url_;
207     if (ref instanceof java.lang.String) {
208       com.google.protobuf.ByteString b =
209           com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
210       url_ = b;
211       return b;
212     } else {
213       return (com.google.protobuf.ByteString) ref;
214     }
215   }
216 
217   public static final int HTTP_METHOD_FIELD_NUMBER = 2;
218   private int httpMethod_ = 0;
219   /**
220    *
221    *
222    * <pre>
223    * The HTTP method to use for the request. The default is POST.
224    * </pre>
225    *
226    * <code>.google.cloud.tasks.v2.HttpMethod http_method = 2;</code>
227    *
228    * @return The enum numeric value on the wire for httpMethod.
229    */
230   @java.lang.Override
getHttpMethodValue()231   public int getHttpMethodValue() {
232     return httpMethod_;
233   }
234   /**
235    *
236    *
237    * <pre>
238    * The HTTP method to use for the request. The default is POST.
239    * </pre>
240    *
241    * <code>.google.cloud.tasks.v2.HttpMethod http_method = 2;</code>
242    *
243    * @return The httpMethod.
244    */
245   @java.lang.Override
getHttpMethod()246   public com.google.cloud.tasks.v2.HttpMethod getHttpMethod() {
247     com.google.cloud.tasks.v2.HttpMethod result =
248         com.google.cloud.tasks.v2.HttpMethod.forNumber(httpMethod_);
249     return result == null ? com.google.cloud.tasks.v2.HttpMethod.UNRECOGNIZED : result;
250   }
251 
252   public static final int HEADERS_FIELD_NUMBER = 3;
253 
254   private static final class HeadersDefaultEntryHolder {
255     static final com.google.protobuf.MapEntry<java.lang.String, java.lang.String> defaultEntry =
256         com.google.protobuf.MapEntry.<java.lang.String, java.lang.String>newDefaultInstance(
257             com.google.cloud.tasks.v2.TargetProto
258                 .internal_static_google_cloud_tasks_v2_HttpRequest_HeadersEntry_descriptor,
259             com.google.protobuf.WireFormat.FieldType.STRING,
260             "",
261             com.google.protobuf.WireFormat.FieldType.STRING,
262             "");
263   }
264 
265   @SuppressWarnings("serial")
266   private com.google.protobuf.MapField<java.lang.String, java.lang.String> headers_;
267 
internalGetHeaders()268   private com.google.protobuf.MapField<java.lang.String, java.lang.String> internalGetHeaders() {
269     if (headers_ == null) {
270       return com.google.protobuf.MapField.emptyMapField(HeadersDefaultEntryHolder.defaultEntry);
271     }
272     return headers_;
273   }
274 
getHeadersCount()275   public int getHeadersCount() {
276     return internalGetHeaders().getMap().size();
277   }
278   /**
279    *
280    *
281    * <pre>
282    * HTTP request headers.
283    * This map contains the header field names and values.
284    * Headers can be set when the
285    * [task is created][google.cloud.tasks.v2beta3.CloudTasks.CreateTask].
286    * These headers represent a subset of the headers that will accompany the
287    * task's HTTP request. Some HTTP request headers will be ignored or replaced.
288    * A partial list of headers that will be ignored or replaced is:
289    * * Host: This will be computed by Cloud Tasks and derived from
290    *   [HttpRequest.url][google.cloud.tasks.v2.HttpRequest.url].
291    * * Content-Length: This will be computed by Cloud Tasks.
292    * * User-Agent: This will be set to `"Google-Cloud-Tasks"`.
293    * * `X-Google-*`: Google use only.
294    * * `X-AppEngine-*`: Google use only.
295    * `Content-Type` won't be set by Cloud Tasks. You can explicitly set
296    * `Content-Type` to a media type when the
297    *  [task is created][google.cloud.tasks.v2beta3.CloudTasks.CreateTask].
298    *  For example, `Content-Type` can be set to `"application/octet-stream"` or
299    *  `"application/json"`.
300    * Headers which can have multiple values (according to RFC2616) can be
301    * specified using comma-separated values.
302    * The size of the headers must be less than 80KB.
303    * </pre>
304    *
305    * <code>map&lt;string, string&gt; headers = 3;</code>
306    */
307   @java.lang.Override
containsHeaders(java.lang.String key)308   public boolean containsHeaders(java.lang.String key) {
309     if (key == null) {
310       throw new NullPointerException("map key");
311     }
312     return internalGetHeaders().getMap().containsKey(key);
313   }
314   /** Use {@link #getHeadersMap()} instead. */
315   @java.lang.Override
316   @java.lang.Deprecated
getHeaders()317   public java.util.Map<java.lang.String, java.lang.String> getHeaders() {
318     return getHeadersMap();
319   }
320   /**
321    *
322    *
323    * <pre>
324    * HTTP request headers.
325    * This map contains the header field names and values.
326    * Headers can be set when the
327    * [task is created][google.cloud.tasks.v2beta3.CloudTasks.CreateTask].
328    * These headers represent a subset of the headers that will accompany the
329    * task's HTTP request. Some HTTP request headers will be ignored or replaced.
330    * A partial list of headers that will be ignored or replaced is:
331    * * Host: This will be computed by Cloud Tasks and derived from
332    *   [HttpRequest.url][google.cloud.tasks.v2.HttpRequest.url].
333    * * Content-Length: This will be computed by Cloud Tasks.
334    * * User-Agent: This will be set to `"Google-Cloud-Tasks"`.
335    * * `X-Google-*`: Google use only.
336    * * `X-AppEngine-*`: Google use only.
337    * `Content-Type` won't be set by Cloud Tasks. You can explicitly set
338    * `Content-Type` to a media type when the
339    *  [task is created][google.cloud.tasks.v2beta3.CloudTasks.CreateTask].
340    *  For example, `Content-Type` can be set to `"application/octet-stream"` or
341    *  `"application/json"`.
342    * Headers which can have multiple values (according to RFC2616) can be
343    * specified using comma-separated values.
344    * The size of the headers must be less than 80KB.
345    * </pre>
346    *
347    * <code>map&lt;string, string&gt; headers = 3;</code>
348    */
349   @java.lang.Override
getHeadersMap()350   public java.util.Map<java.lang.String, java.lang.String> getHeadersMap() {
351     return internalGetHeaders().getMap();
352   }
353   /**
354    *
355    *
356    * <pre>
357    * HTTP request headers.
358    * This map contains the header field names and values.
359    * Headers can be set when the
360    * [task is created][google.cloud.tasks.v2beta3.CloudTasks.CreateTask].
361    * These headers represent a subset of the headers that will accompany the
362    * task's HTTP request. Some HTTP request headers will be ignored or replaced.
363    * A partial list of headers that will be ignored or replaced is:
364    * * Host: This will be computed by Cloud Tasks and derived from
365    *   [HttpRequest.url][google.cloud.tasks.v2.HttpRequest.url].
366    * * Content-Length: This will be computed by Cloud Tasks.
367    * * User-Agent: This will be set to `"Google-Cloud-Tasks"`.
368    * * `X-Google-*`: Google use only.
369    * * `X-AppEngine-*`: Google use only.
370    * `Content-Type` won't be set by Cloud Tasks. You can explicitly set
371    * `Content-Type` to a media type when the
372    *  [task is created][google.cloud.tasks.v2beta3.CloudTasks.CreateTask].
373    *  For example, `Content-Type` can be set to `"application/octet-stream"` or
374    *  `"application/json"`.
375    * Headers which can have multiple values (according to RFC2616) can be
376    * specified using comma-separated values.
377    * The size of the headers must be less than 80KB.
378    * </pre>
379    *
380    * <code>map&lt;string, string&gt; headers = 3;</code>
381    */
382   @java.lang.Override
getHeadersOrDefault( java.lang.String key, java.lang.String defaultValue)383   public /* nullable */ java.lang.String getHeadersOrDefault(
384       java.lang.String key,
385       /* nullable */
386       java.lang.String defaultValue) {
387     if (key == null) {
388       throw new NullPointerException("map key");
389     }
390     java.util.Map<java.lang.String, java.lang.String> map = internalGetHeaders().getMap();
391     return map.containsKey(key) ? map.get(key) : defaultValue;
392   }
393   /**
394    *
395    *
396    * <pre>
397    * HTTP request headers.
398    * This map contains the header field names and values.
399    * Headers can be set when the
400    * [task is created][google.cloud.tasks.v2beta3.CloudTasks.CreateTask].
401    * These headers represent a subset of the headers that will accompany the
402    * task's HTTP request. Some HTTP request headers will be ignored or replaced.
403    * A partial list of headers that will be ignored or replaced is:
404    * * Host: This will be computed by Cloud Tasks and derived from
405    *   [HttpRequest.url][google.cloud.tasks.v2.HttpRequest.url].
406    * * Content-Length: This will be computed by Cloud Tasks.
407    * * User-Agent: This will be set to `"Google-Cloud-Tasks"`.
408    * * `X-Google-*`: Google use only.
409    * * `X-AppEngine-*`: Google use only.
410    * `Content-Type` won't be set by Cloud Tasks. You can explicitly set
411    * `Content-Type` to a media type when the
412    *  [task is created][google.cloud.tasks.v2beta3.CloudTasks.CreateTask].
413    *  For example, `Content-Type` can be set to `"application/octet-stream"` or
414    *  `"application/json"`.
415    * Headers which can have multiple values (according to RFC2616) can be
416    * specified using comma-separated values.
417    * The size of the headers must be less than 80KB.
418    * </pre>
419    *
420    * <code>map&lt;string, string&gt; headers = 3;</code>
421    */
422   @java.lang.Override
getHeadersOrThrow(java.lang.String key)423   public java.lang.String getHeadersOrThrow(java.lang.String key) {
424     if (key == null) {
425       throw new NullPointerException("map key");
426     }
427     java.util.Map<java.lang.String, java.lang.String> map = internalGetHeaders().getMap();
428     if (!map.containsKey(key)) {
429       throw new java.lang.IllegalArgumentException();
430     }
431     return map.get(key);
432   }
433 
434   public static final int BODY_FIELD_NUMBER = 4;
435   private com.google.protobuf.ByteString body_ = com.google.protobuf.ByteString.EMPTY;
436   /**
437    *
438    *
439    * <pre>
440    * HTTP request body.
441    * A request body is allowed only if the
442    * [HTTP method][google.cloud.tasks.v2.HttpRequest.http_method] is POST, PUT,
443    * or PATCH. It is an error to set body on a task with an incompatible
444    * [HttpMethod][google.cloud.tasks.v2.HttpMethod].
445    * </pre>
446    *
447    * <code>bytes body = 4;</code>
448    *
449    * @return The body.
450    */
451   @java.lang.Override
getBody()452   public com.google.protobuf.ByteString getBody() {
453     return body_;
454   }
455 
456   public static final int OAUTH_TOKEN_FIELD_NUMBER = 5;
457   /**
458    *
459    *
460    * <pre>
461    * If specified, an
462    * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
463    * will be generated and attached as an `Authorization` header in the HTTP
464    * request.
465    * This type of authorization should generally only be used when calling
466    * Google APIs hosted on *.googleapis.com.
467    * </pre>
468    *
469    * <code>.google.cloud.tasks.v2.OAuthToken oauth_token = 5;</code>
470    *
471    * @return Whether the oauthToken field is set.
472    */
473   @java.lang.Override
hasOauthToken()474   public boolean hasOauthToken() {
475     return authorizationHeaderCase_ == 5;
476   }
477   /**
478    *
479    *
480    * <pre>
481    * If specified, an
482    * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
483    * will be generated and attached as an `Authorization` header in the HTTP
484    * request.
485    * This type of authorization should generally only be used when calling
486    * Google APIs hosted on *.googleapis.com.
487    * </pre>
488    *
489    * <code>.google.cloud.tasks.v2.OAuthToken oauth_token = 5;</code>
490    *
491    * @return The oauthToken.
492    */
493   @java.lang.Override
getOauthToken()494   public com.google.cloud.tasks.v2.OAuthToken getOauthToken() {
495     if (authorizationHeaderCase_ == 5) {
496       return (com.google.cloud.tasks.v2.OAuthToken) authorizationHeader_;
497     }
498     return com.google.cloud.tasks.v2.OAuthToken.getDefaultInstance();
499   }
500   /**
501    *
502    *
503    * <pre>
504    * If specified, an
505    * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
506    * will be generated and attached as an `Authorization` header in the HTTP
507    * request.
508    * This type of authorization should generally only be used when calling
509    * Google APIs hosted on *.googleapis.com.
510    * </pre>
511    *
512    * <code>.google.cloud.tasks.v2.OAuthToken oauth_token = 5;</code>
513    */
514   @java.lang.Override
getOauthTokenOrBuilder()515   public com.google.cloud.tasks.v2.OAuthTokenOrBuilder getOauthTokenOrBuilder() {
516     if (authorizationHeaderCase_ == 5) {
517       return (com.google.cloud.tasks.v2.OAuthToken) authorizationHeader_;
518     }
519     return com.google.cloud.tasks.v2.OAuthToken.getDefaultInstance();
520   }
521 
522   public static final int OIDC_TOKEN_FIELD_NUMBER = 6;
523   /**
524    *
525    *
526    * <pre>
527    * If specified, an
528    * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
529    * token will be generated and attached as an `Authorization` header in the
530    * HTTP request.
531    * This type of authorization can be used for many scenarios, including
532    * calling Cloud Run, or endpoints where you intend to validate the token
533    * yourself.
534    * </pre>
535    *
536    * <code>.google.cloud.tasks.v2.OidcToken oidc_token = 6;</code>
537    *
538    * @return Whether the oidcToken field is set.
539    */
540   @java.lang.Override
hasOidcToken()541   public boolean hasOidcToken() {
542     return authorizationHeaderCase_ == 6;
543   }
544   /**
545    *
546    *
547    * <pre>
548    * If specified, an
549    * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
550    * token will be generated and attached as an `Authorization` header in the
551    * HTTP request.
552    * This type of authorization can be used for many scenarios, including
553    * calling Cloud Run, or endpoints where you intend to validate the token
554    * yourself.
555    * </pre>
556    *
557    * <code>.google.cloud.tasks.v2.OidcToken oidc_token = 6;</code>
558    *
559    * @return The oidcToken.
560    */
561   @java.lang.Override
getOidcToken()562   public com.google.cloud.tasks.v2.OidcToken getOidcToken() {
563     if (authorizationHeaderCase_ == 6) {
564       return (com.google.cloud.tasks.v2.OidcToken) authorizationHeader_;
565     }
566     return com.google.cloud.tasks.v2.OidcToken.getDefaultInstance();
567   }
568   /**
569    *
570    *
571    * <pre>
572    * If specified, an
573    * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
574    * token will be generated and attached as an `Authorization` header in the
575    * HTTP request.
576    * This type of authorization can be used for many scenarios, including
577    * calling Cloud Run, or endpoints where you intend to validate the token
578    * yourself.
579    * </pre>
580    *
581    * <code>.google.cloud.tasks.v2.OidcToken oidc_token = 6;</code>
582    */
583   @java.lang.Override
getOidcTokenOrBuilder()584   public com.google.cloud.tasks.v2.OidcTokenOrBuilder getOidcTokenOrBuilder() {
585     if (authorizationHeaderCase_ == 6) {
586       return (com.google.cloud.tasks.v2.OidcToken) authorizationHeader_;
587     }
588     return com.google.cloud.tasks.v2.OidcToken.getDefaultInstance();
589   }
590 
591   private byte memoizedIsInitialized = -1;
592 
593   @java.lang.Override
isInitialized()594   public final boolean isInitialized() {
595     byte isInitialized = memoizedIsInitialized;
596     if (isInitialized == 1) return true;
597     if (isInitialized == 0) return false;
598 
599     memoizedIsInitialized = 1;
600     return true;
601   }
602 
603   @java.lang.Override
writeTo(com.google.protobuf.CodedOutputStream output)604   public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
605     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(url_)) {
606       com.google.protobuf.GeneratedMessageV3.writeString(output, 1, url_);
607     }
608     if (httpMethod_ != com.google.cloud.tasks.v2.HttpMethod.HTTP_METHOD_UNSPECIFIED.getNumber()) {
609       output.writeEnum(2, httpMethod_);
610     }
611     com.google.protobuf.GeneratedMessageV3.serializeStringMapTo(
612         output, internalGetHeaders(), HeadersDefaultEntryHolder.defaultEntry, 3);
613     if (!body_.isEmpty()) {
614       output.writeBytes(4, body_);
615     }
616     if (authorizationHeaderCase_ == 5) {
617       output.writeMessage(5, (com.google.cloud.tasks.v2.OAuthToken) authorizationHeader_);
618     }
619     if (authorizationHeaderCase_ == 6) {
620       output.writeMessage(6, (com.google.cloud.tasks.v2.OidcToken) authorizationHeader_);
621     }
622     getUnknownFields().writeTo(output);
623   }
624 
625   @java.lang.Override
getSerializedSize()626   public int getSerializedSize() {
627     int size = memoizedSize;
628     if (size != -1) return size;
629 
630     size = 0;
631     if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(url_)) {
632       size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, url_);
633     }
634     if (httpMethod_ != com.google.cloud.tasks.v2.HttpMethod.HTTP_METHOD_UNSPECIFIED.getNumber()) {
635       size += com.google.protobuf.CodedOutputStream.computeEnumSize(2, httpMethod_);
636     }
637     for (java.util.Map.Entry<java.lang.String, java.lang.String> entry :
638         internalGetHeaders().getMap().entrySet()) {
639       com.google.protobuf.MapEntry<java.lang.String, java.lang.String> headers__ =
640           HeadersDefaultEntryHolder.defaultEntry
641               .newBuilderForType()
642               .setKey(entry.getKey())
643               .setValue(entry.getValue())
644               .build();
645       size += com.google.protobuf.CodedOutputStream.computeMessageSize(3, headers__);
646     }
647     if (!body_.isEmpty()) {
648       size += com.google.protobuf.CodedOutputStream.computeBytesSize(4, body_);
649     }
650     if (authorizationHeaderCase_ == 5) {
651       size +=
652           com.google.protobuf.CodedOutputStream.computeMessageSize(
653               5, (com.google.cloud.tasks.v2.OAuthToken) authorizationHeader_);
654     }
655     if (authorizationHeaderCase_ == 6) {
656       size +=
657           com.google.protobuf.CodedOutputStream.computeMessageSize(
658               6, (com.google.cloud.tasks.v2.OidcToken) authorizationHeader_);
659     }
660     size += getUnknownFields().getSerializedSize();
661     memoizedSize = size;
662     return size;
663   }
664 
665   @java.lang.Override
equals(final java.lang.Object obj)666   public boolean equals(final java.lang.Object obj) {
667     if (obj == this) {
668       return true;
669     }
670     if (!(obj instanceof com.google.cloud.tasks.v2.HttpRequest)) {
671       return super.equals(obj);
672     }
673     com.google.cloud.tasks.v2.HttpRequest other = (com.google.cloud.tasks.v2.HttpRequest) obj;
674 
675     if (!getUrl().equals(other.getUrl())) return false;
676     if (httpMethod_ != other.httpMethod_) return false;
677     if (!internalGetHeaders().equals(other.internalGetHeaders())) return false;
678     if (!getBody().equals(other.getBody())) return false;
679     if (!getAuthorizationHeaderCase().equals(other.getAuthorizationHeaderCase())) return false;
680     switch (authorizationHeaderCase_) {
681       case 5:
682         if (!getOauthToken().equals(other.getOauthToken())) return false;
683         break;
684       case 6:
685         if (!getOidcToken().equals(other.getOidcToken())) return false;
686         break;
687       case 0:
688       default:
689     }
690     if (!getUnknownFields().equals(other.getUnknownFields())) return false;
691     return true;
692   }
693 
694   @java.lang.Override
hashCode()695   public int hashCode() {
696     if (memoizedHashCode != 0) {
697       return memoizedHashCode;
698     }
699     int hash = 41;
700     hash = (19 * hash) + getDescriptor().hashCode();
701     hash = (37 * hash) + URL_FIELD_NUMBER;
702     hash = (53 * hash) + getUrl().hashCode();
703     hash = (37 * hash) + HTTP_METHOD_FIELD_NUMBER;
704     hash = (53 * hash) + httpMethod_;
705     if (!internalGetHeaders().getMap().isEmpty()) {
706       hash = (37 * hash) + HEADERS_FIELD_NUMBER;
707       hash = (53 * hash) + internalGetHeaders().hashCode();
708     }
709     hash = (37 * hash) + BODY_FIELD_NUMBER;
710     hash = (53 * hash) + getBody().hashCode();
711     switch (authorizationHeaderCase_) {
712       case 5:
713         hash = (37 * hash) + OAUTH_TOKEN_FIELD_NUMBER;
714         hash = (53 * hash) + getOauthToken().hashCode();
715         break;
716       case 6:
717         hash = (37 * hash) + OIDC_TOKEN_FIELD_NUMBER;
718         hash = (53 * hash) + getOidcToken().hashCode();
719         break;
720       case 0:
721       default:
722     }
723     hash = (29 * hash) + getUnknownFields().hashCode();
724     memoizedHashCode = hash;
725     return hash;
726   }
727 
parseFrom(java.nio.ByteBuffer data)728   public static com.google.cloud.tasks.v2.HttpRequest parseFrom(java.nio.ByteBuffer data)
729       throws com.google.protobuf.InvalidProtocolBufferException {
730     return PARSER.parseFrom(data);
731   }
732 
parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)733   public static com.google.cloud.tasks.v2.HttpRequest parseFrom(
734       java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
735       throws com.google.protobuf.InvalidProtocolBufferException {
736     return PARSER.parseFrom(data, extensionRegistry);
737   }
738 
parseFrom(com.google.protobuf.ByteString data)739   public static com.google.cloud.tasks.v2.HttpRequest parseFrom(com.google.protobuf.ByteString data)
740       throws com.google.protobuf.InvalidProtocolBufferException {
741     return PARSER.parseFrom(data);
742   }
743 
parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)744   public static com.google.cloud.tasks.v2.HttpRequest parseFrom(
745       com.google.protobuf.ByteString data,
746       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
747       throws com.google.protobuf.InvalidProtocolBufferException {
748     return PARSER.parseFrom(data, extensionRegistry);
749   }
750 
parseFrom(byte[] data)751   public static com.google.cloud.tasks.v2.HttpRequest parseFrom(byte[] data)
752       throws com.google.protobuf.InvalidProtocolBufferException {
753     return PARSER.parseFrom(data);
754   }
755 
parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)756   public static com.google.cloud.tasks.v2.HttpRequest parseFrom(
757       byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
758       throws com.google.protobuf.InvalidProtocolBufferException {
759     return PARSER.parseFrom(data, extensionRegistry);
760   }
761 
parseFrom(java.io.InputStream input)762   public static com.google.cloud.tasks.v2.HttpRequest parseFrom(java.io.InputStream input)
763       throws java.io.IOException {
764     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
765   }
766 
parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)767   public static com.google.cloud.tasks.v2.HttpRequest parseFrom(
768       java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
769       throws java.io.IOException {
770     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
771         PARSER, input, extensionRegistry);
772   }
773 
parseDelimitedFrom(java.io.InputStream input)774   public static com.google.cloud.tasks.v2.HttpRequest parseDelimitedFrom(java.io.InputStream input)
775       throws java.io.IOException {
776     return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
777   }
778 
parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)779   public static com.google.cloud.tasks.v2.HttpRequest parseDelimitedFrom(
780       java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
781       throws java.io.IOException {
782     return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(
783         PARSER, input, extensionRegistry);
784   }
785 
parseFrom( com.google.protobuf.CodedInputStream input)786   public static com.google.cloud.tasks.v2.HttpRequest parseFrom(
787       com.google.protobuf.CodedInputStream input) throws java.io.IOException {
788     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
789   }
790 
parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)791   public static com.google.cloud.tasks.v2.HttpRequest parseFrom(
792       com.google.protobuf.CodedInputStream input,
793       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
794       throws java.io.IOException {
795     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
796         PARSER, input, extensionRegistry);
797   }
798 
799   @java.lang.Override
newBuilderForType()800   public Builder newBuilderForType() {
801     return newBuilder();
802   }
803 
newBuilder()804   public static Builder newBuilder() {
805     return DEFAULT_INSTANCE.toBuilder();
806   }
807 
newBuilder(com.google.cloud.tasks.v2.HttpRequest prototype)808   public static Builder newBuilder(com.google.cloud.tasks.v2.HttpRequest prototype) {
809     return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
810   }
811 
812   @java.lang.Override
toBuilder()813   public Builder toBuilder() {
814     return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
815   }
816 
817   @java.lang.Override
newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)818   protected Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
819     Builder builder = new Builder(parent);
820     return builder;
821   }
822   /**
823    *
824    *
825    * <pre>
826    * HTTP request.
827    * The task will be pushed to the worker as an HTTP request. If the worker
828    * or the redirected worker acknowledges the task by returning a successful HTTP
829    * response code ([`200` - `299`]), the task will be removed from the queue. If
830    * any other HTTP response code is returned or no response is received, the
831    * task will be retried according to the following:
832    * * User-specified throttling: [retry
833    * configuration][google.cloud.tasks.v2.Queue.retry_config],
834    *   [rate limits][google.cloud.tasks.v2.Queue.rate_limits], and the [queue's
835    *   state][google.cloud.tasks.v2.Queue.state].
836    * * System throttling: To prevent the worker from overloading, Cloud Tasks may
837    *   temporarily reduce the queue's effective rate. User-specified settings
838    *   will not be changed.
839    *  System throttling happens because:
840    *   * Cloud Tasks backs off on all errors. Normally the backoff specified in
841    *     [rate limits][google.cloud.tasks.v2.Queue.rate_limits] will be used. But
842    *     if the worker returns `429` (Too Many Requests), `503` (Service
843    *     Unavailable), or the rate of errors is high, Cloud Tasks will use a
844    *     higher backoff rate. The retry specified in the `Retry-After` HTTP
845    *     response header is considered.
846    *   * To prevent traffic spikes and to smooth sudden increases in traffic,
847    *     dispatches ramp up slowly when the queue is newly created or idle and
848    *     if large numbers of tasks suddenly become available to dispatch (due to
849    *     spikes in create task rates, the queue being unpaused, or many tasks
850    *     that are scheduled at the same time).
851    * </pre>
852    *
853    * Protobuf type {@code google.cloud.tasks.v2.HttpRequest}
854    */
855   public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder>
856       implements
857       // @@protoc_insertion_point(builder_implements:google.cloud.tasks.v2.HttpRequest)
858       com.google.cloud.tasks.v2.HttpRequestOrBuilder {
getDescriptor()859     public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
860       return com.google.cloud.tasks.v2.TargetProto
861           .internal_static_google_cloud_tasks_v2_HttpRequest_descriptor;
862     }
863 
864     @SuppressWarnings({"rawtypes"})
internalGetMapField(int number)865     protected com.google.protobuf.MapField internalGetMapField(int number) {
866       switch (number) {
867         case 3:
868           return internalGetHeaders();
869         default:
870           throw new RuntimeException("Invalid map field number: " + number);
871       }
872     }
873 
874     @SuppressWarnings({"rawtypes"})
internalGetMutableMapField(int number)875     protected com.google.protobuf.MapField internalGetMutableMapField(int number) {
876       switch (number) {
877         case 3:
878           return internalGetMutableHeaders();
879         default:
880           throw new RuntimeException("Invalid map field number: " + number);
881       }
882     }
883 
884     @java.lang.Override
885     protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable()886         internalGetFieldAccessorTable() {
887       return com.google.cloud.tasks.v2.TargetProto
888           .internal_static_google_cloud_tasks_v2_HttpRequest_fieldAccessorTable
889           .ensureFieldAccessorsInitialized(
890               com.google.cloud.tasks.v2.HttpRequest.class,
891               com.google.cloud.tasks.v2.HttpRequest.Builder.class);
892     }
893 
894     // Construct using com.google.cloud.tasks.v2.HttpRequest.newBuilder()
Builder()895     private Builder() {}
896 
Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)897     private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
898       super(parent);
899     }
900 
901     @java.lang.Override
clear()902     public Builder clear() {
903       super.clear();
904       bitField0_ = 0;
905       url_ = "";
906       httpMethod_ = 0;
907       internalGetMutableHeaders().clear();
908       body_ = com.google.protobuf.ByteString.EMPTY;
909       if (oauthTokenBuilder_ != null) {
910         oauthTokenBuilder_.clear();
911       }
912       if (oidcTokenBuilder_ != null) {
913         oidcTokenBuilder_.clear();
914       }
915       authorizationHeaderCase_ = 0;
916       authorizationHeader_ = null;
917       return this;
918     }
919 
920     @java.lang.Override
getDescriptorForType()921     public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() {
922       return com.google.cloud.tasks.v2.TargetProto
923           .internal_static_google_cloud_tasks_v2_HttpRequest_descriptor;
924     }
925 
926     @java.lang.Override
getDefaultInstanceForType()927     public com.google.cloud.tasks.v2.HttpRequest getDefaultInstanceForType() {
928       return com.google.cloud.tasks.v2.HttpRequest.getDefaultInstance();
929     }
930 
931     @java.lang.Override
build()932     public com.google.cloud.tasks.v2.HttpRequest build() {
933       com.google.cloud.tasks.v2.HttpRequest result = buildPartial();
934       if (!result.isInitialized()) {
935         throw newUninitializedMessageException(result);
936       }
937       return result;
938     }
939 
940     @java.lang.Override
buildPartial()941     public com.google.cloud.tasks.v2.HttpRequest buildPartial() {
942       com.google.cloud.tasks.v2.HttpRequest result =
943           new com.google.cloud.tasks.v2.HttpRequest(this);
944       if (bitField0_ != 0) {
945         buildPartial0(result);
946       }
947       buildPartialOneofs(result);
948       onBuilt();
949       return result;
950     }
951 
buildPartial0(com.google.cloud.tasks.v2.HttpRequest result)952     private void buildPartial0(com.google.cloud.tasks.v2.HttpRequest result) {
953       int from_bitField0_ = bitField0_;
954       if (((from_bitField0_ & 0x00000001) != 0)) {
955         result.url_ = url_;
956       }
957       if (((from_bitField0_ & 0x00000002) != 0)) {
958         result.httpMethod_ = httpMethod_;
959       }
960       if (((from_bitField0_ & 0x00000004) != 0)) {
961         result.headers_ = internalGetHeaders();
962         result.headers_.makeImmutable();
963       }
964       if (((from_bitField0_ & 0x00000008) != 0)) {
965         result.body_ = body_;
966       }
967     }
968 
buildPartialOneofs(com.google.cloud.tasks.v2.HttpRequest result)969     private void buildPartialOneofs(com.google.cloud.tasks.v2.HttpRequest result) {
970       result.authorizationHeaderCase_ = authorizationHeaderCase_;
971       result.authorizationHeader_ = this.authorizationHeader_;
972       if (authorizationHeaderCase_ == 5 && oauthTokenBuilder_ != null) {
973         result.authorizationHeader_ = oauthTokenBuilder_.build();
974       }
975       if (authorizationHeaderCase_ == 6 && oidcTokenBuilder_ != null) {
976         result.authorizationHeader_ = oidcTokenBuilder_.build();
977       }
978     }
979 
980     @java.lang.Override
clone()981     public Builder clone() {
982       return super.clone();
983     }
984 
985     @java.lang.Override
setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)986     public Builder setField(
987         com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
988       return super.setField(field, value);
989     }
990 
991     @java.lang.Override
clearField(com.google.protobuf.Descriptors.FieldDescriptor field)992     public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) {
993       return super.clearField(field);
994     }
995 
996     @java.lang.Override
clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)997     public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) {
998       return super.clearOneof(oneof);
999     }
1000 
1001     @java.lang.Override
setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value)1002     public Builder setRepeatedField(
1003         com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) {
1004       return super.setRepeatedField(field, index, value);
1005     }
1006 
1007     @java.lang.Override
addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)1008     public Builder addRepeatedField(
1009         com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
1010       return super.addRepeatedField(field, value);
1011     }
1012 
1013     @java.lang.Override
mergeFrom(com.google.protobuf.Message other)1014     public Builder mergeFrom(com.google.protobuf.Message other) {
1015       if (other instanceof com.google.cloud.tasks.v2.HttpRequest) {
1016         return mergeFrom((com.google.cloud.tasks.v2.HttpRequest) other);
1017       } else {
1018         super.mergeFrom(other);
1019         return this;
1020       }
1021     }
1022 
mergeFrom(com.google.cloud.tasks.v2.HttpRequest other)1023     public Builder mergeFrom(com.google.cloud.tasks.v2.HttpRequest other) {
1024       if (other == com.google.cloud.tasks.v2.HttpRequest.getDefaultInstance()) return this;
1025       if (!other.getUrl().isEmpty()) {
1026         url_ = other.url_;
1027         bitField0_ |= 0x00000001;
1028         onChanged();
1029       }
1030       if (other.httpMethod_ != 0) {
1031         setHttpMethodValue(other.getHttpMethodValue());
1032       }
1033       internalGetMutableHeaders().mergeFrom(other.internalGetHeaders());
1034       bitField0_ |= 0x00000004;
1035       if (other.getBody() != com.google.protobuf.ByteString.EMPTY) {
1036         setBody(other.getBody());
1037       }
1038       switch (other.getAuthorizationHeaderCase()) {
1039         case OAUTH_TOKEN:
1040           {
1041             mergeOauthToken(other.getOauthToken());
1042             break;
1043           }
1044         case OIDC_TOKEN:
1045           {
1046             mergeOidcToken(other.getOidcToken());
1047             break;
1048           }
1049         case AUTHORIZATIONHEADER_NOT_SET:
1050           {
1051             break;
1052           }
1053       }
1054       this.mergeUnknownFields(other.getUnknownFields());
1055       onChanged();
1056       return this;
1057     }
1058 
1059     @java.lang.Override
isInitialized()1060     public final boolean isInitialized() {
1061       return true;
1062     }
1063 
1064     @java.lang.Override
mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)1065     public Builder mergeFrom(
1066         com.google.protobuf.CodedInputStream input,
1067         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1068         throws java.io.IOException {
1069       if (extensionRegistry == null) {
1070         throw new java.lang.NullPointerException();
1071       }
1072       try {
1073         boolean done = false;
1074         while (!done) {
1075           int tag = input.readTag();
1076           switch (tag) {
1077             case 0:
1078               done = true;
1079               break;
1080             case 10:
1081               {
1082                 url_ = input.readStringRequireUtf8();
1083                 bitField0_ |= 0x00000001;
1084                 break;
1085               } // case 10
1086             case 16:
1087               {
1088                 httpMethod_ = input.readEnum();
1089                 bitField0_ |= 0x00000002;
1090                 break;
1091               } // case 16
1092             case 26:
1093               {
1094                 com.google.protobuf.MapEntry<java.lang.String, java.lang.String> headers__ =
1095                     input.readMessage(
1096                         HeadersDefaultEntryHolder.defaultEntry.getParserForType(),
1097                         extensionRegistry);
1098                 internalGetMutableHeaders()
1099                     .getMutableMap()
1100                     .put(headers__.getKey(), headers__.getValue());
1101                 bitField0_ |= 0x00000004;
1102                 break;
1103               } // case 26
1104             case 34:
1105               {
1106                 body_ = input.readBytes();
1107                 bitField0_ |= 0x00000008;
1108                 break;
1109               } // case 34
1110             case 42:
1111               {
1112                 input.readMessage(getOauthTokenFieldBuilder().getBuilder(), extensionRegistry);
1113                 authorizationHeaderCase_ = 5;
1114                 break;
1115               } // case 42
1116             case 50:
1117               {
1118                 input.readMessage(getOidcTokenFieldBuilder().getBuilder(), extensionRegistry);
1119                 authorizationHeaderCase_ = 6;
1120                 break;
1121               } // case 50
1122             default:
1123               {
1124                 if (!super.parseUnknownField(input, extensionRegistry, tag)) {
1125                   done = true; // was an endgroup tag
1126                 }
1127                 break;
1128               } // default:
1129           } // switch (tag)
1130         } // while (!done)
1131       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
1132         throw e.unwrapIOException();
1133       } finally {
1134         onChanged();
1135       } // finally
1136       return this;
1137     }
1138 
1139     private int authorizationHeaderCase_ = 0;
1140     private java.lang.Object authorizationHeader_;
1141 
getAuthorizationHeaderCase()1142     public AuthorizationHeaderCase getAuthorizationHeaderCase() {
1143       return AuthorizationHeaderCase.forNumber(authorizationHeaderCase_);
1144     }
1145 
clearAuthorizationHeader()1146     public Builder clearAuthorizationHeader() {
1147       authorizationHeaderCase_ = 0;
1148       authorizationHeader_ = null;
1149       onChanged();
1150       return this;
1151     }
1152 
1153     private int bitField0_;
1154 
1155     private java.lang.Object url_ = "";
1156     /**
1157      *
1158      *
1159      * <pre>
1160      * Required. The full url path that the request will be sent to.
1161      * This string must begin with either "http://" or "https://". Some examples
1162      * are: `http://acme.com` and `https://acme.com/sales:8080`. Cloud Tasks will
1163      * encode some characters for safety and compatibility. The maximum allowed
1164      * URL length is 2083 characters after encoding.
1165      * The `Location` header response from a redirect response [`300` - `399`]
1166      * may be followed. The redirect is not counted as a separate attempt.
1167      * </pre>
1168      *
1169      * <code>string url = 1 [(.google.api.field_behavior) = REQUIRED];</code>
1170      *
1171      * @return The url.
1172      */
getUrl()1173     public java.lang.String getUrl() {
1174       java.lang.Object ref = url_;
1175       if (!(ref instanceof java.lang.String)) {
1176         com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
1177         java.lang.String s = bs.toStringUtf8();
1178         url_ = s;
1179         return s;
1180       } else {
1181         return (java.lang.String) ref;
1182       }
1183     }
1184     /**
1185      *
1186      *
1187      * <pre>
1188      * Required. The full url path that the request will be sent to.
1189      * This string must begin with either "http://" or "https://". Some examples
1190      * are: `http://acme.com` and `https://acme.com/sales:8080`. Cloud Tasks will
1191      * encode some characters for safety and compatibility. The maximum allowed
1192      * URL length is 2083 characters after encoding.
1193      * The `Location` header response from a redirect response [`300` - `399`]
1194      * may be followed. The redirect is not counted as a separate attempt.
1195      * </pre>
1196      *
1197      * <code>string url = 1 [(.google.api.field_behavior) = REQUIRED];</code>
1198      *
1199      * @return The bytes for url.
1200      */
getUrlBytes()1201     public com.google.protobuf.ByteString getUrlBytes() {
1202       java.lang.Object ref = url_;
1203       if (ref instanceof String) {
1204         com.google.protobuf.ByteString b =
1205             com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
1206         url_ = b;
1207         return b;
1208       } else {
1209         return (com.google.protobuf.ByteString) ref;
1210       }
1211     }
1212     /**
1213      *
1214      *
1215      * <pre>
1216      * Required. The full url path that the request will be sent to.
1217      * This string must begin with either "http://" or "https://". Some examples
1218      * are: `http://acme.com` and `https://acme.com/sales:8080`. Cloud Tasks will
1219      * encode some characters for safety and compatibility. The maximum allowed
1220      * URL length is 2083 characters after encoding.
1221      * The `Location` header response from a redirect response [`300` - `399`]
1222      * may be followed. The redirect is not counted as a separate attempt.
1223      * </pre>
1224      *
1225      * <code>string url = 1 [(.google.api.field_behavior) = REQUIRED];</code>
1226      *
1227      * @param value The url to set.
1228      * @return This builder for chaining.
1229      */
setUrl(java.lang.String value)1230     public Builder setUrl(java.lang.String value) {
1231       if (value == null) {
1232         throw new NullPointerException();
1233       }
1234       url_ = value;
1235       bitField0_ |= 0x00000001;
1236       onChanged();
1237       return this;
1238     }
1239     /**
1240      *
1241      *
1242      * <pre>
1243      * Required. The full url path that the request will be sent to.
1244      * This string must begin with either "http://" or "https://". Some examples
1245      * are: `http://acme.com` and `https://acme.com/sales:8080`. Cloud Tasks will
1246      * encode some characters for safety and compatibility. The maximum allowed
1247      * URL length is 2083 characters after encoding.
1248      * The `Location` header response from a redirect response [`300` - `399`]
1249      * may be followed. The redirect is not counted as a separate attempt.
1250      * </pre>
1251      *
1252      * <code>string url = 1 [(.google.api.field_behavior) = REQUIRED];</code>
1253      *
1254      * @return This builder for chaining.
1255      */
clearUrl()1256     public Builder clearUrl() {
1257       url_ = getDefaultInstance().getUrl();
1258       bitField0_ = (bitField0_ & ~0x00000001);
1259       onChanged();
1260       return this;
1261     }
1262     /**
1263      *
1264      *
1265      * <pre>
1266      * Required. The full url path that the request will be sent to.
1267      * This string must begin with either "http://" or "https://". Some examples
1268      * are: `http://acme.com` and `https://acme.com/sales:8080`. Cloud Tasks will
1269      * encode some characters for safety and compatibility. The maximum allowed
1270      * URL length is 2083 characters after encoding.
1271      * The `Location` header response from a redirect response [`300` - `399`]
1272      * may be followed. The redirect is not counted as a separate attempt.
1273      * </pre>
1274      *
1275      * <code>string url = 1 [(.google.api.field_behavior) = REQUIRED];</code>
1276      *
1277      * @param value The bytes for url to set.
1278      * @return This builder for chaining.
1279      */
setUrlBytes(com.google.protobuf.ByteString value)1280     public Builder setUrlBytes(com.google.protobuf.ByteString value) {
1281       if (value == null) {
1282         throw new NullPointerException();
1283       }
1284       checkByteStringIsUtf8(value);
1285       url_ = value;
1286       bitField0_ |= 0x00000001;
1287       onChanged();
1288       return this;
1289     }
1290 
1291     private int httpMethod_ = 0;
1292     /**
1293      *
1294      *
1295      * <pre>
1296      * The HTTP method to use for the request. The default is POST.
1297      * </pre>
1298      *
1299      * <code>.google.cloud.tasks.v2.HttpMethod http_method = 2;</code>
1300      *
1301      * @return The enum numeric value on the wire for httpMethod.
1302      */
1303     @java.lang.Override
getHttpMethodValue()1304     public int getHttpMethodValue() {
1305       return httpMethod_;
1306     }
1307     /**
1308      *
1309      *
1310      * <pre>
1311      * The HTTP method to use for the request. The default is POST.
1312      * </pre>
1313      *
1314      * <code>.google.cloud.tasks.v2.HttpMethod http_method = 2;</code>
1315      *
1316      * @param value The enum numeric value on the wire for httpMethod to set.
1317      * @return This builder for chaining.
1318      */
setHttpMethodValue(int value)1319     public Builder setHttpMethodValue(int value) {
1320       httpMethod_ = value;
1321       bitField0_ |= 0x00000002;
1322       onChanged();
1323       return this;
1324     }
1325     /**
1326      *
1327      *
1328      * <pre>
1329      * The HTTP method to use for the request. The default is POST.
1330      * </pre>
1331      *
1332      * <code>.google.cloud.tasks.v2.HttpMethod http_method = 2;</code>
1333      *
1334      * @return The httpMethod.
1335      */
1336     @java.lang.Override
getHttpMethod()1337     public com.google.cloud.tasks.v2.HttpMethod getHttpMethod() {
1338       com.google.cloud.tasks.v2.HttpMethod result =
1339           com.google.cloud.tasks.v2.HttpMethod.forNumber(httpMethod_);
1340       return result == null ? com.google.cloud.tasks.v2.HttpMethod.UNRECOGNIZED : result;
1341     }
1342     /**
1343      *
1344      *
1345      * <pre>
1346      * The HTTP method to use for the request. The default is POST.
1347      * </pre>
1348      *
1349      * <code>.google.cloud.tasks.v2.HttpMethod http_method = 2;</code>
1350      *
1351      * @param value The httpMethod to set.
1352      * @return This builder for chaining.
1353      */
setHttpMethod(com.google.cloud.tasks.v2.HttpMethod value)1354     public Builder setHttpMethod(com.google.cloud.tasks.v2.HttpMethod value) {
1355       if (value == null) {
1356         throw new NullPointerException();
1357       }
1358       bitField0_ |= 0x00000002;
1359       httpMethod_ = value.getNumber();
1360       onChanged();
1361       return this;
1362     }
1363     /**
1364      *
1365      *
1366      * <pre>
1367      * The HTTP method to use for the request. The default is POST.
1368      * </pre>
1369      *
1370      * <code>.google.cloud.tasks.v2.HttpMethod http_method = 2;</code>
1371      *
1372      * @return This builder for chaining.
1373      */
clearHttpMethod()1374     public Builder clearHttpMethod() {
1375       bitField0_ = (bitField0_ & ~0x00000002);
1376       httpMethod_ = 0;
1377       onChanged();
1378       return this;
1379     }
1380 
1381     private com.google.protobuf.MapField<java.lang.String, java.lang.String> headers_;
1382 
internalGetHeaders()1383     private com.google.protobuf.MapField<java.lang.String, java.lang.String> internalGetHeaders() {
1384       if (headers_ == null) {
1385         return com.google.protobuf.MapField.emptyMapField(HeadersDefaultEntryHolder.defaultEntry);
1386       }
1387       return headers_;
1388     }
1389 
1390     private com.google.protobuf.MapField<java.lang.String, java.lang.String>
internalGetMutableHeaders()1391         internalGetMutableHeaders() {
1392       if (headers_ == null) {
1393         headers_ = com.google.protobuf.MapField.newMapField(HeadersDefaultEntryHolder.defaultEntry);
1394       }
1395       if (!headers_.isMutable()) {
1396         headers_ = headers_.copy();
1397       }
1398       bitField0_ |= 0x00000004;
1399       onChanged();
1400       return headers_;
1401     }
1402 
getHeadersCount()1403     public int getHeadersCount() {
1404       return internalGetHeaders().getMap().size();
1405     }
1406     /**
1407      *
1408      *
1409      * <pre>
1410      * HTTP request headers.
1411      * This map contains the header field names and values.
1412      * Headers can be set when the
1413      * [task is created][google.cloud.tasks.v2beta3.CloudTasks.CreateTask].
1414      * These headers represent a subset of the headers that will accompany the
1415      * task's HTTP request. Some HTTP request headers will be ignored or replaced.
1416      * A partial list of headers that will be ignored or replaced is:
1417      * * Host: This will be computed by Cloud Tasks and derived from
1418      *   [HttpRequest.url][google.cloud.tasks.v2.HttpRequest.url].
1419      * * Content-Length: This will be computed by Cloud Tasks.
1420      * * User-Agent: This will be set to `"Google-Cloud-Tasks"`.
1421      * * `X-Google-*`: Google use only.
1422      * * `X-AppEngine-*`: Google use only.
1423      * `Content-Type` won't be set by Cloud Tasks. You can explicitly set
1424      * `Content-Type` to a media type when the
1425      *  [task is created][google.cloud.tasks.v2beta3.CloudTasks.CreateTask].
1426      *  For example, `Content-Type` can be set to `"application/octet-stream"` or
1427      *  `"application/json"`.
1428      * Headers which can have multiple values (according to RFC2616) can be
1429      * specified using comma-separated values.
1430      * The size of the headers must be less than 80KB.
1431      * </pre>
1432      *
1433      * <code>map&lt;string, string&gt; headers = 3;</code>
1434      */
1435     @java.lang.Override
containsHeaders(java.lang.String key)1436     public boolean containsHeaders(java.lang.String key) {
1437       if (key == null) {
1438         throw new NullPointerException("map key");
1439       }
1440       return internalGetHeaders().getMap().containsKey(key);
1441     }
1442     /** Use {@link #getHeadersMap()} instead. */
1443     @java.lang.Override
1444     @java.lang.Deprecated
getHeaders()1445     public java.util.Map<java.lang.String, java.lang.String> getHeaders() {
1446       return getHeadersMap();
1447     }
1448     /**
1449      *
1450      *
1451      * <pre>
1452      * HTTP request headers.
1453      * This map contains the header field names and values.
1454      * Headers can be set when the
1455      * [task is created][google.cloud.tasks.v2beta3.CloudTasks.CreateTask].
1456      * These headers represent a subset of the headers that will accompany the
1457      * task's HTTP request. Some HTTP request headers will be ignored or replaced.
1458      * A partial list of headers that will be ignored or replaced is:
1459      * * Host: This will be computed by Cloud Tasks and derived from
1460      *   [HttpRequest.url][google.cloud.tasks.v2.HttpRequest.url].
1461      * * Content-Length: This will be computed by Cloud Tasks.
1462      * * User-Agent: This will be set to `"Google-Cloud-Tasks"`.
1463      * * `X-Google-*`: Google use only.
1464      * * `X-AppEngine-*`: Google use only.
1465      * `Content-Type` won't be set by Cloud Tasks. You can explicitly set
1466      * `Content-Type` to a media type when the
1467      *  [task is created][google.cloud.tasks.v2beta3.CloudTasks.CreateTask].
1468      *  For example, `Content-Type` can be set to `"application/octet-stream"` or
1469      *  `"application/json"`.
1470      * Headers which can have multiple values (according to RFC2616) can be
1471      * specified using comma-separated values.
1472      * The size of the headers must be less than 80KB.
1473      * </pre>
1474      *
1475      * <code>map&lt;string, string&gt; headers = 3;</code>
1476      */
1477     @java.lang.Override
getHeadersMap()1478     public java.util.Map<java.lang.String, java.lang.String> getHeadersMap() {
1479       return internalGetHeaders().getMap();
1480     }
1481     /**
1482      *
1483      *
1484      * <pre>
1485      * HTTP request headers.
1486      * This map contains the header field names and values.
1487      * Headers can be set when the
1488      * [task is created][google.cloud.tasks.v2beta3.CloudTasks.CreateTask].
1489      * These headers represent a subset of the headers that will accompany the
1490      * task's HTTP request. Some HTTP request headers will be ignored or replaced.
1491      * A partial list of headers that will be ignored or replaced is:
1492      * * Host: This will be computed by Cloud Tasks and derived from
1493      *   [HttpRequest.url][google.cloud.tasks.v2.HttpRequest.url].
1494      * * Content-Length: This will be computed by Cloud Tasks.
1495      * * User-Agent: This will be set to `"Google-Cloud-Tasks"`.
1496      * * `X-Google-*`: Google use only.
1497      * * `X-AppEngine-*`: Google use only.
1498      * `Content-Type` won't be set by Cloud Tasks. You can explicitly set
1499      * `Content-Type` to a media type when the
1500      *  [task is created][google.cloud.tasks.v2beta3.CloudTasks.CreateTask].
1501      *  For example, `Content-Type` can be set to `"application/octet-stream"` or
1502      *  `"application/json"`.
1503      * Headers which can have multiple values (according to RFC2616) can be
1504      * specified using comma-separated values.
1505      * The size of the headers must be less than 80KB.
1506      * </pre>
1507      *
1508      * <code>map&lt;string, string&gt; headers = 3;</code>
1509      */
1510     @java.lang.Override
getHeadersOrDefault( java.lang.String key, java.lang.String defaultValue)1511     public /* nullable */ java.lang.String getHeadersOrDefault(
1512         java.lang.String key,
1513         /* nullable */
1514         java.lang.String defaultValue) {
1515       if (key == null) {
1516         throw new NullPointerException("map key");
1517       }
1518       java.util.Map<java.lang.String, java.lang.String> map = internalGetHeaders().getMap();
1519       return map.containsKey(key) ? map.get(key) : defaultValue;
1520     }
1521     /**
1522      *
1523      *
1524      * <pre>
1525      * HTTP request headers.
1526      * This map contains the header field names and values.
1527      * Headers can be set when the
1528      * [task is created][google.cloud.tasks.v2beta3.CloudTasks.CreateTask].
1529      * These headers represent a subset of the headers that will accompany the
1530      * task's HTTP request. Some HTTP request headers will be ignored or replaced.
1531      * A partial list of headers that will be ignored or replaced is:
1532      * * Host: This will be computed by Cloud Tasks and derived from
1533      *   [HttpRequest.url][google.cloud.tasks.v2.HttpRequest.url].
1534      * * Content-Length: This will be computed by Cloud Tasks.
1535      * * User-Agent: This will be set to `"Google-Cloud-Tasks"`.
1536      * * `X-Google-*`: Google use only.
1537      * * `X-AppEngine-*`: Google use only.
1538      * `Content-Type` won't be set by Cloud Tasks. You can explicitly set
1539      * `Content-Type` to a media type when the
1540      *  [task is created][google.cloud.tasks.v2beta3.CloudTasks.CreateTask].
1541      *  For example, `Content-Type` can be set to `"application/octet-stream"` or
1542      *  `"application/json"`.
1543      * Headers which can have multiple values (according to RFC2616) can be
1544      * specified using comma-separated values.
1545      * The size of the headers must be less than 80KB.
1546      * </pre>
1547      *
1548      * <code>map&lt;string, string&gt; headers = 3;</code>
1549      */
1550     @java.lang.Override
getHeadersOrThrow(java.lang.String key)1551     public java.lang.String getHeadersOrThrow(java.lang.String key) {
1552       if (key == null) {
1553         throw new NullPointerException("map key");
1554       }
1555       java.util.Map<java.lang.String, java.lang.String> map = internalGetHeaders().getMap();
1556       if (!map.containsKey(key)) {
1557         throw new java.lang.IllegalArgumentException();
1558       }
1559       return map.get(key);
1560     }
1561 
clearHeaders()1562     public Builder clearHeaders() {
1563       bitField0_ = (bitField0_ & ~0x00000004);
1564       internalGetMutableHeaders().getMutableMap().clear();
1565       return this;
1566     }
1567     /**
1568      *
1569      *
1570      * <pre>
1571      * HTTP request headers.
1572      * This map contains the header field names and values.
1573      * Headers can be set when the
1574      * [task is created][google.cloud.tasks.v2beta3.CloudTasks.CreateTask].
1575      * These headers represent a subset of the headers that will accompany the
1576      * task's HTTP request. Some HTTP request headers will be ignored or replaced.
1577      * A partial list of headers that will be ignored or replaced is:
1578      * * Host: This will be computed by Cloud Tasks and derived from
1579      *   [HttpRequest.url][google.cloud.tasks.v2.HttpRequest.url].
1580      * * Content-Length: This will be computed by Cloud Tasks.
1581      * * User-Agent: This will be set to `"Google-Cloud-Tasks"`.
1582      * * `X-Google-*`: Google use only.
1583      * * `X-AppEngine-*`: Google use only.
1584      * `Content-Type` won't be set by Cloud Tasks. You can explicitly set
1585      * `Content-Type` to a media type when the
1586      *  [task is created][google.cloud.tasks.v2beta3.CloudTasks.CreateTask].
1587      *  For example, `Content-Type` can be set to `"application/octet-stream"` or
1588      *  `"application/json"`.
1589      * Headers which can have multiple values (according to RFC2616) can be
1590      * specified using comma-separated values.
1591      * The size of the headers must be less than 80KB.
1592      * </pre>
1593      *
1594      * <code>map&lt;string, string&gt; headers = 3;</code>
1595      */
removeHeaders(java.lang.String key)1596     public Builder removeHeaders(java.lang.String key) {
1597       if (key == null) {
1598         throw new NullPointerException("map key");
1599       }
1600       internalGetMutableHeaders().getMutableMap().remove(key);
1601       return this;
1602     }
1603     /** Use alternate mutation accessors instead. */
1604     @java.lang.Deprecated
getMutableHeaders()1605     public java.util.Map<java.lang.String, java.lang.String> getMutableHeaders() {
1606       bitField0_ |= 0x00000004;
1607       return internalGetMutableHeaders().getMutableMap();
1608     }
1609     /**
1610      *
1611      *
1612      * <pre>
1613      * HTTP request headers.
1614      * This map contains the header field names and values.
1615      * Headers can be set when the
1616      * [task is created][google.cloud.tasks.v2beta3.CloudTasks.CreateTask].
1617      * These headers represent a subset of the headers that will accompany the
1618      * task's HTTP request. Some HTTP request headers will be ignored or replaced.
1619      * A partial list of headers that will be ignored or replaced is:
1620      * * Host: This will be computed by Cloud Tasks and derived from
1621      *   [HttpRequest.url][google.cloud.tasks.v2.HttpRequest.url].
1622      * * Content-Length: This will be computed by Cloud Tasks.
1623      * * User-Agent: This will be set to `"Google-Cloud-Tasks"`.
1624      * * `X-Google-*`: Google use only.
1625      * * `X-AppEngine-*`: Google use only.
1626      * `Content-Type` won't be set by Cloud Tasks. You can explicitly set
1627      * `Content-Type` to a media type when the
1628      *  [task is created][google.cloud.tasks.v2beta3.CloudTasks.CreateTask].
1629      *  For example, `Content-Type` can be set to `"application/octet-stream"` or
1630      *  `"application/json"`.
1631      * Headers which can have multiple values (according to RFC2616) can be
1632      * specified using comma-separated values.
1633      * The size of the headers must be less than 80KB.
1634      * </pre>
1635      *
1636      * <code>map&lt;string, string&gt; headers = 3;</code>
1637      */
putHeaders(java.lang.String key, java.lang.String value)1638     public Builder putHeaders(java.lang.String key, java.lang.String value) {
1639       if (key == null) {
1640         throw new NullPointerException("map key");
1641       }
1642       if (value == null) {
1643         throw new NullPointerException("map value");
1644       }
1645       internalGetMutableHeaders().getMutableMap().put(key, value);
1646       bitField0_ |= 0x00000004;
1647       return this;
1648     }
1649     /**
1650      *
1651      *
1652      * <pre>
1653      * HTTP request headers.
1654      * This map contains the header field names and values.
1655      * Headers can be set when the
1656      * [task is created][google.cloud.tasks.v2beta3.CloudTasks.CreateTask].
1657      * These headers represent a subset of the headers that will accompany the
1658      * task's HTTP request. Some HTTP request headers will be ignored or replaced.
1659      * A partial list of headers that will be ignored or replaced is:
1660      * * Host: This will be computed by Cloud Tasks and derived from
1661      *   [HttpRequest.url][google.cloud.tasks.v2.HttpRequest.url].
1662      * * Content-Length: This will be computed by Cloud Tasks.
1663      * * User-Agent: This will be set to `"Google-Cloud-Tasks"`.
1664      * * `X-Google-*`: Google use only.
1665      * * `X-AppEngine-*`: Google use only.
1666      * `Content-Type` won't be set by Cloud Tasks. You can explicitly set
1667      * `Content-Type` to a media type when the
1668      *  [task is created][google.cloud.tasks.v2beta3.CloudTasks.CreateTask].
1669      *  For example, `Content-Type` can be set to `"application/octet-stream"` or
1670      *  `"application/json"`.
1671      * Headers which can have multiple values (according to RFC2616) can be
1672      * specified using comma-separated values.
1673      * The size of the headers must be less than 80KB.
1674      * </pre>
1675      *
1676      * <code>map&lt;string, string&gt; headers = 3;</code>
1677      */
putAllHeaders(java.util.Map<java.lang.String, java.lang.String> values)1678     public Builder putAllHeaders(java.util.Map<java.lang.String, java.lang.String> values) {
1679       internalGetMutableHeaders().getMutableMap().putAll(values);
1680       bitField0_ |= 0x00000004;
1681       return this;
1682     }
1683 
1684     private com.google.protobuf.ByteString body_ = com.google.protobuf.ByteString.EMPTY;
1685     /**
1686      *
1687      *
1688      * <pre>
1689      * HTTP request body.
1690      * A request body is allowed only if the
1691      * [HTTP method][google.cloud.tasks.v2.HttpRequest.http_method] is POST, PUT,
1692      * or PATCH. It is an error to set body on a task with an incompatible
1693      * [HttpMethod][google.cloud.tasks.v2.HttpMethod].
1694      * </pre>
1695      *
1696      * <code>bytes body = 4;</code>
1697      *
1698      * @return The body.
1699      */
1700     @java.lang.Override
getBody()1701     public com.google.protobuf.ByteString getBody() {
1702       return body_;
1703     }
1704     /**
1705      *
1706      *
1707      * <pre>
1708      * HTTP request body.
1709      * A request body is allowed only if the
1710      * [HTTP method][google.cloud.tasks.v2.HttpRequest.http_method] is POST, PUT,
1711      * or PATCH. It is an error to set body on a task with an incompatible
1712      * [HttpMethod][google.cloud.tasks.v2.HttpMethod].
1713      * </pre>
1714      *
1715      * <code>bytes body = 4;</code>
1716      *
1717      * @param value The body to set.
1718      * @return This builder for chaining.
1719      */
setBody(com.google.protobuf.ByteString value)1720     public Builder setBody(com.google.protobuf.ByteString value) {
1721       if (value == null) {
1722         throw new NullPointerException();
1723       }
1724       body_ = value;
1725       bitField0_ |= 0x00000008;
1726       onChanged();
1727       return this;
1728     }
1729     /**
1730      *
1731      *
1732      * <pre>
1733      * HTTP request body.
1734      * A request body is allowed only if the
1735      * [HTTP method][google.cloud.tasks.v2.HttpRequest.http_method] is POST, PUT,
1736      * or PATCH. It is an error to set body on a task with an incompatible
1737      * [HttpMethod][google.cloud.tasks.v2.HttpMethod].
1738      * </pre>
1739      *
1740      * <code>bytes body = 4;</code>
1741      *
1742      * @return This builder for chaining.
1743      */
clearBody()1744     public Builder clearBody() {
1745       bitField0_ = (bitField0_ & ~0x00000008);
1746       body_ = getDefaultInstance().getBody();
1747       onChanged();
1748       return this;
1749     }
1750 
1751     private com.google.protobuf.SingleFieldBuilderV3<
1752             com.google.cloud.tasks.v2.OAuthToken,
1753             com.google.cloud.tasks.v2.OAuthToken.Builder,
1754             com.google.cloud.tasks.v2.OAuthTokenOrBuilder>
1755         oauthTokenBuilder_;
1756     /**
1757      *
1758      *
1759      * <pre>
1760      * If specified, an
1761      * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
1762      * will be generated and attached as an `Authorization` header in the HTTP
1763      * request.
1764      * This type of authorization should generally only be used when calling
1765      * Google APIs hosted on *.googleapis.com.
1766      * </pre>
1767      *
1768      * <code>.google.cloud.tasks.v2.OAuthToken oauth_token = 5;</code>
1769      *
1770      * @return Whether the oauthToken field is set.
1771      */
1772     @java.lang.Override
hasOauthToken()1773     public boolean hasOauthToken() {
1774       return authorizationHeaderCase_ == 5;
1775     }
1776     /**
1777      *
1778      *
1779      * <pre>
1780      * If specified, an
1781      * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
1782      * will be generated and attached as an `Authorization` header in the HTTP
1783      * request.
1784      * This type of authorization should generally only be used when calling
1785      * Google APIs hosted on *.googleapis.com.
1786      * </pre>
1787      *
1788      * <code>.google.cloud.tasks.v2.OAuthToken oauth_token = 5;</code>
1789      *
1790      * @return The oauthToken.
1791      */
1792     @java.lang.Override
getOauthToken()1793     public com.google.cloud.tasks.v2.OAuthToken getOauthToken() {
1794       if (oauthTokenBuilder_ == null) {
1795         if (authorizationHeaderCase_ == 5) {
1796           return (com.google.cloud.tasks.v2.OAuthToken) authorizationHeader_;
1797         }
1798         return com.google.cloud.tasks.v2.OAuthToken.getDefaultInstance();
1799       } else {
1800         if (authorizationHeaderCase_ == 5) {
1801           return oauthTokenBuilder_.getMessage();
1802         }
1803         return com.google.cloud.tasks.v2.OAuthToken.getDefaultInstance();
1804       }
1805     }
1806     /**
1807      *
1808      *
1809      * <pre>
1810      * If specified, an
1811      * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
1812      * will be generated and attached as an `Authorization` header in the HTTP
1813      * request.
1814      * This type of authorization should generally only be used when calling
1815      * Google APIs hosted on *.googleapis.com.
1816      * </pre>
1817      *
1818      * <code>.google.cloud.tasks.v2.OAuthToken oauth_token = 5;</code>
1819      */
setOauthToken(com.google.cloud.tasks.v2.OAuthToken value)1820     public Builder setOauthToken(com.google.cloud.tasks.v2.OAuthToken value) {
1821       if (oauthTokenBuilder_ == null) {
1822         if (value == null) {
1823           throw new NullPointerException();
1824         }
1825         authorizationHeader_ = value;
1826         onChanged();
1827       } else {
1828         oauthTokenBuilder_.setMessage(value);
1829       }
1830       authorizationHeaderCase_ = 5;
1831       return this;
1832     }
1833     /**
1834      *
1835      *
1836      * <pre>
1837      * If specified, an
1838      * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
1839      * will be generated and attached as an `Authorization` header in the HTTP
1840      * request.
1841      * This type of authorization should generally only be used when calling
1842      * Google APIs hosted on *.googleapis.com.
1843      * </pre>
1844      *
1845      * <code>.google.cloud.tasks.v2.OAuthToken oauth_token = 5;</code>
1846      */
setOauthToken(com.google.cloud.tasks.v2.OAuthToken.Builder builderForValue)1847     public Builder setOauthToken(com.google.cloud.tasks.v2.OAuthToken.Builder builderForValue) {
1848       if (oauthTokenBuilder_ == null) {
1849         authorizationHeader_ = builderForValue.build();
1850         onChanged();
1851       } else {
1852         oauthTokenBuilder_.setMessage(builderForValue.build());
1853       }
1854       authorizationHeaderCase_ = 5;
1855       return this;
1856     }
1857     /**
1858      *
1859      *
1860      * <pre>
1861      * If specified, an
1862      * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
1863      * will be generated and attached as an `Authorization` header in the HTTP
1864      * request.
1865      * This type of authorization should generally only be used when calling
1866      * Google APIs hosted on *.googleapis.com.
1867      * </pre>
1868      *
1869      * <code>.google.cloud.tasks.v2.OAuthToken oauth_token = 5;</code>
1870      */
mergeOauthToken(com.google.cloud.tasks.v2.OAuthToken value)1871     public Builder mergeOauthToken(com.google.cloud.tasks.v2.OAuthToken value) {
1872       if (oauthTokenBuilder_ == null) {
1873         if (authorizationHeaderCase_ == 5
1874             && authorizationHeader_ != com.google.cloud.tasks.v2.OAuthToken.getDefaultInstance()) {
1875           authorizationHeader_ =
1876               com.google.cloud.tasks.v2.OAuthToken.newBuilder(
1877                       (com.google.cloud.tasks.v2.OAuthToken) authorizationHeader_)
1878                   .mergeFrom(value)
1879                   .buildPartial();
1880         } else {
1881           authorizationHeader_ = value;
1882         }
1883         onChanged();
1884       } else {
1885         if (authorizationHeaderCase_ == 5) {
1886           oauthTokenBuilder_.mergeFrom(value);
1887         } else {
1888           oauthTokenBuilder_.setMessage(value);
1889         }
1890       }
1891       authorizationHeaderCase_ = 5;
1892       return this;
1893     }
1894     /**
1895      *
1896      *
1897      * <pre>
1898      * If specified, an
1899      * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
1900      * will be generated and attached as an `Authorization` header in the HTTP
1901      * request.
1902      * This type of authorization should generally only be used when calling
1903      * Google APIs hosted on *.googleapis.com.
1904      * </pre>
1905      *
1906      * <code>.google.cloud.tasks.v2.OAuthToken oauth_token = 5;</code>
1907      */
clearOauthToken()1908     public Builder clearOauthToken() {
1909       if (oauthTokenBuilder_ == null) {
1910         if (authorizationHeaderCase_ == 5) {
1911           authorizationHeaderCase_ = 0;
1912           authorizationHeader_ = null;
1913           onChanged();
1914         }
1915       } else {
1916         if (authorizationHeaderCase_ == 5) {
1917           authorizationHeaderCase_ = 0;
1918           authorizationHeader_ = null;
1919         }
1920         oauthTokenBuilder_.clear();
1921       }
1922       return this;
1923     }
1924     /**
1925      *
1926      *
1927      * <pre>
1928      * If specified, an
1929      * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
1930      * will be generated and attached as an `Authorization` header in the HTTP
1931      * request.
1932      * This type of authorization should generally only be used when calling
1933      * Google APIs hosted on *.googleapis.com.
1934      * </pre>
1935      *
1936      * <code>.google.cloud.tasks.v2.OAuthToken oauth_token = 5;</code>
1937      */
getOauthTokenBuilder()1938     public com.google.cloud.tasks.v2.OAuthToken.Builder getOauthTokenBuilder() {
1939       return getOauthTokenFieldBuilder().getBuilder();
1940     }
1941     /**
1942      *
1943      *
1944      * <pre>
1945      * If specified, an
1946      * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
1947      * will be generated and attached as an `Authorization` header in the HTTP
1948      * request.
1949      * This type of authorization should generally only be used when calling
1950      * Google APIs hosted on *.googleapis.com.
1951      * </pre>
1952      *
1953      * <code>.google.cloud.tasks.v2.OAuthToken oauth_token = 5;</code>
1954      */
1955     @java.lang.Override
getOauthTokenOrBuilder()1956     public com.google.cloud.tasks.v2.OAuthTokenOrBuilder getOauthTokenOrBuilder() {
1957       if ((authorizationHeaderCase_ == 5) && (oauthTokenBuilder_ != null)) {
1958         return oauthTokenBuilder_.getMessageOrBuilder();
1959       } else {
1960         if (authorizationHeaderCase_ == 5) {
1961           return (com.google.cloud.tasks.v2.OAuthToken) authorizationHeader_;
1962         }
1963         return com.google.cloud.tasks.v2.OAuthToken.getDefaultInstance();
1964       }
1965     }
1966     /**
1967      *
1968      *
1969      * <pre>
1970      * If specified, an
1971      * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
1972      * will be generated and attached as an `Authorization` header in the HTTP
1973      * request.
1974      * This type of authorization should generally only be used when calling
1975      * Google APIs hosted on *.googleapis.com.
1976      * </pre>
1977      *
1978      * <code>.google.cloud.tasks.v2.OAuthToken oauth_token = 5;</code>
1979      */
1980     private com.google.protobuf.SingleFieldBuilderV3<
1981             com.google.cloud.tasks.v2.OAuthToken,
1982             com.google.cloud.tasks.v2.OAuthToken.Builder,
1983             com.google.cloud.tasks.v2.OAuthTokenOrBuilder>
getOauthTokenFieldBuilder()1984         getOauthTokenFieldBuilder() {
1985       if (oauthTokenBuilder_ == null) {
1986         if (!(authorizationHeaderCase_ == 5)) {
1987           authorizationHeader_ = com.google.cloud.tasks.v2.OAuthToken.getDefaultInstance();
1988         }
1989         oauthTokenBuilder_ =
1990             new com.google.protobuf.SingleFieldBuilderV3<
1991                 com.google.cloud.tasks.v2.OAuthToken,
1992                 com.google.cloud.tasks.v2.OAuthToken.Builder,
1993                 com.google.cloud.tasks.v2.OAuthTokenOrBuilder>(
1994                 (com.google.cloud.tasks.v2.OAuthToken) authorizationHeader_,
1995                 getParentForChildren(),
1996                 isClean());
1997         authorizationHeader_ = null;
1998       }
1999       authorizationHeaderCase_ = 5;
2000       onChanged();
2001       return oauthTokenBuilder_;
2002     }
2003 
2004     private com.google.protobuf.SingleFieldBuilderV3<
2005             com.google.cloud.tasks.v2.OidcToken,
2006             com.google.cloud.tasks.v2.OidcToken.Builder,
2007             com.google.cloud.tasks.v2.OidcTokenOrBuilder>
2008         oidcTokenBuilder_;
2009     /**
2010      *
2011      *
2012      * <pre>
2013      * If specified, an
2014      * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
2015      * token will be generated and attached as an `Authorization` header in the
2016      * HTTP request.
2017      * This type of authorization can be used for many scenarios, including
2018      * calling Cloud Run, or endpoints where you intend to validate the token
2019      * yourself.
2020      * </pre>
2021      *
2022      * <code>.google.cloud.tasks.v2.OidcToken oidc_token = 6;</code>
2023      *
2024      * @return Whether the oidcToken field is set.
2025      */
2026     @java.lang.Override
hasOidcToken()2027     public boolean hasOidcToken() {
2028       return authorizationHeaderCase_ == 6;
2029     }
2030     /**
2031      *
2032      *
2033      * <pre>
2034      * If specified, an
2035      * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
2036      * token will be generated and attached as an `Authorization` header in the
2037      * HTTP request.
2038      * This type of authorization can be used for many scenarios, including
2039      * calling Cloud Run, or endpoints where you intend to validate the token
2040      * yourself.
2041      * </pre>
2042      *
2043      * <code>.google.cloud.tasks.v2.OidcToken oidc_token = 6;</code>
2044      *
2045      * @return The oidcToken.
2046      */
2047     @java.lang.Override
getOidcToken()2048     public com.google.cloud.tasks.v2.OidcToken getOidcToken() {
2049       if (oidcTokenBuilder_ == null) {
2050         if (authorizationHeaderCase_ == 6) {
2051           return (com.google.cloud.tasks.v2.OidcToken) authorizationHeader_;
2052         }
2053         return com.google.cloud.tasks.v2.OidcToken.getDefaultInstance();
2054       } else {
2055         if (authorizationHeaderCase_ == 6) {
2056           return oidcTokenBuilder_.getMessage();
2057         }
2058         return com.google.cloud.tasks.v2.OidcToken.getDefaultInstance();
2059       }
2060     }
2061     /**
2062      *
2063      *
2064      * <pre>
2065      * If specified, an
2066      * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
2067      * token will be generated and attached as an `Authorization` header in the
2068      * HTTP request.
2069      * This type of authorization can be used for many scenarios, including
2070      * calling Cloud Run, or endpoints where you intend to validate the token
2071      * yourself.
2072      * </pre>
2073      *
2074      * <code>.google.cloud.tasks.v2.OidcToken oidc_token = 6;</code>
2075      */
setOidcToken(com.google.cloud.tasks.v2.OidcToken value)2076     public Builder setOidcToken(com.google.cloud.tasks.v2.OidcToken value) {
2077       if (oidcTokenBuilder_ == null) {
2078         if (value == null) {
2079           throw new NullPointerException();
2080         }
2081         authorizationHeader_ = value;
2082         onChanged();
2083       } else {
2084         oidcTokenBuilder_.setMessage(value);
2085       }
2086       authorizationHeaderCase_ = 6;
2087       return this;
2088     }
2089     /**
2090      *
2091      *
2092      * <pre>
2093      * If specified, an
2094      * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
2095      * token will be generated and attached as an `Authorization` header in the
2096      * HTTP request.
2097      * This type of authorization can be used for many scenarios, including
2098      * calling Cloud Run, or endpoints where you intend to validate the token
2099      * yourself.
2100      * </pre>
2101      *
2102      * <code>.google.cloud.tasks.v2.OidcToken oidc_token = 6;</code>
2103      */
setOidcToken(com.google.cloud.tasks.v2.OidcToken.Builder builderForValue)2104     public Builder setOidcToken(com.google.cloud.tasks.v2.OidcToken.Builder builderForValue) {
2105       if (oidcTokenBuilder_ == null) {
2106         authorizationHeader_ = builderForValue.build();
2107         onChanged();
2108       } else {
2109         oidcTokenBuilder_.setMessage(builderForValue.build());
2110       }
2111       authorizationHeaderCase_ = 6;
2112       return this;
2113     }
2114     /**
2115      *
2116      *
2117      * <pre>
2118      * If specified, an
2119      * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
2120      * token will be generated and attached as an `Authorization` header in the
2121      * HTTP request.
2122      * This type of authorization can be used for many scenarios, including
2123      * calling Cloud Run, or endpoints where you intend to validate the token
2124      * yourself.
2125      * </pre>
2126      *
2127      * <code>.google.cloud.tasks.v2.OidcToken oidc_token = 6;</code>
2128      */
mergeOidcToken(com.google.cloud.tasks.v2.OidcToken value)2129     public Builder mergeOidcToken(com.google.cloud.tasks.v2.OidcToken value) {
2130       if (oidcTokenBuilder_ == null) {
2131         if (authorizationHeaderCase_ == 6
2132             && authorizationHeader_ != com.google.cloud.tasks.v2.OidcToken.getDefaultInstance()) {
2133           authorizationHeader_ =
2134               com.google.cloud.tasks.v2.OidcToken.newBuilder(
2135                       (com.google.cloud.tasks.v2.OidcToken) authorizationHeader_)
2136                   .mergeFrom(value)
2137                   .buildPartial();
2138         } else {
2139           authorizationHeader_ = value;
2140         }
2141         onChanged();
2142       } else {
2143         if (authorizationHeaderCase_ == 6) {
2144           oidcTokenBuilder_.mergeFrom(value);
2145         } else {
2146           oidcTokenBuilder_.setMessage(value);
2147         }
2148       }
2149       authorizationHeaderCase_ = 6;
2150       return this;
2151     }
2152     /**
2153      *
2154      *
2155      * <pre>
2156      * If specified, an
2157      * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
2158      * token will be generated and attached as an `Authorization` header in the
2159      * HTTP request.
2160      * This type of authorization can be used for many scenarios, including
2161      * calling Cloud Run, or endpoints where you intend to validate the token
2162      * yourself.
2163      * </pre>
2164      *
2165      * <code>.google.cloud.tasks.v2.OidcToken oidc_token = 6;</code>
2166      */
clearOidcToken()2167     public Builder clearOidcToken() {
2168       if (oidcTokenBuilder_ == null) {
2169         if (authorizationHeaderCase_ == 6) {
2170           authorizationHeaderCase_ = 0;
2171           authorizationHeader_ = null;
2172           onChanged();
2173         }
2174       } else {
2175         if (authorizationHeaderCase_ == 6) {
2176           authorizationHeaderCase_ = 0;
2177           authorizationHeader_ = null;
2178         }
2179         oidcTokenBuilder_.clear();
2180       }
2181       return this;
2182     }
2183     /**
2184      *
2185      *
2186      * <pre>
2187      * If specified, an
2188      * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
2189      * token will be generated and attached as an `Authorization` header in the
2190      * HTTP request.
2191      * This type of authorization can be used for many scenarios, including
2192      * calling Cloud Run, or endpoints where you intend to validate the token
2193      * yourself.
2194      * </pre>
2195      *
2196      * <code>.google.cloud.tasks.v2.OidcToken oidc_token = 6;</code>
2197      */
getOidcTokenBuilder()2198     public com.google.cloud.tasks.v2.OidcToken.Builder getOidcTokenBuilder() {
2199       return getOidcTokenFieldBuilder().getBuilder();
2200     }
2201     /**
2202      *
2203      *
2204      * <pre>
2205      * If specified, an
2206      * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
2207      * token will be generated and attached as an `Authorization` header in the
2208      * HTTP request.
2209      * This type of authorization can be used for many scenarios, including
2210      * calling Cloud Run, or endpoints where you intend to validate the token
2211      * yourself.
2212      * </pre>
2213      *
2214      * <code>.google.cloud.tasks.v2.OidcToken oidc_token = 6;</code>
2215      */
2216     @java.lang.Override
getOidcTokenOrBuilder()2217     public com.google.cloud.tasks.v2.OidcTokenOrBuilder getOidcTokenOrBuilder() {
2218       if ((authorizationHeaderCase_ == 6) && (oidcTokenBuilder_ != null)) {
2219         return oidcTokenBuilder_.getMessageOrBuilder();
2220       } else {
2221         if (authorizationHeaderCase_ == 6) {
2222           return (com.google.cloud.tasks.v2.OidcToken) authorizationHeader_;
2223         }
2224         return com.google.cloud.tasks.v2.OidcToken.getDefaultInstance();
2225       }
2226     }
2227     /**
2228      *
2229      *
2230      * <pre>
2231      * If specified, an
2232      * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
2233      * token will be generated and attached as an `Authorization` header in the
2234      * HTTP request.
2235      * This type of authorization can be used for many scenarios, including
2236      * calling Cloud Run, or endpoints where you intend to validate the token
2237      * yourself.
2238      * </pre>
2239      *
2240      * <code>.google.cloud.tasks.v2.OidcToken oidc_token = 6;</code>
2241      */
2242     private com.google.protobuf.SingleFieldBuilderV3<
2243             com.google.cloud.tasks.v2.OidcToken,
2244             com.google.cloud.tasks.v2.OidcToken.Builder,
2245             com.google.cloud.tasks.v2.OidcTokenOrBuilder>
getOidcTokenFieldBuilder()2246         getOidcTokenFieldBuilder() {
2247       if (oidcTokenBuilder_ == null) {
2248         if (!(authorizationHeaderCase_ == 6)) {
2249           authorizationHeader_ = com.google.cloud.tasks.v2.OidcToken.getDefaultInstance();
2250         }
2251         oidcTokenBuilder_ =
2252             new com.google.protobuf.SingleFieldBuilderV3<
2253                 com.google.cloud.tasks.v2.OidcToken,
2254                 com.google.cloud.tasks.v2.OidcToken.Builder,
2255                 com.google.cloud.tasks.v2.OidcTokenOrBuilder>(
2256                 (com.google.cloud.tasks.v2.OidcToken) authorizationHeader_,
2257                 getParentForChildren(),
2258                 isClean());
2259         authorizationHeader_ = null;
2260       }
2261       authorizationHeaderCase_ = 6;
2262       onChanged();
2263       return oidcTokenBuilder_;
2264     }
2265 
2266     @java.lang.Override
setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields)2267     public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) {
2268       return super.setUnknownFields(unknownFields);
2269     }
2270 
2271     @java.lang.Override
mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields)2272     public final Builder mergeUnknownFields(
2273         final com.google.protobuf.UnknownFieldSet unknownFields) {
2274       return super.mergeUnknownFields(unknownFields);
2275     }
2276 
2277     // @@protoc_insertion_point(builder_scope:google.cloud.tasks.v2.HttpRequest)
2278   }
2279 
2280   // @@protoc_insertion_point(class_scope:google.cloud.tasks.v2.HttpRequest)
2281   private static final com.google.cloud.tasks.v2.HttpRequest DEFAULT_INSTANCE;
2282 
2283   static {
2284     DEFAULT_INSTANCE = new com.google.cloud.tasks.v2.HttpRequest();
2285   }
2286 
getDefaultInstance()2287   public static com.google.cloud.tasks.v2.HttpRequest getDefaultInstance() {
2288     return DEFAULT_INSTANCE;
2289   }
2290 
2291   private static final com.google.protobuf.Parser<HttpRequest> PARSER =
2292       new com.google.protobuf.AbstractParser<HttpRequest>() {
2293         @java.lang.Override
2294         public HttpRequest parsePartialFrom(
2295             com.google.protobuf.CodedInputStream input,
2296             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
2297             throws com.google.protobuf.InvalidProtocolBufferException {
2298           Builder builder = newBuilder();
2299           try {
2300             builder.mergeFrom(input, extensionRegistry);
2301           } catch (com.google.protobuf.InvalidProtocolBufferException e) {
2302             throw e.setUnfinishedMessage(builder.buildPartial());
2303           } catch (com.google.protobuf.UninitializedMessageException e) {
2304             throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
2305           } catch (java.io.IOException e) {
2306             throw new com.google.protobuf.InvalidProtocolBufferException(e)
2307                 .setUnfinishedMessage(builder.buildPartial());
2308           }
2309           return builder.buildPartial();
2310         }
2311       };
2312 
parser()2313   public static com.google.protobuf.Parser<HttpRequest> parser() {
2314     return PARSER;
2315   }
2316 
2317   @java.lang.Override
getParserForType()2318   public com.google.protobuf.Parser<HttpRequest> getParserForType() {
2319     return PARSER;
2320   }
2321 
2322   @java.lang.Override
getDefaultInstanceForType()2323   public com.google.cloud.tasks.v2.HttpRequest getDefaultInstanceForType() {
2324     return DEFAULT_INSTANCE;
2325   }
2326 }
2327