diff --git a/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/HttpTarget.java b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/HttpTarget.java index f9c606b163ef..834cd73f160b 100644 --- a/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/HttpTarget.java +++ b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/HttpTarget.java @@ -90,6 +90,42 @@ private HttpTarget( body_ = input.readBytes(); break; } + case 42: + { + com.google.cloud.scheduler.v1.OAuthToken.Builder subBuilder = null; + if (authorizationHeaderCase_ == 5) { + subBuilder = + ((com.google.cloud.scheduler.v1.OAuthToken) authorizationHeader_).toBuilder(); + } + authorizationHeader_ = + input.readMessage( + com.google.cloud.scheduler.v1.OAuthToken.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom( + (com.google.cloud.scheduler.v1.OAuthToken) authorizationHeader_); + authorizationHeader_ = subBuilder.buildPartial(); + } + authorizationHeaderCase_ = 5; + break; + } + case 50: + { + com.google.cloud.scheduler.v1.OidcToken.Builder subBuilder = null; + if (authorizationHeaderCase_ == 6) { + subBuilder = + ((com.google.cloud.scheduler.v1.OidcToken) authorizationHeader_).toBuilder(); + } + authorizationHeader_ = + input.readMessage( + com.google.cloud.scheduler.v1.OidcToken.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom( + (com.google.cloud.scheduler.v1.OidcToken) authorizationHeader_); + authorizationHeader_ = subBuilder.buildPartial(); + } + authorizationHeaderCase_ = 6; + break; + } default: { if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { @@ -136,6 +172,46 @@ protected com.google.protobuf.MapField internalGetMapField(int number) { } private int bitField0_; + private int authorizationHeaderCase_ = 0; + private java.lang.Object authorizationHeader_; + + public enum AuthorizationHeaderCase implements com.google.protobuf.Internal.EnumLite { + OAUTH_TOKEN(5), + OIDC_TOKEN(6), + AUTHORIZATIONHEADER_NOT_SET(0); + private final int value; + + private AuthorizationHeaderCase(int value) { + this.value = value; + } + /** @deprecated Use {@link #forNumber(int)} instead. */ + @java.lang.Deprecated + public static AuthorizationHeaderCase valueOf(int value) { + return forNumber(value); + } + + public static AuthorizationHeaderCase forNumber(int value) { + switch (value) { + case 5: + return OAUTH_TOKEN; + case 6: + return OIDC_TOKEN; + case 0: + return AUTHORIZATIONHEADER_NOT_SET; + default: + return null; + } + } + + public int getNumber() { + return this.value; + } + }; + + public AuthorizationHeaderCase getAuthorizationHeaderCase() { + return AuthorizationHeaderCase.forNumber(authorizationHeaderCase_); + } + public static final int URI_FIELD_NUMBER = 1; private volatile java.lang.Object uri_; /** @@ -383,6 +459,124 @@ public com.google.protobuf.ByteString getBody() { return body_; } + public static final int OAUTH_TOKEN_FIELD_NUMBER = 5; + /** + * + * + *
+   * If specified, an
+   * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
+   * will be generated and attached as an `Authorization` header in the HTTP
+   * request.
+   * This type of authorization should be used when sending requests to a GCP
+   * endpoint.
+   * 
+ * + * .google.cloud.scheduler.v1.OAuthToken oauth_token = 5; + */ + public boolean hasOauthToken() { + return authorizationHeaderCase_ == 5; + } + /** + * + * + *
+   * If specified, an
+   * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
+   * will be generated and attached as an `Authorization` header in the HTTP
+   * request.
+   * This type of authorization should be used when sending requests to a GCP
+   * endpoint.
+   * 
+ * + * .google.cloud.scheduler.v1.OAuthToken oauth_token = 5; + */ + public com.google.cloud.scheduler.v1.OAuthToken getOauthToken() { + if (authorizationHeaderCase_ == 5) { + return (com.google.cloud.scheduler.v1.OAuthToken) authorizationHeader_; + } + return com.google.cloud.scheduler.v1.OAuthToken.getDefaultInstance(); + } + /** + * + * + *
+   * If specified, an
+   * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
+   * will be generated and attached as an `Authorization` header in the HTTP
+   * request.
+   * This type of authorization should be used when sending requests to a GCP
+   * endpoint.
+   * 
+ * + * .google.cloud.scheduler.v1.OAuthToken oauth_token = 5; + */ + public com.google.cloud.scheduler.v1.OAuthTokenOrBuilder getOauthTokenOrBuilder() { + if (authorizationHeaderCase_ == 5) { + return (com.google.cloud.scheduler.v1.OAuthToken) authorizationHeader_; + } + return com.google.cloud.scheduler.v1.OAuthToken.getDefaultInstance(); + } + + public static final int OIDC_TOKEN_FIELD_NUMBER = 6; + /** + * + * + *
+   * If specified, an
+   * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
+   * token will be generated and attached as an `Authorization` header in the
+   * HTTP request.
+   * This type of authorization should be used when sending requests to third
+   * party endpoints or Cloud Run.
+   * 
+ * + * .google.cloud.scheduler.v1.OidcToken oidc_token = 6; + */ + public boolean hasOidcToken() { + return authorizationHeaderCase_ == 6; + } + /** + * + * + *
+   * If specified, an
+   * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
+   * token will be generated and attached as an `Authorization` header in the
+   * HTTP request.
+   * This type of authorization should be used when sending requests to third
+   * party endpoints or Cloud Run.
+   * 
+ * + * .google.cloud.scheduler.v1.OidcToken oidc_token = 6; + */ + public com.google.cloud.scheduler.v1.OidcToken getOidcToken() { + if (authorizationHeaderCase_ == 6) { + return (com.google.cloud.scheduler.v1.OidcToken) authorizationHeader_; + } + return com.google.cloud.scheduler.v1.OidcToken.getDefaultInstance(); + } + /** + * + * + *
+   * If specified, an
+   * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
+   * token will be generated and attached as an `Authorization` header in the
+   * HTTP request.
+   * This type of authorization should be used when sending requests to third
+   * party endpoints or Cloud Run.
+   * 
+ * + * .google.cloud.scheduler.v1.OidcToken oidc_token = 6; + */ + public com.google.cloud.scheduler.v1.OidcTokenOrBuilder getOidcTokenOrBuilder() { + if (authorizationHeaderCase_ == 6) { + return (com.google.cloud.scheduler.v1.OidcToken) authorizationHeader_; + } + return com.google.cloud.scheduler.v1.OidcToken.getDefaultInstance(); + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -409,6 +603,12 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (!body_.isEmpty()) { output.writeBytes(4, body_); } + if (authorizationHeaderCase_ == 5) { + output.writeMessage(5, (com.google.cloud.scheduler.v1.OAuthToken) authorizationHeader_); + } + if (authorizationHeaderCase_ == 6) { + output.writeMessage(6, (com.google.cloud.scheduler.v1.OidcToken) authorizationHeader_); + } unknownFields.writeTo(output); } @@ -438,6 +638,16 @@ public int getSerializedSize() { if (!body_.isEmpty()) { size += com.google.protobuf.CodedOutputStream.computeBytesSize(4, body_); } + if (authorizationHeaderCase_ == 5) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 5, (com.google.cloud.scheduler.v1.OAuthToken) authorizationHeader_); + } + if (authorizationHeaderCase_ == 6) { + size += + com.google.protobuf.CodedOutputStream.computeMessageSize( + 6, (com.google.cloud.scheduler.v1.OidcToken) authorizationHeader_); + } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; @@ -457,6 +667,17 @@ public boolean equals(final java.lang.Object obj) { if (httpMethod_ != other.httpMethod_) return false; if (!internalGetHeaders().equals(other.internalGetHeaders())) return false; if (!getBody().equals(other.getBody())) return false; + if (!getAuthorizationHeaderCase().equals(other.getAuthorizationHeaderCase())) return false; + switch (authorizationHeaderCase_) { + case 5: + if (!getOauthToken().equals(other.getOauthToken())) return false; + break; + case 6: + if (!getOidcToken().equals(other.getOidcToken())) return false; + break; + case 0: + default: + } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @@ -478,6 +699,18 @@ public int hashCode() { } hash = (37 * hash) + BODY_FIELD_NUMBER; hash = (53 * hash) + getBody().hashCode(); + switch (authorizationHeaderCase_) { + case 5: + hash = (37 * hash) + OAUTH_TOKEN_FIELD_NUMBER; + hash = (53 * hash) + getOauthToken().hashCode(); + break; + case 6: + hash = (37 * hash) + OIDC_TOKEN_FIELD_NUMBER; + hash = (53 * hash) + getOidcToken().hashCode(); + break; + case 0: + default: + } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; @@ -655,6 +888,8 @@ public Builder clear() { internalGetMutableHeaders().clear(); body_ = com.google.protobuf.ByteString.EMPTY; + authorizationHeaderCase_ = 0; + authorizationHeader_ = null; return this; } @@ -689,7 +924,22 @@ public com.google.cloud.scheduler.v1.HttpTarget buildPartial() { result.headers_ = internalGetHeaders(); result.headers_.makeImmutable(); result.body_ = body_; + if (authorizationHeaderCase_ == 5) { + if (oauthTokenBuilder_ == null) { + result.authorizationHeader_ = authorizationHeader_; + } else { + result.authorizationHeader_ = oauthTokenBuilder_.build(); + } + } + if (authorizationHeaderCase_ == 6) { + if (oidcTokenBuilder_ == null) { + result.authorizationHeader_ = authorizationHeader_; + } else { + result.authorizationHeader_ = oidcTokenBuilder_.build(); + } + } result.bitField0_ = to_bitField0_; + result.authorizationHeaderCase_ = authorizationHeaderCase_; onBuilt(); return result; } @@ -750,6 +1000,22 @@ public Builder mergeFrom(com.google.cloud.scheduler.v1.HttpTarget other) { if (other.getBody() != com.google.protobuf.ByteString.EMPTY) { setBody(other.getBody()); } + switch (other.getAuthorizationHeaderCase()) { + case OAUTH_TOKEN: + { + mergeOauthToken(other.getOauthToken()); + break; + } + case OIDC_TOKEN: + { + mergeOidcToken(other.getOidcToken()); + break; + } + case AUTHORIZATIONHEADER_NOT_SET: + { + break; + } + } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; @@ -779,6 +1045,20 @@ public Builder mergeFrom( return this; } + private int authorizationHeaderCase_ = 0; + private java.lang.Object authorizationHeader_; + + public AuthorizationHeaderCase getAuthorizationHeaderCase() { + return AuthorizationHeaderCase.forNumber(authorizationHeaderCase_); + } + + public Builder clearAuthorizationHeader() { + authorizationHeaderCase_ = 0; + authorizationHeader_ = null; + onChanged(); + return this; + } + private int bitField0_; private java.lang.Object uri_ = ""; @@ -1277,6 +1557,500 @@ public Builder clearBody() { return this; } + private com.google.protobuf.SingleFieldBuilderV3< + com.google.cloud.scheduler.v1.OAuthToken, + com.google.cloud.scheduler.v1.OAuthToken.Builder, + com.google.cloud.scheduler.v1.OAuthTokenOrBuilder> + oauthTokenBuilder_; + /** + * + * + *
+     * If specified, an
+     * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
+     * will be generated and attached as an `Authorization` header in the HTTP
+     * request.
+     * This type of authorization should be used when sending requests to a GCP
+     * endpoint.
+     * 
+ * + * .google.cloud.scheduler.v1.OAuthToken oauth_token = 5; + */ + public boolean hasOauthToken() { + return authorizationHeaderCase_ == 5; + } + /** + * + * + *
+     * If specified, an
+     * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
+     * will be generated and attached as an `Authorization` header in the HTTP
+     * request.
+     * This type of authorization should be used when sending requests to a GCP
+     * endpoint.
+     * 
+ * + * .google.cloud.scheduler.v1.OAuthToken oauth_token = 5; + */ + public com.google.cloud.scheduler.v1.OAuthToken getOauthToken() { + if (oauthTokenBuilder_ == null) { + if (authorizationHeaderCase_ == 5) { + return (com.google.cloud.scheduler.v1.OAuthToken) authorizationHeader_; + } + return com.google.cloud.scheduler.v1.OAuthToken.getDefaultInstance(); + } else { + if (authorizationHeaderCase_ == 5) { + return oauthTokenBuilder_.getMessage(); + } + return com.google.cloud.scheduler.v1.OAuthToken.getDefaultInstance(); + } + } + /** + * + * + *
+     * If specified, an
+     * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
+     * will be generated and attached as an `Authorization` header in the HTTP
+     * request.
+     * This type of authorization should be used when sending requests to a GCP
+     * endpoint.
+     * 
+ * + * .google.cloud.scheduler.v1.OAuthToken oauth_token = 5; + */ + public Builder setOauthToken(com.google.cloud.scheduler.v1.OAuthToken value) { + if (oauthTokenBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + authorizationHeader_ = value; + onChanged(); + } else { + oauthTokenBuilder_.setMessage(value); + } + authorizationHeaderCase_ = 5; + return this; + } + /** + * + * + *
+     * If specified, an
+     * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
+     * will be generated and attached as an `Authorization` header in the HTTP
+     * request.
+     * This type of authorization should be used when sending requests to a GCP
+     * endpoint.
+     * 
+ * + * .google.cloud.scheduler.v1.OAuthToken oauth_token = 5; + */ + public Builder setOauthToken(com.google.cloud.scheduler.v1.OAuthToken.Builder builderForValue) { + if (oauthTokenBuilder_ == null) { + authorizationHeader_ = builderForValue.build(); + onChanged(); + } else { + oauthTokenBuilder_.setMessage(builderForValue.build()); + } + authorizationHeaderCase_ = 5; + return this; + } + /** + * + * + *
+     * If specified, an
+     * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
+     * will be generated and attached as an `Authorization` header in the HTTP
+     * request.
+     * This type of authorization should be used when sending requests to a GCP
+     * endpoint.
+     * 
+ * + * .google.cloud.scheduler.v1.OAuthToken oauth_token = 5; + */ + public Builder mergeOauthToken(com.google.cloud.scheduler.v1.OAuthToken value) { + if (oauthTokenBuilder_ == null) { + if (authorizationHeaderCase_ == 5 + && authorizationHeader_ + != com.google.cloud.scheduler.v1.OAuthToken.getDefaultInstance()) { + authorizationHeader_ = + com.google.cloud.scheduler.v1.OAuthToken.newBuilder( + (com.google.cloud.scheduler.v1.OAuthToken) authorizationHeader_) + .mergeFrom(value) + .buildPartial(); + } else { + authorizationHeader_ = value; + } + onChanged(); + } else { + if (authorizationHeaderCase_ == 5) { + oauthTokenBuilder_.mergeFrom(value); + } + oauthTokenBuilder_.setMessage(value); + } + authorizationHeaderCase_ = 5; + return this; + } + /** + * + * + *
+     * If specified, an
+     * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
+     * will be generated and attached as an `Authorization` header in the HTTP
+     * request.
+     * This type of authorization should be used when sending requests to a GCP
+     * endpoint.
+     * 
+ * + * .google.cloud.scheduler.v1.OAuthToken oauth_token = 5; + */ + public Builder clearOauthToken() { + if (oauthTokenBuilder_ == null) { + if (authorizationHeaderCase_ == 5) { + authorizationHeaderCase_ = 0; + authorizationHeader_ = null; + onChanged(); + } + } else { + if (authorizationHeaderCase_ == 5) { + authorizationHeaderCase_ = 0; + authorizationHeader_ = null; + } + oauthTokenBuilder_.clear(); + } + return this; + } + /** + * + * + *
+     * If specified, an
+     * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
+     * will be generated and attached as an `Authorization` header in the HTTP
+     * request.
+     * This type of authorization should be used when sending requests to a GCP
+     * endpoint.
+     * 
+ * + * .google.cloud.scheduler.v1.OAuthToken oauth_token = 5; + */ + public com.google.cloud.scheduler.v1.OAuthToken.Builder getOauthTokenBuilder() { + return getOauthTokenFieldBuilder().getBuilder(); + } + /** + * + * + *
+     * If specified, an
+     * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
+     * will be generated and attached as an `Authorization` header in the HTTP
+     * request.
+     * This type of authorization should be used when sending requests to a GCP
+     * endpoint.
+     * 
+ * + * .google.cloud.scheduler.v1.OAuthToken oauth_token = 5; + */ + public com.google.cloud.scheduler.v1.OAuthTokenOrBuilder getOauthTokenOrBuilder() { + if ((authorizationHeaderCase_ == 5) && (oauthTokenBuilder_ != null)) { + return oauthTokenBuilder_.getMessageOrBuilder(); + } else { + if (authorizationHeaderCase_ == 5) { + return (com.google.cloud.scheduler.v1.OAuthToken) authorizationHeader_; + } + return com.google.cloud.scheduler.v1.OAuthToken.getDefaultInstance(); + } + } + /** + * + * + *
+     * If specified, an
+     * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
+     * will be generated and attached as an `Authorization` header in the HTTP
+     * request.
+     * This type of authorization should be used when sending requests to a GCP
+     * endpoint.
+     * 
+ * + * .google.cloud.scheduler.v1.OAuthToken oauth_token = 5; + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.cloud.scheduler.v1.OAuthToken, + com.google.cloud.scheduler.v1.OAuthToken.Builder, + com.google.cloud.scheduler.v1.OAuthTokenOrBuilder> + getOauthTokenFieldBuilder() { + if (oauthTokenBuilder_ == null) { + if (!(authorizationHeaderCase_ == 5)) { + authorizationHeader_ = com.google.cloud.scheduler.v1.OAuthToken.getDefaultInstance(); + } + oauthTokenBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.cloud.scheduler.v1.OAuthToken, + com.google.cloud.scheduler.v1.OAuthToken.Builder, + com.google.cloud.scheduler.v1.OAuthTokenOrBuilder>( + (com.google.cloud.scheduler.v1.OAuthToken) authorizationHeader_, + getParentForChildren(), + isClean()); + authorizationHeader_ = null; + } + authorizationHeaderCase_ = 5; + onChanged(); + ; + return oauthTokenBuilder_; + } + + private com.google.protobuf.SingleFieldBuilderV3< + com.google.cloud.scheduler.v1.OidcToken, + com.google.cloud.scheduler.v1.OidcToken.Builder, + com.google.cloud.scheduler.v1.OidcTokenOrBuilder> + oidcTokenBuilder_; + /** + * + * + *
+     * If specified, an
+     * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
+     * token will be generated and attached as an `Authorization` header in the
+     * HTTP request.
+     * This type of authorization should be used when sending requests to third
+     * party endpoints or Cloud Run.
+     * 
+ * + * .google.cloud.scheduler.v1.OidcToken oidc_token = 6; + */ + public boolean hasOidcToken() { + return authorizationHeaderCase_ == 6; + } + /** + * + * + *
+     * If specified, an
+     * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
+     * token will be generated and attached as an `Authorization` header in the
+     * HTTP request.
+     * This type of authorization should be used when sending requests to third
+     * party endpoints or Cloud Run.
+     * 
+ * + * .google.cloud.scheduler.v1.OidcToken oidc_token = 6; + */ + public com.google.cloud.scheduler.v1.OidcToken getOidcToken() { + if (oidcTokenBuilder_ == null) { + if (authorizationHeaderCase_ == 6) { + return (com.google.cloud.scheduler.v1.OidcToken) authorizationHeader_; + } + return com.google.cloud.scheduler.v1.OidcToken.getDefaultInstance(); + } else { + if (authorizationHeaderCase_ == 6) { + return oidcTokenBuilder_.getMessage(); + } + return com.google.cloud.scheduler.v1.OidcToken.getDefaultInstance(); + } + } + /** + * + * + *
+     * If specified, an
+     * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
+     * token will be generated and attached as an `Authorization` header in the
+     * HTTP request.
+     * This type of authorization should be used when sending requests to third
+     * party endpoints or Cloud Run.
+     * 
+ * + * .google.cloud.scheduler.v1.OidcToken oidc_token = 6; + */ + public Builder setOidcToken(com.google.cloud.scheduler.v1.OidcToken value) { + if (oidcTokenBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + authorizationHeader_ = value; + onChanged(); + } else { + oidcTokenBuilder_.setMessage(value); + } + authorizationHeaderCase_ = 6; + return this; + } + /** + * + * + *
+     * If specified, an
+     * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
+     * token will be generated and attached as an `Authorization` header in the
+     * HTTP request.
+     * This type of authorization should be used when sending requests to third
+     * party endpoints or Cloud Run.
+     * 
+ * + * .google.cloud.scheduler.v1.OidcToken oidc_token = 6; + */ + public Builder setOidcToken(com.google.cloud.scheduler.v1.OidcToken.Builder builderForValue) { + if (oidcTokenBuilder_ == null) { + authorizationHeader_ = builderForValue.build(); + onChanged(); + } else { + oidcTokenBuilder_.setMessage(builderForValue.build()); + } + authorizationHeaderCase_ = 6; + return this; + } + /** + * + * + *
+     * If specified, an
+     * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
+     * token will be generated and attached as an `Authorization` header in the
+     * HTTP request.
+     * This type of authorization should be used when sending requests to third
+     * party endpoints or Cloud Run.
+     * 
+ * + * .google.cloud.scheduler.v1.OidcToken oidc_token = 6; + */ + public Builder mergeOidcToken(com.google.cloud.scheduler.v1.OidcToken value) { + if (oidcTokenBuilder_ == null) { + if (authorizationHeaderCase_ == 6 + && authorizationHeader_ + != com.google.cloud.scheduler.v1.OidcToken.getDefaultInstance()) { + authorizationHeader_ = + com.google.cloud.scheduler.v1.OidcToken.newBuilder( + (com.google.cloud.scheduler.v1.OidcToken) authorizationHeader_) + .mergeFrom(value) + .buildPartial(); + } else { + authorizationHeader_ = value; + } + onChanged(); + } else { + if (authorizationHeaderCase_ == 6) { + oidcTokenBuilder_.mergeFrom(value); + } + oidcTokenBuilder_.setMessage(value); + } + authorizationHeaderCase_ = 6; + return this; + } + /** + * + * + *
+     * If specified, an
+     * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
+     * token will be generated and attached as an `Authorization` header in the
+     * HTTP request.
+     * This type of authorization should be used when sending requests to third
+     * party endpoints or Cloud Run.
+     * 
+ * + * .google.cloud.scheduler.v1.OidcToken oidc_token = 6; + */ + public Builder clearOidcToken() { + if (oidcTokenBuilder_ == null) { + if (authorizationHeaderCase_ == 6) { + authorizationHeaderCase_ = 0; + authorizationHeader_ = null; + onChanged(); + } + } else { + if (authorizationHeaderCase_ == 6) { + authorizationHeaderCase_ = 0; + authorizationHeader_ = null; + } + oidcTokenBuilder_.clear(); + } + return this; + } + /** + * + * + *
+     * If specified, an
+     * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
+     * token will be generated and attached as an `Authorization` header in the
+     * HTTP request.
+     * This type of authorization should be used when sending requests to third
+     * party endpoints or Cloud Run.
+     * 
+ * + * .google.cloud.scheduler.v1.OidcToken oidc_token = 6; + */ + public com.google.cloud.scheduler.v1.OidcToken.Builder getOidcTokenBuilder() { + return getOidcTokenFieldBuilder().getBuilder(); + } + /** + * + * + *
+     * If specified, an
+     * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
+     * token will be generated and attached as an `Authorization` header in the
+     * HTTP request.
+     * This type of authorization should be used when sending requests to third
+     * party endpoints or Cloud Run.
+     * 
+ * + * .google.cloud.scheduler.v1.OidcToken oidc_token = 6; + */ + public com.google.cloud.scheduler.v1.OidcTokenOrBuilder getOidcTokenOrBuilder() { + if ((authorizationHeaderCase_ == 6) && (oidcTokenBuilder_ != null)) { + return oidcTokenBuilder_.getMessageOrBuilder(); + } else { + if (authorizationHeaderCase_ == 6) { + return (com.google.cloud.scheduler.v1.OidcToken) authorizationHeader_; + } + return com.google.cloud.scheduler.v1.OidcToken.getDefaultInstance(); + } + } + /** + * + * + *
+     * If specified, an
+     * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
+     * token will be generated and attached as an `Authorization` header in the
+     * HTTP request.
+     * This type of authorization should be used when sending requests to third
+     * party endpoints or Cloud Run.
+     * 
+ * + * .google.cloud.scheduler.v1.OidcToken oidc_token = 6; + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.cloud.scheduler.v1.OidcToken, + com.google.cloud.scheduler.v1.OidcToken.Builder, + com.google.cloud.scheduler.v1.OidcTokenOrBuilder> + getOidcTokenFieldBuilder() { + if (oidcTokenBuilder_ == null) { + if (!(authorizationHeaderCase_ == 6)) { + authorizationHeader_ = com.google.cloud.scheduler.v1.OidcToken.getDefaultInstance(); + } + oidcTokenBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.cloud.scheduler.v1.OidcToken, + com.google.cloud.scheduler.v1.OidcToken.Builder, + com.google.cloud.scheduler.v1.OidcTokenOrBuilder>( + (com.google.cloud.scheduler.v1.OidcToken) authorizationHeader_, + getParentForChildren(), + isClean()); + authorizationHeader_ = null; + } + authorizationHeaderCase_ = 6; + onChanged(); + ; + return oidcTokenBuilder_; + } + @java.lang.Override public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); diff --git a/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/HttpTargetOrBuilder.java b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/HttpTargetOrBuilder.java index 67c0e7dfa7f5..8a538f109e91 100644 --- a/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/HttpTargetOrBuilder.java +++ b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/HttpTargetOrBuilder.java @@ -193,4 +193,99 @@ public interface HttpTargetOrBuilder * bytes body = 4; */ com.google.protobuf.ByteString getBody(); + + /** + * + * + *
+   * If specified, an
+   * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
+   * will be generated and attached as an `Authorization` header in the HTTP
+   * request.
+   * This type of authorization should be used when sending requests to a GCP
+   * endpoint.
+   * 
+ * + * .google.cloud.scheduler.v1.OAuthToken oauth_token = 5; + */ + boolean hasOauthToken(); + /** + * + * + *
+   * If specified, an
+   * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
+   * will be generated and attached as an `Authorization` header in the HTTP
+   * request.
+   * This type of authorization should be used when sending requests to a GCP
+   * endpoint.
+   * 
+ * + * .google.cloud.scheduler.v1.OAuthToken oauth_token = 5; + */ + com.google.cloud.scheduler.v1.OAuthToken getOauthToken(); + /** + * + * + *
+   * If specified, an
+   * [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
+   * will be generated and attached as an `Authorization` header in the HTTP
+   * request.
+   * This type of authorization should be used when sending requests to a GCP
+   * endpoint.
+   * 
+ * + * .google.cloud.scheduler.v1.OAuthToken oauth_token = 5; + */ + com.google.cloud.scheduler.v1.OAuthTokenOrBuilder getOauthTokenOrBuilder(); + + /** + * + * + *
+   * If specified, an
+   * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
+   * token will be generated and attached as an `Authorization` header in the
+   * HTTP request.
+   * This type of authorization should be used when sending requests to third
+   * party endpoints or Cloud Run.
+   * 
+ * + * .google.cloud.scheduler.v1.OidcToken oidc_token = 6; + */ + boolean hasOidcToken(); + /** + * + * + *
+   * If specified, an
+   * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
+   * token will be generated and attached as an `Authorization` header in the
+   * HTTP request.
+   * This type of authorization should be used when sending requests to third
+   * party endpoints or Cloud Run.
+   * 
+ * + * .google.cloud.scheduler.v1.OidcToken oidc_token = 6; + */ + com.google.cloud.scheduler.v1.OidcToken getOidcToken(); + /** + * + * + *
+   * If specified, an
+   * [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
+   * token will be generated and attached as an `Authorization` header in the
+   * HTTP request.
+   * This type of authorization should be used when sending requests to third
+   * party endpoints or Cloud Run.
+   * 
+ * + * .google.cloud.scheduler.v1.OidcToken oidc_token = 6; + */ + com.google.cloud.scheduler.v1.OidcTokenOrBuilder getOidcTokenOrBuilder(); + + public com.google.cloud.scheduler.v1.HttpTarget.AuthorizationHeaderCase + getAuthorizationHeaderCase(); } diff --git a/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/Job.java b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/Job.java index 685340b56ef7..c8d98a6eedc7 100644 --- a/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/Job.java +++ b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/Job.java @@ -213,6 +213,21 @@ private Job( java.lang.String s = input.readStringRequireUtf8(); timeZone_ = s; + break; + } + case 178: + { + com.google.protobuf.Duration.Builder subBuilder = null; + if (attemptDeadline_ != null) { + subBuilder = attemptDeadline_.toBuilder(); + } + attemptDeadline_ = + input.readMessage(com.google.protobuf.Duration.parser(), extensionRegistry); + if (subBuilder != null) { + subBuilder.mergeFrom(attemptDeadline_); + attemptDeadline_ = subBuilder.buildPartial(); + } + break; } default: @@ -1117,6 +1132,71 @@ public com.google.cloud.scheduler.v1.RetryConfigOrBuilder getRetryConfigOrBuilde return getRetryConfig(); } + public static final int ATTEMPT_DEADLINE_FIELD_NUMBER = 22; + private com.google.protobuf.Duration attemptDeadline_; + /** + * + * + *
+   * The deadline for job attempts. If the request handler does not respond by
+   * this deadline then the request is cancelled and the attempt is marked as a
+   * `DEADLINE_EXCEEDED` failure. The failed attempt can be viewed in
+   * execution logs. Cloud Scheduler will retry the job according
+   * to the [RetryConfig][google.cloud.scheduler.v1.RetryConfig].
+   * The allowed duration for this deadline is:
+   * * For [HTTP targets][google.cloud.scheduler.v1.Job.http_target], between 15 seconds and 30 minutes.
+   * * For [App Engine HTTP targets][google.cloud.scheduler.v1.Job.app_engine_http_target], between 15
+   *   seconds and 24 hours.
+   * 
+ * + * .google.protobuf.Duration attempt_deadline = 22; + */ + public boolean hasAttemptDeadline() { + return attemptDeadline_ != null; + } + /** + * + * + *
+   * The deadline for job attempts. If the request handler does not respond by
+   * this deadline then the request is cancelled and the attempt is marked as a
+   * `DEADLINE_EXCEEDED` failure. The failed attempt can be viewed in
+   * execution logs. Cloud Scheduler will retry the job according
+   * to the [RetryConfig][google.cloud.scheduler.v1.RetryConfig].
+   * The allowed duration for this deadline is:
+   * * For [HTTP targets][google.cloud.scheduler.v1.Job.http_target], between 15 seconds and 30 minutes.
+   * * For [App Engine HTTP targets][google.cloud.scheduler.v1.Job.app_engine_http_target], between 15
+   *   seconds and 24 hours.
+   * 
+ * + * .google.protobuf.Duration attempt_deadline = 22; + */ + public com.google.protobuf.Duration getAttemptDeadline() { + return attemptDeadline_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : attemptDeadline_; + } + /** + * + * + *
+   * The deadline for job attempts. If the request handler does not respond by
+   * this deadline then the request is cancelled and the attempt is marked as a
+   * `DEADLINE_EXCEEDED` failure. The failed attempt can be viewed in
+   * execution logs. Cloud Scheduler will retry the job according
+   * to the [RetryConfig][google.cloud.scheduler.v1.RetryConfig].
+   * The allowed duration for this deadline is:
+   * * For [HTTP targets][google.cloud.scheduler.v1.Job.http_target], between 15 seconds and 30 minutes.
+   * * For [App Engine HTTP targets][google.cloud.scheduler.v1.Job.app_engine_http_target], between 15
+   *   seconds and 24 hours.
+   * 
+ * + * .google.protobuf.Duration attempt_deadline = 22; + */ + public com.google.protobuf.DurationOrBuilder getAttemptDeadlineOrBuilder() { + return getAttemptDeadline(); + } + private byte memoizedIsInitialized = -1; @java.lang.Override @@ -1170,6 +1250,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io if (!getTimeZoneBytes().isEmpty()) { com.google.protobuf.GeneratedMessageV3.writeString(output, 21, timeZone_); } + if (attemptDeadline_ != null) { + output.writeMessage(22, getAttemptDeadline()); + } unknownFields.writeTo(output); } @@ -1224,6 +1307,9 @@ public int getSerializedSize() { if (!getTimeZoneBytes().isEmpty()) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(21, timeZone_); } + if (attemptDeadline_ != null) { + size += com.google.protobuf.CodedOutputStream.computeMessageSize(22, getAttemptDeadline()); + } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; @@ -1264,6 +1350,10 @@ public boolean equals(final java.lang.Object obj) { if (hasRetryConfig()) { if (!getRetryConfig().equals(other.getRetryConfig())) return false; } + if (hasAttemptDeadline() != other.hasAttemptDeadline()) return false; + if (hasAttemptDeadline()) { + if (!getAttemptDeadline().equals(other.getAttemptDeadline())) return false; + } if (!getTargetCase().equals(other.getTargetCase())) return false; switch (targetCase_) { case 4: @@ -1319,6 +1409,10 @@ public int hashCode() { hash = (37 * hash) + RETRY_CONFIG_FIELD_NUMBER; hash = (53 * hash) + getRetryConfig().hashCode(); } + if (hasAttemptDeadline()) { + hash = (37 * hash) + ATTEMPT_DEADLINE_FIELD_NUMBER; + hash = (53 * hash) + getAttemptDeadline().hashCode(); + } switch (targetCase_) { case 4: hash = (37 * hash) + PUBSUB_TARGET_FIELD_NUMBER; @@ -1520,6 +1614,12 @@ public Builder clear() { retryConfig_ = null; retryConfigBuilder_ = null; } + if (attemptDeadlineBuilder_ == null) { + attemptDeadline_ = null; + } else { + attemptDeadline_ = null; + attemptDeadlineBuilder_ = null; + } targetCase_ = 0; target_ = null; return this; @@ -1599,6 +1699,11 @@ public com.google.cloud.scheduler.v1.Job buildPartial() { } else { result.retryConfig_ = retryConfigBuilder_.build(); } + if (attemptDeadlineBuilder_ == null) { + result.attemptDeadline_ = attemptDeadline_; + } else { + result.attemptDeadline_ = attemptDeadlineBuilder_.build(); + } result.targetCase_ = targetCase_; onBuilt(); return result; @@ -1683,6 +1788,9 @@ public Builder mergeFrom(com.google.cloud.scheduler.v1.Job other) { if (other.hasRetryConfig()) { mergeRetryConfig(other.getRetryConfig()); } + if (other.hasAttemptDeadline()) { + mergeAttemptDeadline(other.getAttemptDeadline()); + } switch (other.getTargetCase()) { case PUBSUB_TARGET: { @@ -3924,6 +4032,259 @@ public com.google.cloud.scheduler.v1.RetryConfigOrBuilder getRetryConfigOrBuilde return retryConfigBuilder_; } + private com.google.protobuf.Duration attemptDeadline_; + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder> + attemptDeadlineBuilder_; + /** + * + * + *
+     * The deadline for job attempts. If the request handler does not respond by
+     * this deadline then the request is cancelled and the attempt is marked as a
+     * `DEADLINE_EXCEEDED` failure. The failed attempt can be viewed in
+     * execution logs. Cloud Scheduler will retry the job according
+     * to the [RetryConfig][google.cloud.scheduler.v1.RetryConfig].
+     * The allowed duration for this deadline is:
+     * * For [HTTP targets][google.cloud.scheduler.v1.Job.http_target], between 15 seconds and 30 minutes.
+     * * For [App Engine HTTP targets][google.cloud.scheduler.v1.Job.app_engine_http_target], between 15
+     *   seconds and 24 hours.
+     * 
+ * + * .google.protobuf.Duration attempt_deadline = 22; + */ + public boolean hasAttemptDeadline() { + return attemptDeadlineBuilder_ != null || attemptDeadline_ != null; + } + /** + * + * + *
+     * The deadline for job attempts. If the request handler does not respond by
+     * this deadline then the request is cancelled and the attempt is marked as a
+     * `DEADLINE_EXCEEDED` failure. The failed attempt can be viewed in
+     * execution logs. Cloud Scheduler will retry the job according
+     * to the [RetryConfig][google.cloud.scheduler.v1.RetryConfig].
+     * The allowed duration for this deadline is:
+     * * For [HTTP targets][google.cloud.scheduler.v1.Job.http_target], between 15 seconds and 30 minutes.
+     * * For [App Engine HTTP targets][google.cloud.scheduler.v1.Job.app_engine_http_target], between 15
+     *   seconds and 24 hours.
+     * 
+ * + * .google.protobuf.Duration attempt_deadline = 22; + */ + public com.google.protobuf.Duration getAttemptDeadline() { + if (attemptDeadlineBuilder_ == null) { + return attemptDeadline_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : attemptDeadline_; + } else { + return attemptDeadlineBuilder_.getMessage(); + } + } + /** + * + * + *
+     * The deadline for job attempts. If the request handler does not respond by
+     * this deadline then the request is cancelled and the attempt is marked as a
+     * `DEADLINE_EXCEEDED` failure. The failed attempt can be viewed in
+     * execution logs. Cloud Scheduler will retry the job according
+     * to the [RetryConfig][google.cloud.scheduler.v1.RetryConfig].
+     * The allowed duration for this deadline is:
+     * * For [HTTP targets][google.cloud.scheduler.v1.Job.http_target], between 15 seconds and 30 minutes.
+     * * For [App Engine HTTP targets][google.cloud.scheduler.v1.Job.app_engine_http_target], between 15
+     *   seconds and 24 hours.
+     * 
+ * + * .google.protobuf.Duration attempt_deadline = 22; + */ + public Builder setAttemptDeadline(com.google.protobuf.Duration value) { + if (attemptDeadlineBuilder_ == null) { + if (value == null) { + throw new NullPointerException(); + } + attemptDeadline_ = value; + onChanged(); + } else { + attemptDeadlineBuilder_.setMessage(value); + } + + return this; + } + /** + * + * + *
+     * The deadline for job attempts. If the request handler does not respond by
+     * this deadline then the request is cancelled and the attempt is marked as a
+     * `DEADLINE_EXCEEDED` failure. The failed attempt can be viewed in
+     * execution logs. Cloud Scheduler will retry the job according
+     * to the [RetryConfig][google.cloud.scheduler.v1.RetryConfig].
+     * The allowed duration for this deadline is:
+     * * For [HTTP targets][google.cloud.scheduler.v1.Job.http_target], between 15 seconds and 30 minutes.
+     * * For [App Engine HTTP targets][google.cloud.scheduler.v1.Job.app_engine_http_target], between 15
+     *   seconds and 24 hours.
+     * 
+ * + * .google.protobuf.Duration attempt_deadline = 22; + */ + public Builder setAttemptDeadline(com.google.protobuf.Duration.Builder builderForValue) { + if (attemptDeadlineBuilder_ == null) { + attemptDeadline_ = builderForValue.build(); + onChanged(); + } else { + attemptDeadlineBuilder_.setMessage(builderForValue.build()); + } + + return this; + } + /** + * + * + *
+     * The deadline for job attempts. If the request handler does not respond by
+     * this deadline then the request is cancelled and the attempt is marked as a
+     * `DEADLINE_EXCEEDED` failure. The failed attempt can be viewed in
+     * execution logs. Cloud Scheduler will retry the job according
+     * to the [RetryConfig][google.cloud.scheduler.v1.RetryConfig].
+     * The allowed duration for this deadline is:
+     * * For [HTTP targets][google.cloud.scheduler.v1.Job.http_target], between 15 seconds and 30 minutes.
+     * * For [App Engine HTTP targets][google.cloud.scheduler.v1.Job.app_engine_http_target], between 15
+     *   seconds and 24 hours.
+     * 
+ * + * .google.protobuf.Duration attempt_deadline = 22; + */ + public Builder mergeAttemptDeadline(com.google.protobuf.Duration value) { + if (attemptDeadlineBuilder_ == null) { + if (attemptDeadline_ != null) { + attemptDeadline_ = + com.google.protobuf.Duration.newBuilder(attemptDeadline_) + .mergeFrom(value) + .buildPartial(); + } else { + attemptDeadline_ = value; + } + onChanged(); + } else { + attemptDeadlineBuilder_.mergeFrom(value); + } + + return this; + } + /** + * + * + *
+     * The deadline for job attempts. If the request handler does not respond by
+     * this deadline then the request is cancelled and the attempt is marked as a
+     * `DEADLINE_EXCEEDED` failure. The failed attempt can be viewed in
+     * execution logs. Cloud Scheduler will retry the job according
+     * to the [RetryConfig][google.cloud.scheduler.v1.RetryConfig].
+     * The allowed duration for this deadline is:
+     * * For [HTTP targets][google.cloud.scheduler.v1.Job.http_target], between 15 seconds and 30 minutes.
+     * * For [App Engine HTTP targets][google.cloud.scheduler.v1.Job.app_engine_http_target], between 15
+     *   seconds and 24 hours.
+     * 
+ * + * .google.protobuf.Duration attempt_deadline = 22; + */ + public Builder clearAttemptDeadline() { + if (attemptDeadlineBuilder_ == null) { + attemptDeadline_ = null; + onChanged(); + } else { + attemptDeadline_ = null; + attemptDeadlineBuilder_ = null; + } + + return this; + } + /** + * + * + *
+     * The deadline for job attempts. If the request handler does not respond by
+     * this deadline then the request is cancelled and the attempt is marked as a
+     * `DEADLINE_EXCEEDED` failure. The failed attempt can be viewed in
+     * execution logs. Cloud Scheduler will retry the job according
+     * to the [RetryConfig][google.cloud.scheduler.v1.RetryConfig].
+     * The allowed duration for this deadline is:
+     * * For [HTTP targets][google.cloud.scheduler.v1.Job.http_target], between 15 seconds and 30 minutes.
+     * * For [App Engine HTTP targets][google.cloud.scheduler.v1.Job.app_engine_http_target], between 15
+     *   seconds and 24 hours.
+     * 
+ * + * .google.protobuf.Duration attempt_deadline = 22; + */ + public com.google.protobuf.Duration.Builder getAttemptDeadlineBuilder() { + + onChanged(); + return getAttemptDeadlineFieldBuilder().getBuilder(); + } + /** + * + * + *
+     * The deadline for job attempts. If the request handler does not respond by
+     * this deadline then the request is cancelled and the attempt is marked as a
+     * `DEADLINE_EXCEEDED` failure. The failed attempt can be viewed in
+     * execution logs. Cloud Scheduler will retry the job according
+     * to the [RetryConfig][google.cloud.scheduler.v1.RetryConfig].
+     * The allowed duration for this deadline is:
+     * * For [HTTP targets][google.cloud.scheduler.v1.Job.http_target], between 15 seconds and 30 minutes.
+     * * For [App Engine HTTP targets][google.cloud.scheduler.v1.Job.app_engine_http_target], between 15
+     *   seconds and 24 hours.
+     * 
+ * + * .google.protobuf.Duration attempt_deadline = 22; + */ + public com.google.protobuf.DurationOrBuilder getAttemptDeadlineOrBuilder() { + if (attemptDeadlineBuilder_ != null) { + return attemptDeadlineBuilder_.getMessageOrBuilder(); + } else { + return attemptDeadline_ == null + ? com.google.protobuf.Duration.getDefaultInstance() + : attemptDeadline_; + } + } + /** + * + * + *
+     * The deadline for job attempts. If the request handler does not respond by
+     * this deadline then the request is cancelled and the attempt is marked as a
+     * `DEADLINE_EXCEEDED` failure. The failed attempt can be viewed in
+     * execution logs. Cloud Scheduler will retry the job according
+     * to the [RetryConfig][google.cloud.scheduler.v1.RetryConfig].
+     * The allowed duration for this deadline is:
+     * * For [HTTP targets][google.cloud.scheduler.v1.Job.http_target], between 15 seconds and 30 minutes.
+     * * For [App Engine HTTP targets][google.cloud.scheduler.v1.Job.app_engine_http_target], between 15
+     *   seconds and 24 hours.
+     * 
+ * + * .google.protobuf.Duration attempt_deadline = 22; + */ + private com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder> + getAttemptDeadlineFieldBuilder() { + if (attemptDeadlineBuilder_ == null) { + attemptDeadlineBuilder_ = + new com.google.protobuf.SingleFieldBuilderV3< + com.google.protobuf.Duration, + com.google.protobuf.Duration.Builder, + com.google.protobuf.DurationOrBuilder>( + getAttemptDeadline(), getParentForChildren(), isClean()); + attemptDeadline_ = null; + } + return attemptDeadlineBuilder_; + } + @java.lang.Override public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); diff --git a/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/JobOrBuilder.java b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/JobOrBuilder.java index 4815b8b73f56..26a88b29c4c7 100644 --- a/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/JobOrBuilder.java +++ b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/JobOrBuilder.java @@ -449,5 +449,60 @@ public interface JobOrBuilder */ com.google.cloud.scheduler.v1.RetryConfigOrBuilder getRetryConfigOrBuilder(); + /** + * + * + *
+   * The deadline for job attempts. If the request handler does not respond by
+   * this deadline then the request is cancelled and the attempt is marked as a
+   * `DEADLINE_EXCEEDED` failure. The failed attempt can be viewed in
+   * execution logs. Cloud Scheduler will retry the job according
+   * to the [RetryConfig][google.cloud.scheduler.v1.RetryConfig].
+   * The allowed duration for this deadline is:
+   * * For [HTTP targets][google.cloud.scheduler.v1.Job.http_target], between 15 seconds and 30 minutes.
+   * * For [App Engine HTTP targets][google.cloud.scheduler.v1.Job.app_engine_http_target], between 15
+   *   seconds and 24 hours.
+   * 
+ * + * .google.protobuf.Duration attempt_deadline = 22; + */ + boolean hasAttemptDeadline(); + /** + * + * + *
+   * The deadline for job attempts. If the request handler does not respond by
+   * this deadline then the request is cancelled and the attempt is marked as a
+   * `DEADLINE_EXCEEDED` failure. The failed attempt can be viewed in
+   * execution logs. Cloud Scheduler will retry the job according
+   * to the [RetryConfig][google.cloud.scheduler.v1.RetryConfig].
+   * The allowed duration for this deadline is:
+   * * For [HTTP targets][google.cloud.scheduler.v1.Job.http_target], between 15 seconds and 30 minutes.
+   * * For [App Engine HTTP targets][google.cloud.scheduler.v1.Job.app_engine_http_target], between 15
+   *   seconds and 24 hours.
+   * 
+ * + * .google.protobuf.Duration attempt_deadline = 22; + */ + com.google.protobuf.Duration getAttemptDeadline(); + /** + * + * + *
+   * The deadline for job attempts. If the request handler does not respond by
+   * this deadline then the request is cancelled and the attempt is marked as a
+   * `DEADLINE_EXCEEDED` failure. The failed attempt can be viewed in
+   * execution logs. Cloud Scheduler will retry the job according
+   * to the [RetryConfig][google.cloud.scheduler.v1.RetryConfig].
+   * The allowed duration for this deadline is:
+   * * For [HTTP targets][google.cloud.scheduler.v1.Job.http_target], between 15 seconds and 30 minutes.
+   * * For [App Engine HTTP targets][google.cloud.scheduler.v1.Job.app_engine_http_target], between 15
+   *   seconds and 24 hours.
+   * 
+ * + * .google.protobuf.Duration attempt_deadline = 22; + */ + com.google.protobuf.DurationOrBuilder getAttemptDeadlineOrBuilder(); + public com.google.cloud.scheduler.v1.Job.TargetCase getTargetCase(); } diff --git a/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/JobProto.java b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/JobProto.java index 606acd8f2d15..39a496738628 100644 --- a/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/JobProto.java +++ b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/JobProto.java @@ -31,25 +31,27 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { java.lang.String[] descriptorData = { "\n#google/cloud/scheduler/v1/job.proto\022\031g" + "oogle.cloud.scheduler.v1\032\034google/api/ann" - + "otations.proto\032&google/cloud/scheduler/v" - + "1/target.proto\032\036google/protobuf/duration" - + ".proto\032\037google/protobuf/timestamp.proto\032" - + "\027google/rpc/status.proto\"\272\005\n\003Job\022\014\n\004name" - + "\030\001 \001(\t\022\023\n\013description\030\002 \001(\t\022@\n\rpubsub_ta" - + "rget\030\004 \001(\0132\'.google.cloud.scheduler.v1.P" - + "ubsubTargetH\000\022P\n\026app_engine_http_target\030" - + "\005 \001(\0132..google.cloud.scheduler.v1.AppEng" - + "ineHttpTargetH\000\022<\n\013http_target\030\006 \001(\0132%.g" - + "oogle.cloud.scheduler.v1.HttpTargetH\000\022\020\n" - + "\010schedule\030\024 \001(\t\022\021\n\ttime_zone\030\025 \001(\t\0224\n\020us" - + "er_update_time\030\t \001(\0132\032.google.protobuf.T" - + "imestamp\0223\n\005state\030\n \001(\0162$.google.cloud.s" - + "cheduler.v1.Job.State\022\"\n\006status\030\013 \001(\0132\022." - + "google.rpc.Status\0221\n\rschedule_time\030\021 \001(\013" - + "2\032.google.protobuf.Timestamp\0225\n\021last_att" - + "empt_time\030\022 \001(\0132\032.google.protobuf.Timest" - + "amp\022<\n\014retry_config\030\023 \001(\0132&.google.cloud" - + ".scheduler.v1.RetryConfig\"X\n\005State\022\025\n\021ST" + + "otations.proto\032\031google/api/resource.prot" + + "o\032&google/cloud/scheduler/v1/target.prot" + + "o\032\036google/protobuf/duration.proto\032\037googl" + + "e/protobuf/timestamp.proto\032\027google/rpc/s" + + "tatus.proto\"\357\005\n\003Job\022\014\n\004name\030\001 \001(\t\022\023\n\013des" + + "cription\030\002 \001(\t\022@\n\rpubsub_target\030\004 \001(\0132\'." + + "google.cloud.scheduler.v1.PubsubTargetH\000" + + "\022P\n\026app_engine_http_target\030\005 \001(\0132..googl" + + "e.cloud.scheduler.v1.AppEngineHttpTarget" + + "H\000\022<\n\013http_target\030\006 \001(\0132%.google.cloud.s" + + "cheduler.v1.HttpTargetH\000\022\020\n\010schedule\030\024 \001" + + "(\t\022\021\n\ttime_zone\030\025 \001(\t\0224\n\020user_update_tim" + + "e\030\t \001(\0132\032.google.protobuf.Timestamp\0223\n\005s" + + "tate\030\n \001(\0162$.google.cloud.scheduler.v1.J" + + "ob.State\022\"\n\006status\030\013 \001(\0132\022.google.rpc.St" + + "atus\0221\n\rschedule_time\030\021 \001(\0132\032.google.pro" + + "tobuf.Timestamp\0225\n\021last_attempt_time\030\022 \001" + + "(\0132\032.google.protobuf.Timestamp\022<\n\014retry_" + + "config\030\023 \001(\0132&.google.cloud.scheduler.v1" + + ".RetryConfig\0223\n\020attempt_deadline\030\026 \001(\0132\031" + + ".google.protobuf.Duration\"X\n\005State\022\025\n\021ST" + "ATE_UNSPECIFIED\020\000\022\013\n\007ENABLED\020\001\022\n\n\006PAUSED" + "\020\002\022\014\n\010DISABLED\020\003\022\021\n\rUPDATE_FAILED\020\004B\010\n\006t" + "arget\"\342\001\n\013RetryConfig\022\023\n\013retry_count\030\001 \001" @@ -74,6 +76,7 @@ public com.google.protobuf.ExtensionRegistry assignDescriptors( descriptorData, new com.google.protobuf.Descriptors.FileDescriptor[] { com.google.api.AnnotationsProto.getDescriptor(), + com.google.api.ResourceProto.getDescriptor(), com.google.cloud.scheduler.v1.TargetProto.getDescriptor(), com.google.protobuf.DurationProto.getDescriptor(), com.google.protobuf.TimestampProto.getDescriptor(), @@ -99,6 +102,7 @@ public com.google.protobuf.ExtensionRegistry assignDescriptors( "ScheduleTime", "LastAttemptTime", "RetryConfig", + "AttemptDeadline", "Target", }); internal_static_google_cloud_scheduler_v1_RetryConfig_descriptor = @@ -114,6 +118,7 @@ public com.google.protobuf.ExtensionRegistry assignDescriptors( "MaxDoublings", }); com.google.api.AnnotationsProto.getDescriptor(); + com.google.api.ResourceProto.getDescriptor(); com.google.cloud.scheduler.v1.TargetProto.getDescriptor(); com.google.protobuf.DurationProto.getDescriptor(); com.google.protobuf.TimestampProto.getDescriptor(); diff --git a/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/OAuthToken.java b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/OAuthToken.java new file mode 100644 index 000000000000..42e68baccf54 --- /dev/null +++ b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/OAuthToken.java @@ -0,0 +1,797 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/cloud/scheduler/v1/target.proto + +package com.google.cloud.scheduler.v1; + +/** + * + * + *
+ * Contains information needed for generating an
+ * [OAuth token](https://developers.google.com/identity/protocols/OAuth2).
+ * This type of authorization should be used when sending requests to a GCP
+ * endpoint.
+ * 
+ * + * Protobuf type {@code google.cloud.scheduler.v1.OAuthToken} + */ +public final class OAuthToken extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.cloud.scheduler.v1.OAuthToken) + OAuthTokenOrBuilder { + private static final long serialVersionUID = 0L; + // Use OAuthToken.newBuilder() to construct. + private OAuthToken(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private OAuthToken() { + serviceAccountEmail_ = ""; + scope_ = ""; + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet getUnknownFields() { + return this.unknownFields; + } + + private OAuthToken( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + int mutable_bitField0_ = 0; + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + java.lang.String s = input.readStringRequireUtf8(); + + serviceAccountEmail_ = s; + break; + } + case 18: + { + java.lang.String s = input.readStringRequireUtf8(); + + scope_ = s; + break; + } + default: + { + if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.scheduler.v1.TargetProto + .internal_static_google_cloud_scheduler_v1_OAuthToken_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.scheduler.v1.TargetProto + .internal_static_google_cloud_scheduler_v1_OAuthToken_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.scheduler.v1.OAuthToken.class, + com.google.cloud.scheduler.v1.OAuthToken.Builder.class); + } + + public static final int SERVICE_ACCOUNT_EMAIL_FIELD_NUMBER = 1; + private volatile java.lang.Object serviceAccountEmail_; + /** + * + * + *
+   * [Service account email](https://cloud.google.com/iam/docs/service-accounts)
+   * to be used for generating OAuth token.
+   * The service account must be within the same project as the job. The caller
+   * must have iam.serviceAccounts.actAs permission for the service account.
+   * 
+ * + * string service_account_email = 1; + */ + public java.lang.String getServiceAccountEmail() { + java.lang.Object ref = serviceAccountEmail_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + serviceAccountEmail_ = s; + return s; + } + } + /** + * + * + *
+   * [Service account email](https://cloud.google.com/iam/docs/service-accounts)
+   * to be used for generating OAuth token.
+   * The service account must be within the same project as the job. The caller
+   * must have iam.serviceAccounts.actAs permission for the service account.
+   * 
+ * + * string service_account_email = 1; + */ + public com.google.protobuf.ByteString getServiceAccountEmailBytes() { + java.lang.Object ref = serviceAccountEmail_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + serviceAccountEmail_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int SCOPE_FIELD_NUMBER = 2; + private volatile java.lang.Object scope_; + /** + * + * + *
+   * OAuth scope to be used for generating OAuth access token.
+   * If not specified, "https://www.googleapis.com/auth/cloud-platform"
+   * will be used.
+   * 
+ * + * string scope = 2; + */ + public java.lang.String getScope() { + java.lang.Object ref = scope_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + scope_ = s; + return s; + } + } + /** + * + * + *
+   * OAuth scope to be used for generating OAuth access token.
+   * If not specified, "https://www.googleapis.com/auth/cloud-platform"
+   * will be used.
+   * 
+ * + * string scope = 2; + */ + public com.google.protobuf.ByteString getScopeBytes() { + java.lang.Object ref = scope_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + scope_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + private byte memoizedIsInitialized = -1; + + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (!getServiceAccountEmailBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, serviceAccountEmail_); + } + if (!getScopeBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, scope_); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!getServiceAccountEmailBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, serviceAccountEmail_); + } + if (!getScopeBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, scope_); + } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.cloud.scheduler.v1.OAuthToken)) { + return super.equals(obj); + } + com.google.cloud.scheduler.v1.OAuthToken other = (com.google.cloud.scheduler.v1.OAuthToken) obj; + + if (!getServiceAccountEmail().equals(other.getServiceAccountEmail())) return false; + if (!getScope().equals(other.getScope())) return false; + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + SERVICE_ACCOUNT_EMAIL_FIELD_NUMBER; + hash = (53 * hash) + getServiceAccountEmail().hashCode(); + hash = (37 * hash) + SCOPE_FIELD_NUMBER; + hash = (53 * hash) + getScope().hashCode(); + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.scheduler.v1.OAuthToken parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.scheduler.v1.OAuthToken parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.scheduler.v1.OAuthToken parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.scheduler.v1.OAuthToken parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.scheduler.v1.OAuthToken parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.scheduler.v1.OAuthToken parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.scheduler.v1.OAuthToken parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.scheduler.v1.OAuthToken parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.cloud.scheduler.v1.OAuthToken parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.scheduler.v1.OAuthToken parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.cloud.scheduler.v1.OAuthToken parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.scheduler.v1.OAuthToken parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder(com.google.cloud.scheduler.v1.OAuthToken prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * + * + *
+   * Contains information needed for generating an
+   * [OAuth token](https://developers.google.com/identity/protocols/OAuth2).
+   * This type of authorization should be used when sending requests to a GCP
+   * endpoint.
+   * 
+ * + * Protobuf type {@code google.cloud.scheduler.v1.OAuthToken} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.scheduler.v1.OAuthToken) + com.google.cloud.scheduler.v1.OAuthTokenOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.scheduler.v1.TargetProto + .internal_static_google_cloud_scheduler_v1_OAuthToken_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.scheduler.v1.TargetProto + .internal_static_google_cloud_scheduler_v1_OAuthToken_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.scheduler.v1.OAuthToken.class, + com.google.cloud.scheduler.v1.OAuthToken.Builder.class); + } + + // Construct using com.google.cloud.scheduler.v1.OAuthToken.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders) {} + } + + @java.lang.Override + public Builder clear() { + super.clear(); + serviceAccountEmail_ = ""; + + scope_ = ""; + + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.scheduler.v1.TargetProto + .internal_static_google_cloud_scheduler_v1_OAuthToken_descriptor; + } + + @java.lang.Override + public com.google.cloud.scheduler.v1.OAuthToken getDefaultInstanceForType() { + return com.google.cloud.scheduler.v1.OAuthToken.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.scheduler.v1.OAuthToken build() { + com.google.cloud.scheduler.v1.OAuthToken result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.scheduler.v1.OAuthToken buildPartial() { + com.google.cloud.scheduler.v1.OAuthToken result = + new com.google.cloud.scheduler.v1.OAuthToken(this); + result.serviceAccountEmail_ = serviceAccountEmail_; + result.scope_ = scope_; + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } + + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.scheduler.v1.OAuthToken) { + return mergeFrom((com.google.cloud.scheduler.v1.OAuthToken) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.cloud.scheduler.v1.OAuthToken other) { + if (other == com.google.cloud.scheduler.v1.OAuthToken.getDefaultInstance()) return this; + if (!other.getServiceAccountEmail().isEmpty()) { + serviceAccountEmail_ = other.serviceAccountEmail_; + onChanged(); + } + if (!other.getScope().isEmpty()) { + scope_ = other.scope_; + onChanged(); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + com.google.cloud.scheduler.v1.OAuthToken parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (com.google.cloud.scheduler.v1.OAuthToken) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + + private java.lang.Object serviceAccountEmail_ = ""; + /** + * + * + *
+     * [Service account email](https://cloud.google.com/iam/docs/service-accounts)
+     * to be used for generating OAuth token.
+     * The service account must be within the same project as the job. The caller
+     * must have iam.serviceAccounts.actAs permission for the service account.
+     * 
+ * + * string service_account_email = 1; + */ + public java.lang.String getServiceAccountEmail() { + java.lang.Object ref = serviceAccountEmail_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + serviceAccountEmail_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * + * + *
+     * [Service account email](https://cloud.google.com/iam/docs/service-accounts)
+     * to be used for generating OAuth token.
+     * The service account must be within the same project as the job. The caller
+     * must have iam.serviceAccounts.actAs permission for the service account.
+     * 
+ * + * string service_account_email = 1; + */ + public com.google.protobuf.ByteString getServiceAccountEmailBytes() { + java.lang.Object ref = serviceAccountEmail_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + serviceAccountEmail_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * + * + *
+     * [Service account email](https://cloud.google.com/iam/docs/service-accounts)
+     * to be used for generating OAuth token.
+     * The service account must be within the same project as the job. The caller
+     * must have iam.serviceAccounts.actAs permission for the service account.
+     * 
+ * + * string service_account_email = 1; + */ + public Builder setServiceAccountEmail(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + serviceAccountEmail_ = value; + onChanged(); + return this; + } + /** + * + * + *
+     * [Service account email](https://cloud.google.com/iam/docs/service-accounts)
+     * to be used for generating OAuth token.
+     * The service account must be within the same project as the job. The caller
+     * must have iam.serviceAccounts.actAs permission for the service account.
+     * 
+ * + * string service_account_email = 1; + */ + public Builder clearServiceAccountEmail() { + + serviceAccountEmail_ = getDefaultInstance().getServiceAccountEmail(); + onChanged(); + return this; + } + /** + * + * + *
+     * [Service account email](https://cloud.google.com/iam/docs/service-accounts)
+     * to be used for generating OAuth token.
+     * The service account must be within the same project as the job. The caller
+     * must have iam.serviceAccounts.actAs permission for the service account.
+     * 
+ * + * string service_account_email = 1; + */ + public Builder setServiceAccountEmailBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + serviceAccountEmail_ = value; + onChanged(); + return this; + } + + private java.lang.Object scope_ = ""; + /** + * + * + *
+     * OAuth scope to be used for generating OAuth access token.
+     * If not specified, "https://www.googleapis.com/auth/cloud-platform"
+     * will be used.
+     * 
+ * + * string scope = 2; + */ + public java.lang.String getScope() { + java.lang.Object ref = scope_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + scope_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * + * + *
+     * OAuth scope to be used for generating OAuth access token.
+     * If not specified, "https://www.googleapis.com/auth/cloud-platform"
+     * will be used.
+     * 
+ * + * string scope = 2; + */ + public com.google.protobuf.ByteString getScopeBytes() { + java.lang.Object ref = scope_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + scope_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * + * + *
+     * OAuth scope to be used for generating OAuth access token.
+     * If not specified, "https://www.googleapis.com/auth/cloud-platform"
+     * will be used.
+     * 
+ * + * string scope = 2; + */ + public Builder setScope(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + scope_ = value; + onChanged(); + return this; + } + /** + * + * + *
+     * OAuth scope to be used for generating OAuth access token.
+     * If not specified, "https://www.googleapis.com/auth/cloud-platform"
+     * will be used.
+     * 
+ * + * string scope = 2; + */ + public Builder clearScope() { + + scope_ = getDefaultInstance().getScope(); + onChanged(); + return this; + } + /** + * + * + *
+     * OAuth scope to be used for generating OAuth access token.
+     * If not specified, "https://www.googleapis.com/auth/cloud-platform"
+     * will be used.
+     * 
+ * + * string scope = 2; + */ + public Builder setScopeBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + scope_ = value; + onChanged(); + return this; + } + + @java.lang.Override + public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + // @@protoc_insertion_point(builder_scope:google.cloud.scheduler.v1.OAuthToken) + } + + // @@protoc_insertion_point(class_scope:google.cloud.scheduler.v1.OAuthToken) + private static final com.google.cloud.scheduler.v1.OAuthToken DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.scheduler.v1.OAuthToken(); + } + + public static com.google.cloud.scheduler.v1.OAuthToken getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public OAuthToken parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new OAuthToken(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.scheduler.v1.OAuthToken getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/OAuthTokenOrBuilder.java b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/OAuthTokenOrBuilder.java new file mode 100644 index 000000000000..e667abb85a38 --- /dev/null +++ b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/OAuthTokenOrBuilder.java @@ -0,0 +1,62 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/cloud/scheduler/v1/target.proto + +package com.google.cloud.scheduler.v1; + +public interface OAuthTokenOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.scheduler.v1.OAuthToken) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+   * [Service account email](https://cloud.google.com/iam/docs/service-accounts)
+   * to be used for generating OAuth token.
+   * The service account must be within the same project as the job. The caller
+   * must have iam.serviceAccounts.actAs permission for the service account.
+   * 
+ * + * string service_account_email = 1; + */ + java.lang.String getServiceAccountEmail(); + /** + * + * + *
+   * [Service account email](https://cloud.google.com/iam/docs/service-accounts)
+   * to be used for generating OAuth token.
+   * The service account must be within the same project as the job. The caller
+   * must have iam.serviceAccounts.actAs permission for the service account.
+   * 
+ * + * string service_account_email = 1; + */ + com.google.protobuf.ByteString getServiceAccountEmailBytes(); + + /** + * + * + *
+   * OAuth scope to be used for generating OAuth access token.
+   * If not specified, "https://www.googleapis.com/auth/cloud-platform"
+   * will be used.
+   * 
+ * + * string scope = 2; + */ + java.lang.String getScope(); + /** + * + * + *
+   * OAuth scope to be used for generating OAuth access token.
+   * If not specified, "https://www.googleapis.com/auth/cloud-platform"
+   * will be used.
+   * 
+ * + * string scope = 2; + */ + com.google.protobuf.ByteString getScopeBytes(); +} diff --git a/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/OidcToken.java b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/OidcToken.java new file mode 100644 index 000000000000..78982f97cd94 --- /dev/null +++ b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/OidcToken.java @@ -0,0 +1,792 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/cloud/scheduler/v1/target.proto + +package com.google.cloud.scheduler.v1; + +/** + * + * + *
+ * Contains information needed for generating an
+ * [OpenID Connect
+ * token](https://developers.google.com/identity/protocols/OpenIDConnect). This
+ * type of authorization should be used when sending requests to third party
+ * endpoints or Cloud Run.
+ * 
+ * + * Protobuf type {@code google.cloud.scheduler.v1.OidcToken} + */ +public final class OidcToken extends com.google.protobuf.GeneratedMessageV3 + implements + // @@protoc_insertion_point(message_implements:google.cloud.scheduler.v1.OidcToken) + OidcTokenOrBuilder { + private static final long serialVersionUID = 0L; + // Use OidcToken.newBuilder() to construct. + private OidcToken(com.google.protobuf.GeneratedMessageV3.Builder builder) { + super(builder); + } + + private OidcToken() { + serviceAccountEmail_ = ""; + audience_ = ""; + } + + @java.lang.Override + public final com.google.protobuf.UnknownFieldSet getUnknownFields() { + return this.unknownFields; + } + + private OidcToken( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + this(); + if (extensionRegistry == null) { + throw new java.lang.NullPointerException(); + } + int mutable_bitField0_ = 0; + com.google.protobuf.UnknownFieldSet.Builder unknownFields = + com.google.protobuf.UnknownFieldSet.newBuilder(); + try { + boolean done = false; + while (!done) { + int tag = input.readTag(); + switch (tag) { + case 0: + done = true; + break; + case 10: + { + java.lang.String s = input.readStringRequireUtf8(); + + serviceAccountEmail_ = s; + break; + } + case 18: + { + java.lang.String s = input.readStringRequireUtf8(); + + audience_ = s; + break; + } + default: + { + if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { + done = true; + } + break; + } + } + } + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + throw e.setUnfinishedMessage(this); + } catch (java.io.IOException e) { + throw new com.google.protobuf.InvalidProtocolBufferException(e).setUnfinishedMessage(this); + } finally { + this.unknownFields = unknownFields.build(); + makeExtensionsImmutable(); + } + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.scheduler.v1.TargetProto + .internal_static_google_cloud_scheduler_v1_OidcToken_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.scheduler.v1.TargetProto + .internal_static_google_cloud_scheduler_v1_OidcToken_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.scheduler.v1.OidcToken.class, + com.google.cloud.scheduler.v1.OidcToken.Builder.class); + } + + public static final int SERVICE_ACCOUNT_EMAIL_FIELD_NUMBER = 1; + private volatile java.lang.Object serviceAccountEmail_; + /** + * + * + *
+   * [Service account email](https://cloud.google.com/iam/docs/service-accounts)
+   * to be used for generating OIDC token.
+   * The service account must be within the same project as the job. The caller
+   * must have iam.serviceAccounts.actAs permission for the service account.
+   * 
+ * + * string service_account_email = 1; + */ + public java.lang.String getServiceAccountEmail() { + java.lang.Object ref = serviceAccountEmail_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + serviceAccountEmail_ = s; + return s; + } + } + /** + * + * + *
+   * [Service account email](https://cloud.google.com/iam/docs/service-accounts)
+   * to be used for generating OIDC token.
+   * The service account must be within the same project as the job. The caller
+   * must have iam.serviceAccounts.actAs permission for the service account.
+   * 
+ * + * string service_account_email = 1; + */ + public com.google.protobuf.ByteString getServiceAccountEmailBytes() { + java.lang.Object ref = serviceAccountEmail_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + serviceAccountEmail_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + public static final int AUDIENCE_FIELD_NUMBER = 2; + private volatile java.lang.Object audience_; + /** + * + * + *
+   * Audience to be used when generating OIDC token. If not specified, the URI
+   * specified in target will be used.
+   * 
+ * + * string audience = 2; + */ + public java.lang.String getAudience() { + java.lang.Object ref = audience_; + if (ref instanceof java.lang.String) { + return (java.lang.String) ref; + } else { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + audience_ = s; + return s; + } + } + /** + * + * + *
+   * Audience to be used when generating OIDC token. If not specified, the URI
+   * specified in target will be used.
+   * 
+ * + * string audience = 2; + */ + public com.google.protobuf.ByteString getAudienceBytes() { + java.lang.Object ref = audience_; + if (ref instanceof java.lang.String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + audience_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + + private byte memoizedIsInitialized = -1; + + @java.lang.Override + public final boolean isInitialized() { + byte isInitialized = memoizedIsInitialized; + if (isInitialized == 1) return true; + if (isInitialized == 0) return false; + + memoizedIsInitialized = 1; + return true; + } + + @java.lang.Override + public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { + if (!getServiceAccountEmailBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 1, serviceAccountEmail_); + } + if (!getAudienceBytes().isEmpty()) { + com.google.protobuf.GeneratedMessageV3.writeString(output, 2, audience_); + } + unknownFields.writeTo(output); + } + + @java.lang.Override + public int getSerializedSize() { + int size = memoizedSize; + if (size != -1) return size; + + size = 0; + if (!getServiceAccountEmailBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, serviceAccountEmail_); + } + if (!getAudienceBytes().isEmpty()) { + size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, audience_); + } + size += unknownFields.getSerializedSize(); + memoizedSize = size; + return size; + } + + @java.lang.Override + public boolean equals(final java.lang.Object obj) { + if (obj == this) { + return true; + } + if (!(obj instanceof com.google.cloud.scheduler.v1.OidcToken)) { + return super.equals(obj); + } + com.google.cloud.scheduler.v1.OidcToken other = (com.google.cloud.scheduler.v1.OidcToken) obj; + + if (!getServiceAccountEmail().equals(other.getServiceAccountEmail())) return false; + if (!getAudience().equals(other.getAudience())) return false; + if (!unknownFields.equals(other.unknownFields)) return false; + return true; + } + + @java.lang.Override + public int hashCode() { + if (memoizedHashCode != 0) { + return memoizedHashCode; + } + int hash = 41; + hash = (19 * hash) + getDescriptor().hashCode(); + hash = (37 * hash) + SERVICE_ACCOUNT_EMAIL_FIELD_NUMBER; + hash = (53 * hash) + getServiceAccountEmail().hashCode(); + hash = (37 * hash) + AUDIENCE_FIELD_NUMBER; + hash = (53 * hash) + getAudience().hashCode(); + hash = (29 * hash) + unknownFields.hashCode(); + memoizedHashCode = hash; + return hash; + } + + public static com.google.cloud.scheduler.v1.OidcToken parseFrom(java.nio.ByteBuffer data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.scheduler.v1.OidcToken parseFrom( + java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.scheduler.v1.OidcToken parseFrom( + com.google.protobuf.ByteString data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.scheduler.v1.OidcToken parseFrom( + com.google.protobuf.ByteString data, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.scheduler.v1.OidcToken parseFrom(byte[] data) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data); + } + + public static com.google.cloud.scheduler.v1.OidcToken parseFrom( + byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return PARSER.parseFrom(data, extensionRegistry); + } + + public static com.google.cloud.scheduler.v1.OidcToken parseFrom(java.io.InputStream input) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.scheduler.v1.OidcToken parseFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.cloud.scheduler.v1.OidcToken parseDelimitedFrom( + java.io.InputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input); + } + + public static com.google.cloud.scheduler.v1.OidcToken parseDelimitedFrom( + java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException( + PARSER, input, extensionRegistry); + } + + public static com.google.cloud.scheduler.v1.OidcToken parseFrom( + com.google.protobuf.CodedInputStream input) throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); + } + + public static com.google.cloud.scheduler.v1.OidcToken parseFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + return com.google.protobuf.GeneratedMessageV3.parseWithIOException( + PARSER, input, extensionRegistry); + } + + @java.lang.Override + public Builder newBuilderForType() { + return newBuilder(); + } + + public static Builder newBuilder() { + return DEFAULT_INSTANCE.toBuilder(); + } + + public static Builder newBuilder(com.google.cloud.scheduler.v1.OidcToken prototype) { + return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); + } + + @java.lang.Override + public Builder toBuilder() { + return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); + } + + @java.lang.Override + protected Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + Builder builder = new Builder(parent); + return builder; + } + /** + * + * + *
+   * Contains information needed for generating an
+   * [OpenID Connect
+   * token](https://developers.google.com/identity/protocols/OpenIDConnect). This
+   * type of authorization should be used when sending requests to third party
+   * endpoints or Cloud Run.
+   * 
+ * + * Protobuf type {@code google.cloud.scheduler.v1.OidcToken} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder + implements + // @@protoc_insertion_point(builder_implements:google.cloud.scheduler.v1.OidcToken) + com.google.cloud.scheduler.v1.OidcTokenOrBuilder { + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.cloud.scheduler.v1.TargetProto + .internal_static_google_cloud_scheduler_v1_OidcToken_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.cloud.scheduler.v1.TargetProto + .internal_static_google_cloud_scheduler_v1_OidcToken_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.cloud.scheduler.v1.OidcToken.class, + com.google.cloud.scheduler.v1.OidcToken.Builder.class); + } + + // Construct using com.google.cloud.scheduler.v1.OidcToken.newBuilder() + private Builder() { + maybeForceBuilderInitialization(); + } + + private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { + super(parent); + maybeForceBuilderInitialization(); + } + + private void maybeForceBuilderInitialization() { + if (com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders) {} + } + + @java.lang.Override + public Builder clear() { + super.clear(); + serviceAccountEmail_ = ""; + + audience_ = ""; + + return this; + } + + @java.lang.Override + public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { + return com.google.cloud.scheduler.v1.TargetProto + .internal_static_google_cloud_scheduler_v1_OidcToken_descriptor; + } + + @java.lang.Override + public com.google.cloud.scheduler.v1.OidcToken getDefaultInstanceForType() { + return com.google.cloud.scheduler.v1.OidcToken.getDefaultInstance(); + } + + @java.lang.Override + public com.google.cloud.scheduler.v1.OidcToken build() { + com.google.cloud.scheduler.v1.OidcToken result = buildPartial(); + if (!result.isInitialized()) { + throw newUninitializedMessageException(result); + } + return result; + } + + @java.lang.Override + public com.google.cloud.scheduler.v1.OidcToken buildPartial() { + com.google.cloud.scheduler.v1.OidcToken result = + new com.google.cloud.scheduler.v1.OidcToken(this); + result.serviceAccountEmail_ = serviceAccountEmail_; + result.audience_ = audience_; + onBuilt(); + return result; + } + + @java.lang.Override + public Builder clone() { + return super.clone(); + } + + @java.lang.Override + public Builder setField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.setField(field, value); + } + + @java.lang.Override + public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { + return super.clearField(field); + } + + @java.lang.Override + public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { + return super.clearOneof(oneof); + } + + @java.lang.Override + public Builder setRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { + return super.setRepeatedField(field, index, value); + } + + @java.lang.Override + public Builder addRepeatedField( + com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { + return super.addRepeatedField(field, value); + } + + @java.lang.Override + public Builder mergeFrom(com.google.protobuf.Message other) { + if (other instanceof com.google.cloud.scheduler.v1.OidcToken) { + return mergeFrom((com.google.cloud.scheduler.v1.OidcToken) other); + } else { + super.mergeFrom(other); + return this; + } + } + + public Builder mergeFrom(com.google.cloud.scheduler.v1.OidcToken other) { + if (other == com.google.cloud.scheduler.v1.OidcToken.getDefaultInstance()) return this; + if (!other.getServiceAccountEmail().isEmpty()) { + serviceAccountEmail_ = other.serviceAccountEmail_; + onChanged(); + } + if (!other.getAudience().isEmpty()) { + audience_ = other.audience_; + onChanged(); + } + this.mergeUnknownFields(other.unknownFields); + onChanged(); + return this; + } + + @java.lang.Override + public final boolean isInitialized() { + return true; + } + + @java.lang.Override + public Builder mergeFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws java.io.IOException { + com.google.cloud.scheduler.v1.OidcToken parsedMessage = null; + try { + parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); + } catch (com.google.protobuf.InvalidProtocolBufferException e) { + parsedMessage = (com.google.cloud.scheduler.v1.OidcToken) e.getUnfinishedMessage(); + throw e.unwrapIOException(); + } finally { + if (parsedMessage != null) { + mergeFrom(parsedMessage); + } + } + return this; + } + + private java.lang.Object serviceAccountEmail_ = ""; + /** + * + * + *
+     * [Service account email](https://cloud.google.com/iam/docs/service-accounts)
+     * to be used for generating OIDC token.
+     * The service account must be within the same project as the job. The caller
+     * must have iam.serviceAccounts.actAs permission for the service account.
+     * 
+ * + * string service_account_email = 1; + */ + public java.lang.String getServiceAccountEmail() { + java.lang.Object ref = serviceAccountEmail_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + serviceAccountEmail_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * + * + *
+     * [Service account email](https://cloud.google.com/iam/docs/service-accounts)
+     * to be used for generating OIDC token.
+     * The service account must be within the same project as the job. The caller
+     * must have iam.serviceAccounts.actAs permission for the service account.
+     * 
+ * + * string service_account_email = 1; + */ + public com.google.protobuf.ByteString getServiceAccountEmailBytes() { + java.lang.Object ref = serviceAccountEmail_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + serviceAccountEmail_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * + * + *
+     * [Service account email](https://cloud.google.com/iam/docs/service-accounts)
+     * to be used for generating OIDC token.
+     * The service account must be within the same project as the job. The caller
+     * must have iam.serviceAccounts.actAs permission for the service account.
+     * 
+ * + * string service_account_email = 1; + */ + public Builder setServiceAccountEmail(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + serviceAccountEmail_ = value; + onChanged(); + return this; + } + /** + * + * + *
+     * [Service account email](https://cloud.google.com/iam/docs/service-accounts)
+     * to be used for generating OIDC token.
+     * The service account must be within the same project as the job. The caller
+     * must have iam.serviceAccounts.actAs permission for the service account.
+     * 
+ * + * string service_account_email = 1; + */ + public Builder clearServiceAccountEmail() { + + serviceAccountEmail_ = getDefaultInstance().getServiceAccountEmail(); + onChanged(); + return this; + } + /** + * + * + *
+     * [Service account email](https://cloud.google.com/iam/docs/service-accounts)
+     * to be used for generating OIDC token.
+     * The service account must be within the same project as the job. The caller
+     * must have iam.serviceAccounts.actAs permission for the service account.
+     * 
+ * + * string service_account_email = 1; + */ + public Builder setServiceAccountEmailBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + serviceAccountEmail_ = value; + onChanged(); + return this; + } + + private java.lang.Object audience_ = ""; + /** + * + * + *
+     * Audience to be used when generating OIDC token. If not specified, the URI
+     * specified in target will be used.
+     * 
+ * + * string audience = 2; + */ + public java.lang.String getAudience() { + java.lang.Object ref = audience_; + if (!(ref instanceof java.lang.String)) { + com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; + java.lang.String s = bs.toStringUtf8(); + audience_ = s; + return s; + } else { + return (java.lang.String) ref; + } + } + /** + * + * + *
+     * Audience to be used when generating OIDC token. If not specified, the URI
+     * specified in target will be used.
+     * 
+ * + * string audience = 2; + */ + public com.google.protobuf.ByteString getAudienceBytes() { + java.lang.Object ref = audience_; + if (ref instanceof String) { + com.google.protobuf.ByteString b = + com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref); + audience_ = b; + return b; + } else { + return (com.google.protobuf.ByteString) ref; + } + } + /** + * + * + *
+     * Audience to be used when generating OIDC token. If not specified, the URI
+     * specified in target will be used.
+     * 
+ * + * string audience = 2; + */ + public Builder setAudience(java.lang.String value) { + if (value == null) { + throw new NullPointerException(); + } + + audience_ = value; + onChanged(); + return this; + } + /** + * + * + *
+     * Audience to be used when generating OIDC token. If not specified, the URI
+     * specified in target will be used.
+     * 
+ * + * string audience = 2; + */ + public Builder clearAudience() { + + audience_ = getDefaultInstance().getAudience(); + onChanged(); + return this; + } + /** + * + * + *
+     * Audience to be used when generating OIDC token. If not specified, the URI
+     * specified in target will be used.
+     * 
+ * + * string audience = 2; + */ + public Builder setAudienceBytes(com.google.protobuf.ByteString value) { + if (value == null) { + throw new NullPointerException(); + } + checkByteStringIsUtf8(value); + + audience_ = value; + onChanged(); + return this; + } + + @java.lang.Override + public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.setUnknownFields(unknownFields); + } + + @java.lang.Override + public final Builder mergeUnknownFields( + final com.google.protobuf.UnknownFieldSet unknownFields) { + return super.mergeUnknownFields(unknownFields); + } + + // @@protoc_insertion_point(builder_scope:google.cloud.scheduler.v1.OidcToken) + } + + // @@protoc_insertion_point(class_scope:google.cloud.scheduler.v1.OidcToken) + private static final com.google.cloud.scheduler.v1.OidcToken DEFAULT_INSTANCE; + + static { + DEFAULT_INSTANCE = new com.google.cloud.scheduler.v1.OidcToken(); + } + + public static com.google.cloud.scheduler.v1.OidcToken getDefaultInstance() { + return DEFAULT_INSTANCE; + } + + private static final com.google.protobuf.Parser PARSER = + new com.google.protobuf.AbstractParser() { + @java.lang.Override + public OidcToken parsePartialFrom( + com.google.protobuf.CodedInputStream input, + com.google.protobuf.ExtensionRegistryLite extensionRegistry) + throws com.google.protobuf.InvalidProtocolBufferException { + return new OidcToken(input, extensionRegistry); + } + }; + + public static com.google.protobuf.Parser parser() { + return PARSER; + } + + @java.lang.Override + public com.google.protobuf.Parser getParserForType() { + return PARSER; + } + + @java.lang.Override + public com.google.cloud.scheduler.v1.OidcToken getDefaultInstanceForType() { + return DEFAULT_INSTANCE; + } +} diff --git a/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/OidcTokenOrBuilder.java b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/OidcTokenOrBuilder.java new file mode 100644 index 000000000000..b1a3e3eca6d4 --- /dev/null +++ b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/OidcTokenOrBuilder.java @@ -0,0 +1,60 @@ +// Generated by the protocol buffer compiler. DO NOT EDIT! +// source: google/cloud/scheduler/v1/target.proto + +package com.google.cloud.scheduler.v1; + +public interface OidcTokenOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.cloud.scheduler.v1.OidcToken) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+   * [Service account email](https://cloud.google.com/iam/docs/service-accounts)
+   * to be used for generating OIDC token.
+   * The service account must be within the same project as the job. The caller
+   * must have iam.serviceAccounts.actAs permission for the service account.
+   * 
+ * + * string service_account_email = 1; + */ + java.lang.String getServiceAccountEmail(); + /** + * + * + *
+   * [Service account email](https://cloud.google.com/iam/docs/service-accounts)
+   * to be used for generating OIDC token.
+   * The service account must be within the same project as the job. The caller
+   * must have iam.serviceAccounts.actAs permission for the service account.
+   * 
+ * + * string service_account_email = 1; + */ + com.google.protobuf.ByteString getServiceAccountEmailBytes(); + + /** + * + * + *
+   * Audience to be used when generating OIDC token. If not specified, the URI
+   * specified in target will be used.
+   * 
+ * + * string audience = 2; + */ + java.lang.String getAudience(); + /** + * + * + *
+   * Audience to be used when generating OIDC token. If not specified, the URI
+   * specified in target will be used.
+   * 
+ * + * string audience = 2; + */ + com.google.protobuf.ByteString getAudienceBytes(); +} diff --git a/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/SchedulerProto.java b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/SchedulerProto.java index 0cc873ce13d7..1435b25db3d3 100644 --- a/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/SchedulerProto.java +++ b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/SchedulerProto.java @@ -59,56 +59,56 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { java.lang.String[] descriptorData = { "\n.google/cloud/scheduler/v1/cloudschedul" + "er.proto\022\031google.cloud.scheduler.v1\032\034goo" - + "gle/api/annotations.proto\032#google/cloud/" - + "scheduler/v1/job.proto\032\033google/protobuf/" - + "empty.proto\032 google/protobuf/field_mask." - + "proto\"H\n\017ListJobsRequest\022\016\n\006parent\030\001 \001(\t" - + "\022\021\n\tpage_size\030\005 \001(\005\022\022\n\npage_token\030\006 \001(\t\"" - + "Y\n\020ListJobsResponse\022,\n\004jobs\030\001 \003(\0132\036.goog" - + "le.cloud.scheduler.v1.Job\022\027\n\017next_page_t" - + "oken\030\002 \001(\t\"\035\n\rGetJobRequest\022\014\n\004name\030\001 \001(" - + "\t\"O\n\020CreateJobRequest\022\016\n\006parent\030\001 \001(\t\022+\n" - + "\003job\030\002 \001(\0132\036.google.cloud.scheduler.v1.J" - + "ob\"p\n\020UpdateJobRequest\022+\n\003job\030\001 \001(\0132\036.go" - + "ogle.cloud.scheduler.v1.Job\022/\n\013update_ma" - + "sk\030\002 \001(\0132\032.google.protobuf.FieldMask\" \n\020" - + "DeleteJobRequest\022\014\n\004name\030\001 \001(\t\"\037\n\017PauseJ" - + "obRequest\022\014\n\004name\030\001 \001(\t\" \n\020ResumeJobRequ" - + "est\022\014\n\004name\030\001 \001(\t\"\035\n\rRunJobRequest\022\014\n\004na" - + "me\030\001 \001(\t2\225\t\n\016CloudScheduler\022\225\001\n\010ListJobs" - + "\022*.google.cloud.scheduler.v1.ListJobsReq" - + "uest\032+.google.cloud.scheduler.v1.ListJob" - + "sResponse\"0\202\323\344\223\002*\022(/v1/{parent=projects/" - + "*/locations/*}/jobs\022\204\001\n\006GetJob\022(.google." - + "cloud.scheduler.v1.GetJobRequest\032\036.googl" - + "e.cloud.scheduler.v1.Job\"0\202\323\344\223\002*\022(/v1/{n" - + "ame=projects/*/locations/*/jobs/*}\022\217\001\n\tC" - + "reateJob\022+.google.cloud.scheduler.v1.Cre" - + "ateJobRequest\032\036.google.cloud.scheduler.v" - + "1.Job\"5\202\323\344\223\002/\"(/v1/{parent=projects/*/lo" - + "cations/*}/jobs:\003job\022\223\001\n\tUpdateJob\022+.goo" - + "gle.cloud.scheduler.v1.UpdateJobRequest\032" - + "\036.google.cloud.scheduler.v1.Job\"9\202\323\344\223\00232" - + ",/v1/{job.name=projects/*/locations/*/jo" - + "bs/*}:\003job\022\202\001\n\tDeleteJob\022+.google.cloud." - + "scheduler.v1.DeleteJobRequest\032\026.google.p" - + "rotobuf.Empty\"0\202\323\344\223\002**(/v1/{name=project" - + "s/*/locations/*/jobs/*}\022\221\001\n\010PauseJob\022*.g" - + "oogle.cloud.scheduler.v1.PauseJobRequest" - + "\032\036.google.cloud.scheduler.v1.Job\"9\202\323\344\223\0023" - + "\"./v1/{name=projects/*/locations/*/jobs/" - + "*}:pause:\001*\022\224\001\n\tResumeJob\022+.google.cloud" - + ".scheduler.v1.ResumeJobRequest\032\036.google." - + "cloud.scheduler.v1.Job\":\202\323\344\223\0024\"//v1/{nam" - + "e=projects/*/locations/*/jobs/*}:resume:" - + "\001*\022\213\001\n\006RunJob\022(.google.cloud.scheduler.v" - + "1.RunJobRequest\032\036.google.cloud.scheduler" - + ".v1.Job\"7\202\323\344\223\0021\",/v1/{name=projects/*/lo" - + "cations/*/jobs/*}:run:\001*B\201\001\n\035com.google." - + "cloud.scheduler.v1B\016SchedulerProtoP\001ZBgo" - + "ogle.golang.org/genproto/googleapis/clou" - + "d/scheduler/v1;scheduler\242\002\tSCHEDULERb\006pr" - + "oto3" + + "gle/api/annotations.proto\032\031google/api/re" + + "source.proto\032#google/cloud/scheduler/v1/" + + "job.proto\032\033google/protobuf/empty.proto\032 " + + "google/protobuf/field_mask.proto\"H\n\017List" + + "JobsRequest\022\016\n\006parent\030\001 \001(\t\022\021\n\tpage_size" + + "\030\005 \001(\005\022\022\n\npage_token\030\006 \001(\t\"Y\n\020ListJobsRe" + + "sponse\022,\n\004jobs\030\001 \003(\0132\036.google.cloud.sche" + + "duler.v1.Job\022\027\n\017next_page_token\030\002 \001(\t\"\035\n" + + "\rGetJobRequest\022\014\n\004name\030\001 \001(\t\"O\n\020CreateJo" + + "bRequest\022\016\n\006parent\030\001 \001(\t\022+\n\003job\030\002 \001(\0132\036." + + "google.cloud.scheduler.v1.Job\"p\n\020UpdateJ" + + "obRequest\022+\n\003job\030\001 \001(\0132\036.google.cloud.sc" + + "heduler.v1.Job\022/\n\013update_mask\030\002 \001(\0132\032.go" + + "ogle.protobuf.FieldMask\" \n\020DeleteJobRequ" + + "est\022\014\n\004name\030\001 \001(\t\"\037\n\017PauseJobRequest\022\014\n\004" + + "name\030\001 \001(\t\" \n\020ResumeJobRequest\022\014\n\004name\030\001" + + " \001(\t\"\035\n\rRunJobRequest\022\014\n\004name\030\001 \001(\t2\225\t\n\016" + + "CloudScheduler\022\225\001\n\010ListJobs\022*.google.clo" + + "ud.scheduler.v1.ListJobsRequest\032+.google" + + ".cloud.scheduler.v1.ListJobsResponse\"0\202\323" + + "\344\223\002*\022(/v1/{parent=projects/*/locations/*" + + "}/jobs\022\204\001\n\006GetJob\022(.google.cloud.schedul" + + "er.v1.GetJobRequest\032\036.google.cloud.sched" + + "uler.v1.Job\"0\202\323\344\223\002*\022(/v1/{name=projects/" + + "*/locations/*/jobs/*}\022\217\001\n\tCreateJob\022+.go" + + "ogle.cloud.scheduler.v1.CreateJobRequest" + + "\032\036.google.cloud.scheduler.v1.Job\"5\202\323\344\223\002/" + + "\"(/v1/{parent=projects/*/locations/*}/jo" + + "bs:\003job\022\223\001\n\tUpdateJob\022+.google.cloud.sch" + + "eduler.v1.UpdateJobRequest\032\036.google.clou" + + "d.scheduler.v1.Job\"9\202\323\344\223\00232,/v1/{job.nam" + + "e=projects/*/locations/*/jobs/*}:\003job\022\202\001" + + "\n\tDeleteJob\022+.google.cloud.scheduler.v1." + + "DeleteJobRequest\032\026.google.protobuf.Empty" + + "\"0\202\323\344\223\002**(/v1/{name=projects/*/locations" + + "/*/jobs/*}\022\221\001\n\010PauseJob\022*.google.cloud.s" + + "cheduler.v1.PauseJobRequest\032\036.google.clo" + + "ud.scheduler.v1.Job\"9\202\323\344\223\0023\"./v1/{name=p" + + "rojects/*/locations/*/jobs/*}:pause:\001*\022\224" + + "\001\n\tResumeJob\022+.google.cloud.scheduler.v1" + + ".ResumeJobRequest\032\036.google.cloud.schedul" + + "er.v1.Job\":\202\323\344\223\0024\"//v1/{name=projects/*/" + + "locations/*/jobs/*}:resume:\001*\022\213\001\n\006RunJob" + + "\022(.google.cloud.scheduler.v1.RunJobReque" + + "st\032\036.google.cloud.scheduler.v1.Job\"7\202\323\344\223" + + "\0021\",/v1/{name=projects/*/locations/*/job" + + "s/*}:run:\001*B\201\001\n\035com.google.cloud.schedul" + + "er.v1B\016SchedulerProtoP\001ZBgoogle.golang.o" + + "rg/genproto/googleapis/cloud/scheduler/v" + + "1;scheduler\242\002\tSCHEDULERb\006proto3" }; com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner = new com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner() { @@ -122,6 +122,7 @@ public com.google.protobuf.ExtensionRegistry assignDescriptors( descriptorData, new com.google.protobuf.Descriptors.FileDescriptor[] { com.google.api.AnnotationsProto.getDescriptor(), + com.google.api.ResourceProto.getDescriptor(), com.google.cloud.scheduler.v1.JobProto.getDescriptor(), com.google.protobuf.EmptyProto.getDescriptor(), com.google.protobuf.FieldMaskProto.getDescriptor(), @@ -205,6 +206,7 @@ public com.google.protobuf.ExtensionRegistry assignDescriptors( com.google.protobuf.Descriptors.FileDescriptor.internalUpdateFileDescriptor( descriptor, registry); com.google.api.AnnotationsProto.getDescriptor(); + com.google.api.ResourceProto.getDescriptor(); com.google.cloud.scheduler.v1.JobProto.getDescriptor(); com.google.protobuf.EmptyProto.getDescriptor(); com.google.protobuf.FieldMaskProto.getDescriptor(); diff --git a/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/TargetProto.java b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/TargetProto.java index be1438bb232c..b20c09be939d 100644 --- a/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/TargetProto.java +++ b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/java/com/google/cloud/scheduler/v1/TargetProto.java @@ -40,6 +40,14 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r internal_static_google_cloud_scheduler_v1_AppEngineRouting_descriptor; static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internal_static_google_cloud_scheduler_v1_AppEngineRouting_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_scheduler_v1_OAuthToken_descriptor; + static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_google_cloud_scheduler_v1_OAuthToken_fieldAccessorTable; + static final com.google.protobuf.Descriptors.Descriptor + internal_static_google_cloud_scheduler_v1_OidcToken_descriptor; + static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable + internal_static_google_cloud_scheduler_v1_OidcToken_fieldAccessorTable; public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { return descriptor; @@ -52,33 +60,39 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { "\n&google/cloud/scheduler/v1/target.proto" + "\022\031google.cloud.scheduler.v1\032\034google/api/" + "annotations.proto\032\031google/protobuf/any.p" - + "roto\"\330\001\n\nHttpTarget\022\013\n\003uri\030\001 \001(\t\022:\n\013http" + + "roto\"\352\002\n\nHttpTarget\022\013\n\003uri\030\001 \001(\t\022:\n\013http" + "_method\030\002 \001(\0162%.google.cloud.scheduler.v" + "1.HttpMethod\022C\n\007headers\030\003 \003(\01322.google.c" + "loud.scheduler.v1.HttpTarget.HeadersEntr" - + "y\022\014\n\004body\030\004 \001(\014\032.\n\014HeadersEntry\022\013\n\003key\030\001" - + " \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"\274\002\n\023AppEngineHtt" - + "pTarget\022:\n\013http_method\030\001 \001(\0162%.google.cl" - + "oud.scheduler.v1.HttpMethod\022G\n\022app_engin" - + "e_routing\030\002 \001(\0132+.google.cloud.scheduler" - + ".v1.AppEngineRouting\022\024\n\014relative_uri\030\003 \001" - + "(\t\022L\n\007headers\030\004 \003(\0132;.google.cloud.sched" - + "uler.v1.AppEngineHttpTarget.HeadersEntry" - + "\022\014\n\004body\030\005 \001(\014\032.\n\014HeadersEntry\022\013\n\003key\030\001 " - + "\001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"\260\001\n\014PubsubTarget\022" - + "\022\n\ntopic_name\030\001 \001(\t\022\014\n\004data\030\003 \001(\014\022K\n\natt" - + "ributes\030\004 \003(\01327.google.cloud.scheduler.v" - + "1.PubsubTarget.AttributesEntry\0321\n\017Attrib" - + "utesEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028" - + "\001\"T\n\020AppEngineRouting\022\017\n\007service\030\001 \001(\t\022\017" - + "\n\007version\030\002 \001(\t\022\020\n\010instance\030\003 \001(\t\022\014\n\004hos" - + "t\030\004 \001(\t*s\n\nHttpMethod\022\033\n\027HTTP_METHOD_UNS" - + "PECIFIED\020\000\022\010\n\004POST\020\001\022\007\n\003GET\020\002\022\010\n\004HEAD\020\003\022" - + "\007\n\003PUT\020\004\022\n\n\006DELETE\020\005\022\t\n\005PATCH\020\006\022\013\n\007OPTIO" - + "NS\020\007Br\n\035com.google.cloud.scheduler.v1B\013T" - + "argetProtoP\001ZBgoogle.golang.org/genproto" - + "/googleapis/cloud/scheduler/v1;scheduler" - + "b\006proto3" + + "y\022\014\n\004body\030\004 \001(\014\022<\n\013oauth_token\030\005 \001(\0132%.g" + + "oogle.cloud.scheduler.v1.OAuthTokenH\000\022:\n" + + "\noidc_token\030\006 \001(\0132$.google.cloud.schedul" + + "er.v1.OidcTokenH\000\032.\n\014HeadersEntry\022\013\n\003key" + + "\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001B\026\n\024authorizati" + + "on_header\"\274\002\n\023AppEngineHttpTarget\022:\n\013htt" + + "p_method\030\001 \001(\0162%.google.cloud.scheduler." + + "v1.HttpMethod\022G\n\022app_engine_routing\030\002 \001(" + + "\0132+.google.cloud.scheduler.v1.AppEngineR" + + "outing\022\024\n\014relative_uri\030\003 \001(\t\022L\n\007headers\030" + + "\004 \003(\0132;.google.cloud.scheduler.v1.AppEng" + + "ineHttpTarget.HeadersEntry\022\014\n\004body\030\005 \001(\014" + + "\032.\n\014HeadersEntry\022\013\n\003key\030\001 \001(\t\022\r\n\005value\030\002" + + " \001(\t:\0028\001\"\260\001\n\014PubsubTarget\022\022\n\ntopic_name\030" + + "\001 \001(\t\022\014\n\004data\030\003 \001(\014\022K\n\nattributes\030\004 \003(\0132" + + "7.google.cloud.scheduler.v1.PubsubTarget" + + ".AttributesEntry\0321\n\017AttributesEntry\022\013\n\003k" + + "ey\030\001 \001(\t\022\r\n\005value\030\002 \001(\t:\0028\001\"T\n\020AppEngine" + + "Routing\022\017\n\007service\030\001 \001(\t\022\017\n\007version\030\002 \001(" + + "\t\022\020\n\010instance\030\003 \001(\t\022\014\n\004host\030\004 \001(\t\":\n\nOAu" + + "thToken\022\035\n\025service_account_email\030\001 \001(\t\022\r" + + "\n\005scope\030\002 \001(\t\"<\n\tOidcToken\022\035\n\025service_ac" + + "count_email\030\001 \001(\t\022\020\n\010audience\030\002 \001(\t*s\n\nH" + + "ttpMethod\022\033\n\027HTTP_METHOD_UNSPECIFIED\020\000\022\010" + + "\n\004POST\020\001\022\007\n\003GET\020\002\022\010\n\004HEAD\020\003\022\007\n\003PUT\020\004\022\n\n\006" + + "DELETE\020\005\022\t\n\005PATCH\020\006\022\013\n\007OPTIONS\020\007Br\n\035com." + + "google.cloud.scheduler.v1B\013TargetProtoP\001" + + "ZBgoogle.golang.org/genproto/googleapis/" + + "cloud/scheduler/v1;schedulerb\006proto3" }; com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner = new com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner() { @@ -101,7 +115,13 @@ public com.google.protobuf.ExtensionRegistry assignDescriptors( new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( internal_static_google_cloud_scheduler_v1_HttpTarget_descriptor, new java.lang.String[] { - "Uri", "HttpMethod", "Headers", "Body", + "Uri", + "HttpMethod", + "Headers", + "Body", + "OauthToken", + "OidcToken", + "AuthorizationHeader", }); internal_static_google_cloud_scheduler_v1_HttpTarget_HeadersEntry_descriptor = internal_static_google_cloud_scheduler_v1_HttpTarget_descriptor.getNestedTypes().get(0); @@ -153,6 +173,22 @@ public com.google.protobuf.ExtensionRegistry assignDescriptors( new java.lang.String[] { "Service", "Version", "Instance", "Host", }); + internal_static_google_cloud_scheduler_v1_OAuthToken_descriptor = + getDescriptor().getMessageTypes().get(4); + internal_static_google_cloud_scheduler_v1_OAuthToken_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_cloud_scheduler_v1_OAuthToken_descriptor, + new java.lang.String[] { + "ServiceAccountEmail", "Scope", + }); + internal_static_google_cloud_scheduler_v1_OidcToken_descriptor = + getDescriptor().getMessageTypes().get(5); + internal_static_google_cloud_scheduler_v1_OidcToken_fieldAccessorTable = + new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable( + internal_static_google_cloud_scheduler_v1_OidcToken_descriptor, + new java.lang.String[] { + "ServiceAccountEmail", "Audience", + }); com.google.api.AnnotationsProto.getDescriptor(); com.google.protobuf.AnyProto.getDescriptor(); } diff --git a/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/proto/google/cloud/scheduler/v1/cloudscheduler.proto b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/proto/google/cloud/scheduler/v1/cloudscheduler.proto index d12027a72554..a68446235c38 100644 --- a/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/proto/google/cloud/scheduler/v1/cloudscheduler.proto +++ b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/proto/google/cloud/scheduler/v1/cloudscheduler.proto @@ -18,6 +18,7 @@ syntax = "proto3"; package google.cloud.scheduler.v1; import "google/api/annotations.proto"; +import "google/api/resource.proto"; import "google/cloud/scheduler/v1/job.proto"; import "google/protobuf/empty.proto"; import "google/protobuf/field_mask.proto"; @@ -28,7 +29,6 @@ option java_outer_classname = "SchedulerProto"; option java_package = "com.google.cloud.scheduler.v1"; option objc_class_prefix = "SCHEDULER"; - // The Cloud Scheduler API allows external entities to reliably // schedule asynchronous jobs. service CloudScheduler { diff --git a/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/proto/google/cloud/scheduler/v1/job.proto b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/proto/google/cloud/scheduler/v1/job.proto index 8cf36c4d2c31..60b47263151b 100644 --- a/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/proto/google/cloud/scheduler/v1/job.proto +++ b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/proto/google/cloud/scheduler/v1/job.proto @@ -18,6 +18,7 @@ syntax = "proto3"; package google.cloud.scheduler.v1; import "google/api/annotations.proto"; +import "google/api/resource.proto"; import "google/cloud/scheduler/v1/target.proto"; import "google/protobuf/duration.proto"; import "google/protobuf/timestamp.proto"; @@ -28,7 +29,6 @@ option java_multiple_files = true; option java_outer_classname = "JobProto"; option java_package = "com.google.cloud.scheduler.v1"; - // Configuration for a job. // The maximum allowed size for a job is 100KB. message Job { @@ -150,6 +150,18 @@ message Job { // Settings that determine the retry behavior. RetryConfig retry_config = 19; + + // The deadline for job attempts. If the request handler does not respond by + // this deadline then the request is cancelled and the attempt is marked as a + // `DEADLINE_EXCEEDED` failure. The failed attempt can be viewed in + // execution logs. Cloud Scheduler will retry the job according + // to the [RetryConfig][google.cloud.scheduler.v1.RetryConfig]. + // + // The allowed duration for this deadline is: + // * For [HTTP targets][google.cloud.scheduler.v1.Job.http_target], between 15 seconds and 30 minutes. + // * For [App Engine HTTP targets][google.cloud.scheduler.v1.Job.app_engine_http_target], between 15 + // seconds and 24 hours. + google.protobuf.Duration attempt_deadline = 22; } // Settings that determine the retry behavior. diff --git a/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/proto/google/cloud/scheduler/v1/target.proto b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/proto/google/cloud/scheduler/v1/target.proto index 56de3b737e58..e33b1558e53d 100644 --- a/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/proto/google/cloud/scheduler/v1/target.proto +++ b/google-api-grpc/proto-google-cloud-scheduler-v1/src/main/proto/google/cloud/scheduler/v1/target.proto @@ -25,7 +25,6 @@ option java_multiple_files = true; option java_outer_classname = "TargetProto"; option java_package = "com.google.cloud.scheduler.v1"; - // Http target. The job will be pushed to the job handler by means of // an HTTP request via an [http_method][google.cloud.scheduler.v1.HttpTarget.http_method] such as HTTP // POST, HTTP GET, etc. The job is acknowledged by means of an HTTP @@ -67,6 +66,30 @@ message HttpTarget { // method is POST, PUT, or PATCH. It is an error to set body on a job with an // incompatible [HttpMethod][google.cloud.scheduler.v1.HttpMethod]. bytes body = 4; + + // The mode for generating an `Authorization` header for HTTP requests. + // + // If specified, all `Authorization` headers in the [HttpTarget.headers][google.cloud.scheduler.v1.HttpTarget.headers] + // field will be overridden. + oneof authorization_header { + // If specified, an + // [OAuth token](https://developers.google.com/identity/protocols/OAuth2) + // will be generated and attached as an `Authorization` header in the HTTP + // request. + // + // This type of authorization should be used when sending requests to a GCP + // endpoint. + OAuthToken oauth_token = 5; + + // If specified, an + // [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect) + // token will be generated and attached as an `Authorization` header in the + // HTTP request. + // + // This type of authorization should be used when sending requests to third + // party endpoints or Cloud Run. + OidcToken oidc_token = 6; + } } // App Engine target. The job will be pushed to a job handler by means @@ -289,3 +312,37 @@ enum HttpMethod { // HTTP OPTIONS OPTIONS = 7; } + +// Contains information needed for generating an +// [OAuth token](https://developers.google.com/identity/protocols/OAuth2). +// This type of authorization should be used when sending requests to a GCP +// endpoint. +message OAuthToken { + // [Service account email](https://cloud.google.com/iam/docs/service-accounts) + // to be used for generating OAuth token. + // The service account must be within the same project as the job. The caller + // must have iam.serviceAccounts.actAs permission for the service account. + string service_account_email = 1; + + // OAuth scope to be used for generating OAuth access token. + // If not specified, "https://www.googleapis.com/auth/cloud-platform" + // will be used. + string scope = 2; +} + +// Contains information needed for generating an +// [OpenID Connect +// token](https://developers.google.com/identity/protocols/OpenIDConnect). This +// type of authorization should be used when sending requests to third party +// endpoints or Cloud Run. +message OidcToken { + // [Service account email](https://cloud.google.com/iam/docs/service-accounts) + // to be used for generating OIDC token. + // The service account must be within the same project as the job. The caller + // must have iam.serviceAccounts.actAs permission for the service account. + string service_account_email = 1; + + // Audience to be used when generating OIDC token. If not specified, the URI + // specified in target will be used. + string audience = 2; +} diff --git a/google-cloud-clients/google-cloud-scheduler/synth.metadata b/google-cloud-clients/google-cloud-scheduler/synth.metadata index bdd324bb0da9..b21ef441b54c 100644 --- a/google-cloud-clients/google-cloud-scheduler/synth.metadata +++ b/google-cloud-clients/google-cloud-scheduler/synth.metadata @@ -1,19 +1,19 @@ { - "updateTime": "2019-04-05T07:53:40.544143Z", + "updateTime": "2019-05-07T07:52:51.236509Z", "sources": [ { "generator": { "name": "artman", - "version": "0.16.25", - "dockerImage": "googleapis/artman@sha256:d9597f983d1d4e61272c63cb97b7d8f8234da9999526c35d357de3d781f0ec1b" + "version": "0.19.0", + "dockerImage": "googleapis/artman@sha256:d3df563538225ac6caac45d8ad86499500211d1bcb2536955a6dbda15e1b368e" } }, { "git": { "name": "googleapis", "remote": "https://github.com/googleapis/googleapis.git", - "sha": "327ff9c09f4b2bcc9633f035a58ad348e45fb2a0", - "internalRef": "242045478" + "sha": "5aeb4179d0c424be6b1b228bce7ec75ec24f3d12", + "internalRef": "246901187" } } ],