All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.google.cloud.gkemulticloud.v1.AwsClustersClient Maven / Gradle / Ivy

Go to download

Anthos Multicloud enables you to provision and manage GKE clusters running on AWS and Azure infrastructure through a centralized Google Cloud backed control plane.

There is a newer version: 0.53.0
Show newest version
/*
 * Copyright 2024 Google LLC
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      https://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.google.cloud.gkemulticloud.v1;

import com.google.api.core.ApiFuture;
import com.google.api.core.ApiFutures;
import com.google.api.core.BetaApi;
import com.google.api.gax.core.BackgroundResource;
import com.google.api.gax.httpjson.longrunning.OperationsClient;
import com.google.api.gax.longrunning.OperationFuture;
import com.google.api.gax.paging.AbstractFixedSizeCollection;
import com.google.api.gax.paging.AbstractPage;
import com.google.api.gax.paging.AbstractPagedListResponse;
import com.google.api.gax.rpc.OperationCallable;
import com.google.api.gax.rpc.PageContext;
import com.google.api.gax.rpc.UnaryCallable;
import com.google.cloud.gkemulticloud.v1.stub.AwsClustersStub;
import com.google.cloud.gkemulticloud.v1.stub.AwsClustersStubSettings;
import com.google.common.util.concurrent.MoreExecutors;
import com.google.longrunning.Operation;
import com.google.protobuf.Empty;
import com.google.protobuf.FieldMask;
import java.io.IOException;
import java.util.List;
import java.util.concurrent.TimeUnit;
import javax.annotation.Generated;

// AUTO-GENERATED DOCUMENTATION AND CLASS.
/**
 * Service Description: The AwsClusters API provides a single centrally managed service to create
 * and manage Anthos clusters that run on AWS infrastructure.
 *
 * 

This class provides the ability to make remote calls to the backing service through method * calls that map to API methods. Sample code to get started: * *

{@code
 * // This snippet has been automatically generated and should be regarded as a code template only.
 * // It will require modifications to work:
 * // - It may require correct/in-range values for request initialization.
 * // - It may require specifying regional endpoints when creating the service client as shown in
 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
 *   AwsClusterName name = AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]");
 *   AwsCluster response = awsClustersClient.getAwsCluster(name);
 * }
 * }
* *

Note: close() needs to be called on the AwsClustersClient object to clean up resources such as * threads. In the example above, try-with-resources is used, which automatically calls close(). * *

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Methods
MethodDescriptionMethod Variants

CreateAwsCluster

Creates a new [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource on a given Google Cloud Platform project and region. *

If successful, the response contains a newly created [Operation][google.longrunning.Operation] resource that can be described to track the status of the operation.

*

Request object method variants only take one parameter, a request object, which must be constructed before the call.

*
    *
  • createAwsClusterAsync(CreateAwsClusterRequest request) *

*

Methods that return long-running operations have "Async" method variants that return `OperationFuture`, which is used to track polling of the service.

*
    *
  • createAwsClusterAsync(LocationName parent, AwsCluster awsCluster, String awsClusterId) *

  • createAwsClusterAsync(String parent, AwsCluster awsCluster, String awsClusterId) *

*

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

*
    *
  • createAwsClusterOperationCallable() *

  • createAwsClusterCallable() *

*

UpdateAwsCluster

Updates an [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster].

*

Request object method variants only take one parameter, a request object, which must be constructed before the call.

*
    *
  • updateAwsClusterAsync(UpdateAwsClusterRequest request) *

*

Methods that return long-running operations have "Async" method variants that return `OperationFuture`, which is used to track polling of the service.

*
    *
  • updateAwsClusterAsync(AwsCluster awsCluster, FieldMask updateMask) *

*

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

*
    *
  • updateAwsClusterOperationCallable() *

  • updateAwsClusterCallable() *

*

GetAwsCluster

Describes a specific [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource.

*

Request object method variants only take one parameter, a request object, which must be constructed before the call.

*
    *
  • getAwsCluster(GetAwsClusterRequest request) *

*

"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.

*
    *
  • getAwsCluster(AwsClusterName name) *

  • getAwsCluster(String name) *

*

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

*
    *
  • getAwsClusterCallable() *

*

ListAwsClusters

Lists all [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resources on a given Google Cloud project and region.

*

Request object method variants only take one parameter, a request object, which must be constructed before the call.

*
    *
  • listAwsClusters(ListAwsClustersRequest request) *

*

"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.

*
    *
  • listAwsClusters(LocationName parent) *

  • listAwsClusters(String parent) *

*

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

*
    *
  • listAwsClustersPagedCallable() *

  • listAwsClustersCallable() *

*

DeleteAwsCluster

Deletes a specific [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource. *

Fails if the cluster has one or more associated [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resources. *

If successful, the response contains a newly created [Operation][google.longrunning.Operation] resource that can be described to track the status of the operation.

*

Request object method variants only take one parameter, a request object, which must be constructed before the call.

*
    *
  • deleteAwsClusterAsync(DeleteAwsClusterRequest request) *

*

Methods that return long-running operations have "Async" method variants that return `OperationFuture`, which is used to track polling of the service.

*
    *
  • deleteAwsClusterAsync(AwsClusterName name) *

  • deleteAwsClusterAsync(String name) *

*

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

*
    *
  • deleteAwsClusterOperationCallable() *

  • deleteAwsClusterCallable() *

*

GenerateAwsClusterAgentToken

Generates an access token for a cluster agent.

*

Request object method variants only take one parameter, a request object, which must be constructed before the call.

*
    *
  • generateAwsClusterAgentToken(GenerateAwsClusterAgentTokenRequest request) *

*

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

*
    *
  • generateAwsClusterAgentTokenCallable() *

*

GenerateAwsAccessToken

Generates a short-lived access token to authenticate to a given [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource.

*

Request object method variants only take one parameter, a request object, which must be constructed before the call.

*
    *
  • generateAwsAccessToken(GenerateAwsAccessTokenRequest request) *

*

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

*
    *
  • generateAwsAccessTokenCallable() *

*

CreateAwsNodePool

Creates a new [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool], attached to a given [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster]. *

If successful, the response contains a newly created [Operation][google.longrunning.Operation] resource that can be described to track the status of the operation.

*

Request object method variants only take one parameter, a request object, which must be constructed before the call.

*
    *
  • createAwsNodePoolAsync(CreateAwsNodePoolRequest request) *

*

Methods that return long-running operations have "Async" method variants that return `OperationFuture`, which is used to track polling of the service.

*
    *
  • createAwsNodePoolAsync(AwsClusterName parent, AwsNodePool awsNodePool, String awsNodePoolId) *

  • createAwsNodePoolAsync(String parent, AwsNodePool awsNodePool, String awsNodePoolId) *

*

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

*
    *
  • createAwsNodePoolOperationCallable() *

  • createAwsNodePoolCallable() *

*

UpdateAwsNodePool

Updates an [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool].

*

Request object method variants only take one parameter, a request object, which must be constructed before the call.

*
    *
  • updateAwsNodePoolAsync(UpdateAwsNodePoolRequest request) *

*

Methods that return long-running operations have "Async" method variants that return `OperationFuture`, which is used to track polling of the service.

*
    *
  • updateAwsNodePoolAsync(AwsNodePool awsNodePool, FieldMask updateMask) *

*

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

*
    *
  • updateAwsNodePoolOperationCallable() *

  • updateAwsNodePoolCallable() *

*

RollbackAwsNodePoolUpdate

Rolls back a previously aborted or failed [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] update request. Makes no changes if the last update request successfully finished. If an update request is in progress, you cannot rollback the update. You must first cancel or let it finish unsuccessfully before you can rollback.

*

Request object method variants only take one parameter, a request object, which must be constructed before the call.

*
    *
  • rollbackAwsNodePoolUpdateAsync(RollbackAwsNodePoolUpdateRequest request) *

*

Methods that return long-running operations have "Async" method variants that return `OperationFuture`, which is used to track polling of the service.

*
    *
  • rollbackAwsNodePoolUpdateAsync(AwsNodePoolName name) *

  • rollbackAwsNodePoolUpdateAsync(String name) *

*

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

*
    *
  • rollbackAwsNodePoolUpdateOperationCallable() *

  • rollbackAwsNodePoolUpdateCallable() *

*

GetAwsNodePool

Describes a specific [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resource.

*

Request object method variants only take one parameter, a request object, which must be constructed before the call.

*
    *
  • getAwsNodePool(GetAwsNodePoolRequest request) *

*

"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.

*
    *
  • getAwsNodePool(AwsNodePoolName name) *

  • getAwsNodePool(String name) *

*

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

*
    *
  • getAwsNodePoolCallable() *

*

ListAwsNodePools

Lists all [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resources on a given [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster].

*

Request object method variants only take one parameter, a request object, which must be constructed before the call.

*
    *
  • listAwsNodePools(ListAwsNodePoolsRequest request) *

*

"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.

*
    *
  • listAwsNodePools(AwsClusterName parent) *

  • listAwsNodePools(String parent) *

*

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

*
    *
  • listAwsNodePoolsPagedCallable() *

  • listAwsNodePoolsCallable() *

*

DeleteAwsNodePool

Deletes a specific [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resource. *

If successful, the response contains a newly created [Operation][google.longrunning.Operation] resource that can be described to track the status of the operation.

*

Request object method variants only take one parameter, a request object, which must be constructed before the call.

*
    *
  • deleteAwsNodePoolAsync(DeleteAwsNodePoolRequest request) *

*

Methods that return long-running operations have "Async" method variants that return `OperationFuture`, which is used to track polling of the service.

*
    *
  • deleteAwsNodePoolAsync(AwsNodePoolName name) *

  • deleteAwsNodePoolAsync(String name) *

*

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

*
    *
  • deleteAwsNodePoolOperationCallable() *

  • deleteAwsNodePoolCallable() *

*

GetAwsOpenIdConfig

Gets the OIDC discovery document for the cluster. See the [OpenID Connect Discovery 1.0 specification](https://openid.net/specs/openid-connect-discovery-1_0.html) for details.

*

Request object method variants only take one parameter, a request object, which must be constructed before the call.

*
    *
  • getAwsOpenIdConfig(GetAwsOpenIdConfigRequest request) *

*

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

*
    *
  • getAwsOpenIdConfigCallable() *

*

GetAwsJsonWebKeys

Gets the public component of the cluster signing keys in JSON Web Key format.

*

Request object method variants only take one parameter, a request object, which must be constructed before the call.

*
    *
  • getAwsJsonWebKeys(GetAwsJsonWebKeysRequest request) *

*

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

*
    *
  • getAwsJsonWebKeysCallable() *

*

GetAwsServerConfig

Returns information, such as supported AWS regions and Kubernetes versions, on a given Google Cloud location.

*

Request object method variants only take one parameter, a request object, which must be constructed before the call.

*
    *
  • getAwsServerConfig(GetAwsServerConfigRequest request) *

*

"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.

*
    *
  • getAwsServerConfig(AwsServerConfigName name) *

  • getAwsServerConfig(String name) *

*

Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.

*
    *
  • getAwsServerConfigCallable() *

*
* *

See the individual methods for example code. * *

Many parameters require resource names to be formatted in a particular way. To assist with * these names, this class includes a format method for each type of name, and additionally a parse * method to extract the individual identifiers contained within names that are returned. * *

This class can be customized by passing in a custom instance of AwsClustersSettings to * create(). For example: * *

To customize credentials: * *

{@code
 * // This snippet has been automatically generated and should be regarded as a code template only.
 * // It will require modifications to work:
 * // - It may require correct/in-range values for request initialization.
 * // - It may require specifying regional endpoints when creating the service client as shown in
 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 * AwsClustersSettings awsClustersSettings =
 *     AwsClustersSettings.newBuilder()
 *         .setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
 *         .build();
 * AwsClustersClient awsClustersClient = AwsClustersClient.create(awsClustersSettings);
 * }
* *

To customize the endpoint: * *

{@code
 * // This snippet has been automatically generated and should be regarded as a code template only.
 * // It will require modifications to work:
 * // - It may require correct/in-range values for request initialization.
 * // - It may require specifying regional endpoints when creating the service client as shown in
 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 * AwsClustersSettings awsClustersSettings =
 *     AwsClustersSettings.newBuilder().setEndpoint(myEndpoint).build();
 * AwsClustersClient awsClustersClient = AwsClustersClient.create(awsClustersSettings);
 * }
* *

To use REST (HTTP1.1/JSON) transport (instead of gRPC) for sending and receiving requests over * the wire: * *

{@code
 * // This snippet has been automatically generated and should be regarded as a code template only.
 * // It will require modifications to work:
 * // - It may require correct/in-range values for request initialization.
 * // - It may require specifying regional endpoints when creating the service client as shown in
 * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
 * AwsClustersSettings awsClustersSettings = AwsClustersSettings.newHttpJsonBuilder().build();
 * AwsClustersClient awsClustersClient = AwsClustersClient.create(awsClustersSettings);
 * }
* *

Please refer to the GitHub repository's samples for more quickstart code snippets. */ @Generated("by gapic-generator-java") public class AwsClustersClient implements BackgroundResource { private final AwsClustersSettings settings; private final AwsClustersStub stub; private final OperationsClient httpJsonOperationsClient; private final com.google.longrunning.OperationsClient operationsClient; /** Constructs an instance of AwsClustersClient with default settings. */ public static final AwsClustersClient create() throws IOException { return create(AwsClustersSettings.newBuilder().build()); } /** * Constructs an instance of AwsClustersClient, using the given settings. The channels are created * based on the settings passed in, or defaults for any settings that are not set. */ public static final AwsClustersClient create(AwsClustersSettings settings) throws IOException { return new AwsClustersClient(settings); } /** * Constructs an instance of AwsClustersClient, using the given stub for making calls. This is for * advanced usage - prefer using create(AwsClustersSettings). */ public static final AwsClustersClient create(AwsClustersStub stub) { return new AwsClustersClient(stub); } /** * Constructs an instance of AwsClustersClient, using the given settings. This is protected so * that it is easy to make a subclass, but otherwise, the static factory methods should be * preferred. */ protected AwsClustersClient(AwsClustersSettings settings) throws IOException { this.settings = settings; this.stub = ((AwsClustersStubSettings) settings.getStubSettings()).createStub(); this.operationsClient = com.google.longrunning.OperationsClient.create(this.stub.getOperationsStub()); this.httpJsonOperationsClient = OperationsClient.create(this.stub.getHttpJsonOperationsStub()); } protected AwsClustersClient(AwsClustersStub stub) { this.settings = null; this.stub = stub; this.operationsClient = com.google.longrunning.OperationsClient.create(this.stub.getOperationsStub()); this.httpJsonOperationsClient = OperationsClient.create(this.stub.getHttpJsonOperationsStub()); } public final AwsClustersSettings getSettings() { return settings; } public AwsClustersStub getStub() { return stub; } /** * Returns the OperationsClient that can be used to query the status of a long-running operation * returned by another API method call. */ public final com.google.longrunning.OperationsClient getOperationsClient() { return operationsClient; } /** * Returns the OperationsClient that can be used to query the status of a long-running operation * returned by another API method call. */ @BetaApi public final OperationsClient getHttpJsonOperationsClient() { return httpJsonOperationsClient; } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Creates a new [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource on a given Google * Cloud Platform project and region. * *

If successful, the response contains a newly created * [Operation][google.longrunning.Operation] resource that can be described to track the status of * the operation. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]");
   *   AwsCluster awsCluster = AwsCluster.newBuilder().build();
   *   String awsClusterId = "awsClusterId1988965944";
   *   AwsCluster response =
   *       awsClustersClient.createAwsClusterAsync(parent, awsCluster, awsClusterId).get();
   * }
   * }
* * @param parent Required. The parent location where this * [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource will be created. *

Location names are formatted as `projects/<project-id>/locations/<region>`. *

See [Resource Names](https://cloud.google.com/apis/design/resource_names) for more * details on Google Cloud resource names. * @param awsCluster Required. The specification of the * [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] to create. * @param awsClusterId Required. A client provided ID the resource. Must be unique within the * parent resource. *

The provided ID will be part of the * [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource name formatted as * `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>`. *

Valid characters are `/[a-z][0-9]-/`. Cannot be longer than 63 characters. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final OperationFuture createAwsClusterAsync( LocationName parent, AwsCluster awsCluster, String awsClusterId) { CreateAwsClusterRequest request = CreateAwsClusterRequest.newBuilder() .setParent(parent == null ? null : parent.toString()) .setAwsCluster(awsCluster) .setAwsClusterId(awsClusterId) .build(); return createAwsClusterAsync(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Creates a new [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource on a given Google * Cloud Platform project and region. * *

If successful, the response contains a newly created * [Operation][google.longrunning.Operation] resource that can be described to track the status of * the operation. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   String parent = LocationName.of("[PROJECT]", "[LOCATION]").toString();
   *   AwsCluster awsCluster = AwsCluster.newBuilder().build();
   *   String awsClusterId = "awsClusterId1988965944";
   *   AwsCluster response =
   *       awsClustersClient.createAwsClusterAsync(parent, awsCluster, awsClusterId).get();
   * }
   * }
* * @param parent Required. The parent location where this * [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource will be created. *

Location names are formatted as `projects/<project-id>/locations/<region>`. *

See [Resource Names](https://cloud.google.com/apis/design/resource_names) for more * details on Google Cloud resource names. * @param awsCluster Required. The specification of the * [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] to create. * @param awsClusterId Required. A client provided ID the resource. Must be unique within the * parent resource. *

The provided ID will be part of the * [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource name formatted as * `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>`. *

Valid characters are `/[a-z][0-9]-/`. Cannot be longer than 63 characters. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final OperationFuture createAwsClusterAsync( String parent, AwsCluster awsCluster, String awsClusterId) { CreateAwsClusterRequest request = CreateAwsClusterRequest.newBuilder() .setParent(parent) .setAwsCluster(awsCluster) .setAwsClusterId(awsClusterId) .build(); return createAwsClusterAsync(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Creates a new [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource on a given Google * Cloud Platform project and region. * *

If successful, the response contains a newly created * [Operation][google.longrunning.Operation] resource that can be described to track the status of * the operation. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   CreateAwsClusterRequest request =
   *       CreateAwsClusterRequest.newBuilder()
   *           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
   *           .setAwsCluster(AwsCluster.newBuilder().build())
   *           .setAwsClusterId("awsClusterId1988965944")
   *           .setValidateOnly(true)
   *           .build();
   *   AwsCluster response = awsClustersClient.createAwsClusterAsync(request).get();
   * }
   * }
* * @param request The request object containing all of the parameters for the API call. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final OperationFuture createAwsClusterAsync( CreateAwsClusterRequest request) { return createAwsClusterOperationCallable().futureCall(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Creates a new [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource on a given Google * Cloud Platform project and region. * *

If successful, the response contains a newly created * [Operation][google.longrunning.Operation] resource that can be described to track the status of * the operation. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   CreateAwsClusterRequest request =
   *       CreateAwsClusterRequest.newBuilder()
   *           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
   *           .setAwsCluster(AwsCluster.newBuilder().build())
   *           .setAwsClusterId("awsClusterId1988965944")
   *           .setValidateOnly(true)
   *           .build();
   *   OperationFuture future =
   *       awsClustersClient.createAwsClusterOperationCallable().futureCall(request);
   *   // Do something.
   *   AwsCluster response = future.get();
   * }
   * }
*/ public final OperationCallable createAwsClusterOperationCallable() { return stub.createAwsClusterOperationCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Creates a new [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource on a given Google * Cloud Platform project and region. * *

If successful, the response contains a newly created * [Operation][google.longrunning.Operation] resource that can be described to track the status of * the operation. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   CreateAwsClusterRequest request =
   *       CreateAwsClusterRequest.newBuilder()
   *           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
   *           .setAwsCluster(AwsCluster.newBuilder().build())
   *           .setAwsClusterId("awsClusterId1988965944")
   *           .setValidateOnly(true)
   *           .build();
   *   ApiFuture future =
   *       awsClustersClient.createAwsClusterCallable().futureCall(request);
   *   // Do something.
   *   Operation response = future.get();
   * }
   * }
*/ public final UnaryCallable createAwsClusterCallable() { return stub.createAwsClusterCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Updates an [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster]. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   AwsCluster awsCluster = AwsCluster.newBuilder().build();
   *   FieldMask updateMask = FieldMask.newBuilder().build();
   *   AwsCluster response = awsClustersClient.updateAwsClusterAsync(awsCluster, updateMask).get();
   * }
   * }
* * @param awsCluster Required. The [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource * to update. * @param updateMask Required. Mask of fields to update. At least one path must be supplied in * this field. The elements of the repeated paths field can only include these fields from * [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster]: *

* `description`. * `annotations`. * `control_plane.version`. * * `authorization.admin_users`. * `authorization.admin_groups`. * * `binary_authorization.evaluation_mode`. * * `control_plane.aws_services_authentication.role_arn`. * * `control_plane.aws_services_authentication.role_session_name`. * * `control_plane.config_encryption.kms_key_arn`. * `control_plane.instance_type`. * * `control_plane.security_group_ids`. * `control_plane.proxy_config`. * * `control_plane.proxy_config.secret_arn`. * `control_plane.proxy_config.secret_version`. * * `control_plane.root_volume.size_gib`. * `control_plane.root_volume.volume_type`. * * `control_plane.root_volume.iops`. * `control_plane.root_volume.throughput`. * * `control_plane.root_volume.kms_key_arn`. * `control_plane.ssh_config`. * * `control_plane.ssh_config.ec2_key_pair`. * `control_plane.instance_placement.tenancy`. * * `control_plane.iam_instance_profile`. * * `logging_config.component_config.enable_components`. * `control_plane.tags`. * * `monitoring_config.managed_prometheus_config.enabled`. * * `networking.per_node_pool_sg_rules_disabled`. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final OperationFuture updateAwsClusterAsync( AwsCluster awsCluster, FieldMask updateMask) { UpdateAwsClusterRequest request = UpdateAwsClusterRequest.newBuilder() .setAwsCluster(awsCluster) .setUpdateMask(updateMask) .build(); return updateAwsClusterAsync(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Updates an [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster]. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   UpdateAwsClusterRequest request =
   *       UpdateAwsClusterRequest.newBuilder()
   *           .setAwsCluster(AwsCluster.newBuilder().build())
   *           .setValidateOnly(true)
   *           .setUpdateMask(FieldMask.newBuilder().build())
   *           .build();
   *   AwsCluster response = awsClustersClient.updateAwsClusterAsync(request).get();
   * }
   * }
* * @param request The request object containing all of the parameters for the API call. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final OperationFuture updateAwsClusterAsync( UpdateAwsClusterRequest request) { return updateAwsClusterOperationCallable().futureCall(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Updates an [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster]. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   UpdateAwsClusterRequest request =
   *       UpdateAwsClusterRequest.newBuilder()
   *           .setAwsCluster(AwsCluster.newBuilder().build())
   *           .setValidateOnly(true)
   *           .setUpdateMask(FieldMask.newBuilder().build())
   *           .build();
   *   OperationFuture future =
   *       awsClustersClient.updateAwsClusterOperationCallable().futureCall(request);
   *   // Do something.
   *   AwsCluster response = future.get();
   * }
   * }
*/ public final OperationCallable updateAwsClusterOperationCallable() { return stub.updateAwsClusterOperationCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Updates an [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster]. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   UpdateAwsClusterRequest request =
   *       UpdateAwsClusterRequest.newBuilder()
   *           .setAwsCluster(AwsCluster.newBuilder().build())
   *           .setValidateOnly(true)
   *           .setUpdateMask(FieldMask.newBuilder().build())
   *           .build();
   *   ApiFuture future =
   *       awsClustersClient.updateAwsClusterCallable().futureCall(request);
   *   // Do something.
   *   Operation response = future.get();
   * }
   * }
*/ public final UnaryCallable updateAwsClusterCallable() { return stub.updateAwsClusterCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Describes a specific [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   AwsClusterName name = AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]");
   *   AwsCluster response = awsClustersClient.getAwsCluster(name);
   * }
   * }
* * @param name Required. The name of the [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] * resource to describe. *

`AwsCluster` names are formatted as * `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>`. *

See [Resource Names](https://cloud.google.com/apis/design/resource_names) for more * details on Google Cloud Platform resource names. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final AwsCluster getAwsCluster(AwsClusterName name) { GetAwsClusterRequest request = GetAwsClusterRequest.newBuilder().setName(name == null ? null : name.toString()).build(); return getAwsCluster(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Describes a specific [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   String name = AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]").toString();
   *   AwsCluster response = awsClustersClient.getAwsCluster(name);
   * }
   * }
* * @param name Required. The name of the [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] * resource to describe. *

`AwsCluster` names are formatted as * `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>`. *

See [Resource Names](https://cloud.google.com/apis/design/resource_names) for more * details on Google Cloud Platform resource names. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final AwsCluster getAwsCluster(String name) { GetAwsClusterRequest request = GetAwsClusterRequest.newBuilder().setName(name).build(); return getAwsCluster(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Describes a specific [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   GetAwsClusterRequest request =
   *       GetAwsClusterRequest.newBuilder()
   *           .setName(AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]").toString())
   *           .build();
   *   AwsCluster response = awsClustersClient.getAwsCluster(request);
   * }
   * }
* * @param request The request object containing all of the parameters for the API call. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final AwsCluster getAwsCluster(GetAwsClusterRequest request) { return getAwsClusterCallable().call(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Describes a specific [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   GetAwsClusterRequest request =
   *       GetAwsClusterRequest.newBuilder()
   *           .setName(AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]").toString())
   *           .build();
   *   ApiFuture future = awsClustersClient.getAwsClusterCallable().futureCall(request);
   *   // Do something.
   *   AwsCluster response = future.get();
   * }
   * }
*/ public final UnaryCallable getAwsClusterCallable() { return stub.getAwsClusterCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Lists all [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resources on a given Google * Cloud project and region. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]");
   *   for (AwsCluster element : awsClustersClient.listAwsClusters(parent).iterateAll()) {
   *     // doThingsWith(element);
   *   }
   * }
   * }
* * @param parent Required. The parent location which owns this collection of * [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resources. *

Location names are formatted as `projects/<project-id>/locations/<region>`. *

See [Resource Names](https://cloud.google.com/apis/design/resource_names) for more * details on Google Cloud Platform resource names. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final ListAwsClustersPagedResponse listAwsClusters(LocationName parent) { ListAwsClustersRequest request = ListAwsClustersRequest.newBuilder() .setParent(parent == null ? null : parent.toString()) .build(); return listAwsClusters(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Lists all [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resources on a given Google * Cloud project and region. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   String parent = LocationName.of("[PROJECT]", "[LOCATION]").toString();
   *   for (AwsCluster element : awsClustersClient.listAwsClusters(parent).iterateAll()) {
   *     // doThingsWith(element);
   *   }
   * }
   * }
* * @param parent Required. The parent location which owns this collection of * [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resources. *

Location names are formatted as `projects/<project-id>/locations/<region>`. *

See [Resource Names](https://cloud.google.com/apis/design/resource_names) for more * details on Google Cloud Platform resource names. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final ListAwsClustersPagedResponse listAwsClusters(String parent) { ListAwsClustersRequest request = ListAwsClustersRequest.newBuilder().setParent(parent).build(); return listAwsClusters(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Lists all [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resources on a given Google * Cloud project and region. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   ListAwsClustersRequest request =
   *       ListAwsClustersRequest.newBuilder()
   *           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
   *           .setPageSize(883849137)
   *           .setPageToken("pageToken873572522")
   *           .build();
   *   for (AwsCluster element : awsClustersClient.listAwsClusters(request).iterateAll()) {
   *     // doThingsWith(element);
   *   }
   * }
   * }
* * @param request The request object containing all of the parameters for the API call. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final ListAwsClustersPagedResponse listAwsClusters(ListAwsClustersRequest request) { return listAwsClustersPagedCallable().call(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Lists all [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resources on a given Google * Cloud project and region. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   ListAwsClustersRequest request =
   *       ListAwsClustersRequest.newBuilder()
   *           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
   *           .setPageSize(883849137)
   *           .setPageToken("pageToken873572522")
   *           .build();
   *   ApiFuture future =
   *       awsClustersClient.listAwsClustersPagedCallable().futureCall(request);
   *   // Do something.
   *   for (AwsCluster element : future.get().iterateAll()) {
   *     // doThingsWith(element);
   *   }
   * }
   * }
*/ public final UnaryCallable listAwsClustersPagedCallable() { return stub.listAwsClustersPagedCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Lists all [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resources on a given Google * Cloud project and region. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   ListAwsClustersRequest request =
   *       ListAwsClustersRequest.newBuilder()
   *           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
   *           .setPageSize(883849137)
   *           .setPageToken("pageToken873572522")
   *           .build();
   *   while (true) {
   *     ListAwsClustersResponse response =
   *         awsClustersClient.listAwsClustersCallable().call(request);
   *     for (AwsCluster element : response.getAwsClustersList()) {
   *       // doThingsWith(element);
   *     }
   *     String nextPageToken = response.getNextPageToken();
   *     if (!Strings.isNullOrEmpty(nextPageToken)) {
   *       request = request.toBuilder().setPageToken(nextPageToken).build();
   *     } else {
   *       break;
   *     }
   *   }
   * }
   * }
*/ public final UnaryCallable listAwsClustersCallable() { return stub.listAwsClustersCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Deletes a specific [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource. * *

Fails if the cluster has one or more associated * [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resources. * *

If successful, the response contains a newly created * [Operation][google.longrunning.Operation] resource that can be described to track the status of * the operation. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   AwsClusterName name = AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]");
   *   awsClustersClient.deleteAwsClusterAsync(name).get();
   * }
   * }
* * @param name Required. The resource name the * [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] to delete. *

`AwsCluster` names are formatted as * `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>`. *

See [Resource Names](https://cloud.google.com/apis/design/resource_names) for more * details on Google Cloud Platform resource names. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final OperationFuture deleteAwsClusterAsync( AwsClusterName name) { DeleteAwsClusterRequest request = DeleteAwsClusterRequest.newBuilder().setName(name == null ? null : name.toString()).build(); return deleteAwsClusterAsync(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Deletes a specific [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource. * *

Fails if the cluster has one or more associated * [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resources. * *

If successful, the response contains a newly created * [Operation][google.longrunning.Operation] resource that can be described to track the status of * the operation. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   String name = AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]").toString();
   *   awsClustersClient.deleteAwsClusterAsync(name).get();
   * }
   * }
* * @param name Required. The resource name the * [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] to delete. *

`AwsCluster` names are formatted as * `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>`. *

See [Resource Names](https://cloud.google.com/apis/design/resource_names) for more * details on Google Cloud Platform resource names. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final OperationFuture deleteAwsClusterAsync(String name) { DeleteAwsClusterRequest request = DeleteAwsClusterRequest.newBuilder().setName(name).build(); return deleteAwsClusterAsync(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Deletes a specific [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource. * *

Fails if the cluster has one or more associated * [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resources. * *

If successful, the response contains a newly created * [Operation][google.longrunning.Operation] resource that can be described to track the status of * the operation. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   DeleteAwsClusterRequest request =
   *       DeleteAwsClusterRequest.newBuilder()
   *           .setName(AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]").toString())
   *           .setValidateOnly(true)
   *           .setAllowMissing(true)
   *           .setIgnoreErrors(true)
   *           .setEtag("etag3123477")
   *           .build();
   *   awsClustersClient.deleteAwsClusterAsync(request).get();
   * }
   * }
* * @param request The request object containing all of the parameters for the API call. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final OperationFuture deleteAwsClusterAsync( DeleteAwsClusterRequest request) { return deleteAwsClusterOperationCallable().futureCall(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Deletes a specific [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource. * *

Fails if the cluster has one or more associated * [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resources. * *

If successful, the response contains a newly created * [Operation][google.longrunning.Operation] resource that can be described to track the status of * the operation. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   DeleteAwsClusterRequest request =
   *       DeleteAwsClusterRequest.newBuilder()
   *           .setName(AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]").toString())
   *           .setValidateOnly(true)
   *           .setAllowMissing(true)
   *           .setIgnoreErrors(true)
   *           .setEtag("etag3123477")
   *           .build();
   *   OperationFuture future =
   *       awsClustersClient.deleteAwsClusterOperationCallable().futureCall(request);
   *   // Do something.
   *   future.get();
   * }
   * }
*/ public final OperationCallable deleteAwsClusterOperationCallable() { return stub.deleteAwsClusterOperationCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Deletes a specific [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource. * *

Fails if the cluster has one or more associated * [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resources. * *

If successful, the response contains a newly created * [Operation][google.longrunning.Operation] resource that can be described to track the status of * the operation. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   DeleteAwsClusterRequest request =
   *       DeleteAwsClusterRequest.newBuilder()
   *           .setName(AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]").toString())
   *           .setValidateOnly(true)
   *           .setAllowMissing(true)
   *           .setIgnoreErrors(true)
   *           .setEtag("etag3123477")
   *           .build();
   *   ApiFuture future =
   *       awsClustersClient.deleteAwsClusterCallable().futureCall(request);
   *   // Do something.
   *   future.get();
   * }
   * }
*/ public final UnaryCallable deleteAwsClusterCallable() { return stub.deleteAwsClusterCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Generates an access token for a cluster agent. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   GenerateAwsClusterAgentTokenRequest request =
   *       GenerateAwsClusterAgentTokenRequest.newBuilder()
   *           .setAwsCluster(
   *               AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]").toString())
   *           .setSubjectToken("subjectToken-1519661011")
   *           .setSubjectTokenType("subjectTokenType1839592711")
   *           .setVersion("version351608024")
   *           .setNodePoolId("nodePoolId1121557241")
   *           .setGrantType("grantType-1219832202")
   *           .setAudience("audience975628804")
   *           .setScope("scope109264468")
   *           .setRequestedTokenType("requestedTokenType1733106949")
   *           .setOptions("options-1249474914")
   *           .build();
   *   GenerateAwsClusterAgentTokenResponse response =
   *       awsClustersClient.generateAwsClusterAgentToken(request);
   * }
   * }
* * @param request The request object containing all of the parameters for the API call. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final GenerateAwsClusterAgentTokenResponse generateAwsClusterAgentToken( GenerateAwsClusterAgentTokenRequest request) { return generateAwsClusterAgentTokenCallable().call(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Generates an access token for a cluster agent. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   GenerateAwsClusterAgentTokenRequest request =
   *       GenerateAwsClusterAgentTokenRequest.newBuilder()
   *           .setAwsCluster(
   *               AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]").toString())
   *           .setSubjectToken("subjectToken-1519661011")
   *           .setSubjectTokenType("subjectTokenType1839592711")
   *           .setVersion("version351608024")
   *           .setNodePoolId("nodePoolId1121557241")
   *           .setGrantType("grantType-1219832202")
   *           .setAudience("audience975628804")
   *           .setScope("scope109264468")
   *           .setRequestedTokenType("requestedTokenType1733106949")
   *           .setOptions("options-1249474914")
   *           .build();
   *   ApiFuture future =
   *       awsClustersClient.generateAwsClusterAgentTokenCallable().futureCall(request);
   *   // Do something.
   *   GenerateAwsClusterAgentTokenResponse response = future.get();
   * }
   * }
*/ public final UnaryCallable< GenerateAwsClusterAgentTokenRequest, GenerateAwsClusterAgentTokenResponse> generateAwsClusterAgentTokenCallable() { return stub.generateAwsClusterAgentTokenCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Generates a short-lived access token to authenticate to a given * [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   GenerateAwsAccessTokenRequest request =
   *       GenerateAwsAccessTokenRequest.newBuilder()
   *           .setAwsCluster(
   *               AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]").toString())
   *           .build();
   *   GenerateAwsAccessTokenResponse response = awsClustersClient.generateAwsAccessToken(request);
   * }
   * }
* * @param request The request object containing all of the parameters for the API call. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final GenerateAwsAccessTokenResponse generateAwsAccessToken( GenerateAwsAccessTokenRequest request) { return generateAwsAccessTokenCallable().call(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Generates a short-lived access token to authenticate to a given * [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   GenerateAwsAccessTokenRequest request =
   *       GenerateAwsAccessTokenRequest.newBuilder()
   *           .setAwsCluster(
   *               AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]").toString())
   *           .build();
   *   ApiFuture future =
   *       awsClustersClient.generateAwsAccessTokenCallable().futureCall(request);
   *   // Do something.
   *   GenerateAwsAccessTokenResponse response = future.get();
   * }
   * }
*/ public final UnaryCallable generateAwsAccessTokenCallable() { return stub.generateAwsAccessTokenCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Creates a new [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool], attached to a given * [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster]. * *

If successful, the response contains a newly created * [Operation][google.longrunning.Operation] resource that can be described to track the status of * the operation. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   AwsClusterName parent = AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]");
   *   AwsNodePool awsNodePool = AwsNodePool.newBuilder().build();
   *   String awsNodePoolId = "awsNodePoolId-1885267498";
   *   AwsNodePool response =
   *       awsClustersClient.createAwsNodePoolAsync(parent, awsNodePool, awsNodePoolId).get();
   * }
   * }
* * @param parent Required. The [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource * where this node pool will be created. *

`AwsCluster` names are formatted as * `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>`. *

See [Resource Names](https://cloud.google.com/apis/design/resource_names) for more * details on Google Cloud resource names. * @param awsNodePool Required. The specification of the * [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] to create. * @param awsNodePoolId Required. A client provided ID the resource. Must be unique within the * parent resource. *

The provided ID will be part of the * [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resource name formatted as * `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>/awsNodePools/<node-pool-id>`. *

Valid characters are `/[a-z][0-9]-/`. Cannot be longer than 63 characters. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final OperationFuture createAwsNodePoolAsync( AwsClusterName parent, AwsNodePool awsNodePool, String awsNodePoolId) { CreateAwsNodePoolRequest request = CreateAwsNodePoolRequest.newBuilder() .setParent(parent == null ? null : parent.toString()) .setAwsNodePool(awsNodePool) .setAwsNodePoolId(awsNodePoolId) .build(); return createAwsNodePoolAsync(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Creates a new [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool], attached to a given * [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster]. * *

If successful, the response contains a newly created * [Operation][google.longrunning.Operation] resource that can be described to track the status of * the operation. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   String parent = AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]").toString();
   *   AwsNodePool awsNodePool = AwsNodePool.newBuilder().build();
   *   String awsNodePoolId = "awsNodePoolId-1885267498";
   *   AwsNodePool response =
   *       awsClustersClient.createAwsNodePoolAsync(parent, awsNodePool, awsNodePoolId).get();
   * }
   * }
* * @param parent Required. The [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster] resource * where this node pool will be created. *

`AwsCluster` names are formatted as * `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>`. *

See [Resource Names](https://cloud.google.com/apis/design/resource_names) for more * details on Google Cloud resource names. * @param awsNodePool Required. The specification of the * [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] to create. * @param awsNodePoolId Required. A client provided ID the resource. Must be unique within the * parent resource. *

The provided ID will be part of the * [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resource name formatted as * `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>/awsNodePools/<node-pool-id>`. *

Valid characters are `/[a-z][0-9]-/`. Cannot be longer than 63 characters. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final OperationFuture createAwsNodePoolAsync( String parent, AwsNodePool awsNodePool, String awsNodePoolId) { CreateAwsNodePoolRequest request = CreateAwsNodePoolRequest.newBuilder() .setParent(parent) .setAwsNodePool(awsNodePool) .setAwsNodePoolId(awsNodePoolId) .build(); return createAwsNodePoolAsync(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Creates a new [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool], attached to a given * [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster]. * *

If successful, the response contains a newly created * [Operation][google.longrunning.Operation] resource that can be described to track the status of * the operation. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   CreateAwsNodePoolRequest request =
   *       CreateAwsNodePoolRequest.newBuilder()
   *           .setParent(AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]").toString())
   *           .setAwsNodePool(AwsNodePool.newBuilder().build())
   *           .setAwsNodePoolId("awsNodePoolId-1885267498")
   *           .setValidateOnly(true)
   *           .build();
   *   AwsNodePool response = awsClustersClient.createAwsNodePoolAsync(request).get();
   * }
   * }
* * @param request The request object containing all of the parameters for the API call. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final OperationFuture createAwsNodePoolAsync( CreateAwsNodePoolRequest request) { return createAwsNodePoolOperationCallable().futureCall(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Creates a new [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool], attached to a given * [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster]. * *

If successful, the response contains a newly created * [Operation][google.longrunning.Operation] resource that can be described to track the status of * the operation. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   CreateAwsNodePoolRequest request =
   *       CreateAwsNodePoolRequest.newBuilder()
   *           .setParent(AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]").toString())
   *           .setAwsNodePool(AwsNodePool.newBuilder().build())
   *           .setAwsNodePoolId("awsNodePoolId-1885267498")
   *           .setValidateOnly(true)
   *           .build();
   *   OperationFuture future =
   *       awsClustersClient.createAwsNodePoolOperationCallable().futureCall(request);
   *   // Do something.
   *   AwsNodePool response = future.get();
   * }
   * }
*/ public final OperationCallable createAwsNodePoolOperationCallable() { return stub.createAwsNodePoolOperationCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Creates a new [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool], attached to a given * [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster]. * *

If successful, the response contains a newly created * [Operation][google.longrunning.Operation] resource that can be described to track the status of * the operation. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   CreateAwsNodePoolRequest request =
   *       CreateAwsNodePoolRequest.newBuilder()
   *           .setParent(AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]").toString())
   *           .setAwsNodePool(AwsNodePool.newBuilder().build())
   *           .setAwsNodePoolId("awsNodePoolId-1885267498")
   *           .setValidateOnly(true)
   *           .build();
   *   ApiFuture future =
   *       awsClustersClient.createAwsNodePoolCallable().futureCall(request);
   *   // Do something.
   *   Operation response = future.get();
   * }
   * }
*/ public final UnaryCallable createAwsNodePoolCallable() { return stub.createAwsNodePoolCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Updates an [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool]. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   AwsNodePool awsNodePool = AwsNodePool.newBuilder().build();
   *   FieldMask updateMask = FieldMask.newBuilder().build();
   *   AwsNodePool response =
   *       awsClustersClient.updateAwsNodePoolAsync(awsNodePool, updateMask).get();
   * }
   * }
* * @param awsNodePool Required. The [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] * resource to update. * @param updateMask Required. Mask of fields to update. At least one path must be supplied in * this field. The elements of the repeated paths field can only include these fields from * [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool]: *

* `annotations`. * `version`. * `autoscaling.min_node_count`. * * `autoscaling.max_node_count`. * `config.config_encryption.kms_key_arn`. * * `config.security_group_ids`. * `config.root_volume.iops`. * * `config.root_volume.throughput`. * `config.root_volume.kms_key_arn`. * * `config.root_volume.volume_type`. * `config.root_volume.size_gib`. * * `config.proxy_config`. * `config.proxy_config.secret_arn`. * * `config.proxy_config.secret_version`. * `config.ssh_config`. * * `config.ssh_config.ec2_key_pair`. * `config.instance_placement.tenancy`. * * `config.iam_instance_profile`. * `config.labels`. * `config.tags`. * * `config.autoscaling_metrics_collection`. * * `config.autoscaling_metrics_collection.granularity`. * * `config.autoscaling_metrics_collection.metrics`. * `config.instance_type`. * * `management.auto_repair`. * `management`. * `update_settings`. * * `update_settings.surge_settings`. * `update_settings.surge_settings.max_surge`. * * `update_settings.surge_settings.max_unavailable`. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final OperationFuture updateAwsNodePoolAsync( AwsNodePool awsNodePool, FieldMask updateMask) { UpdateAwsNodePoolRequest request = UpdateAwsNodePoolRequest.newBuilder() .setAwsNodePool(awsNodePool) .setUpdateMask(updateMask) .build(); return updateAwsNodePoolAsync(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Updates an [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool]. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   UpdateAwsNodePoolRequest request =
   *       UpdateAwsNodePoolRequest.newBuilder()
   *           .setAwsNodePool(AwsNodePool.newBuilder().build())
   *           .setValidateOnly(true)
   *           .setUpdateMask(FieldMask.newBuilder().build())
   *           .build();
   *   AwsNodePool response = awsClustersClient.updateAwsNodePoolAsync(request).get();
   * }
   * }
* * @param request The request object containing all of the parameters for the API call. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final OperationFuture updateAwsNodePoolAsync( UpdateAwsNodePoolRequest request) { return updateAwsNodePoolOperationCallable().futureCall(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Updates an [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool]. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   UpdateAwsNodePoolRequest request =
   *       UpdateAwsNodePoolRequest.newBuilder()
   *           .setAwsNodePool(AwsNodePool.newBuilder().build())
   *           .setValidateOnly(true)
   *           .setUpdateMask(FieldMask.newBuilder().build())
   *           .build();
   *   OperationFuture future =
   *       awsClustersClient.updateAwsNodePoolOperationCallable().futureCall(request);
   *   // Do something.
   *   AwsNodePool response = future.get();
   * }
   * }
*/ public final OperationCallable updateAwsNodePoolOperationCallable() { return stub.updateAwsNodePoolOperationCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Updates an [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool]. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   UpdateAwsNodePoolRequest request =
   *       UpdateAwsNodePoolRequest.newBuilder()
   *           .setAwsNodePool(AwsNodePool.newBuilder().build())
   *           .setValidateOnly(true)
   *           .setUpdateMask(FieldMask.newBuilder().build())
   *           .build();
   *   ApiFuture future =
   *       awsClustersClient.updateAwsNodePoolCallable().futureCall(request);
   *   // Do something.
   *   Operation response = future.get();
   * }
   * }
*/ public final UnaryCallable updateAwsNodePoolCallable() { return stub.updateAwsNodePoolCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Rolls back a previously aborted or failed * [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] update request. Makes no changes if * the last update request successfully finished. If an update request is in progress, you cannot * rollback the update. You must first cancel or let it finish unsuccessfully before you can * rollback. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   AwsNodePoolName name =
   *       AwsNodePoolName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]", "[AWS_NODE_POOL]");
   *   AwsNodePool response = awsClustersClient.rollbackAwsNodePoolUpdateAsync(name).get();
   * }
   * }
* * @param name Required. The name of the [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] * resource to rollback. *

`AwsNodePool` names are formatted as * `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>/awsNodePools/<node-pool-id>`. *

See [Resource Names](https://cloud.google.com/apis/design/resource_names) for more * details on Google Cloud resource names. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final OperationFuture rollbackAwsNodePoolUpdateAsync( AwsNodePoolName name) { RollbackAwsNodePoolUpdateRequest request = RollbackAwsNodePoolUpdateRequest.newBuilder() .setName(name == null ? null : name.toString()) .build(); return rollbackAwsNodePoolUpdateAsync(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Rolls back a previously aborted or failed * [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] update request. Makes no changes if * the last update request successfully finished. If an update request is in progress, you cannot * rollback the update. You must first cancel or let it finish unsuccessfully before you can * rollback. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   String name =
   *       AwsNodePoolName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]", "[AWS_NODE_POOL]")
   *           .toString();
   *   AwsNodePool response = awsClustersClient.rollbackAwsNodePoolUpdateAsync(name).get();
   * }
   * }
* * @param name Required. The name of the [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] * resource to rollback. *

`AwsNodePool` names are formatted as * `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>/awsNodePools/<node-pool-id>`. *

See [Resource Names](https://cloud.google.com/apis/design/resource_names) for more * details on Google Cloud resource names. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final OperationFuture rollbackAwsNodePoolUpdateAsync( String name) { RollbackAwsNodePoolUpdateRequest request = RollbackAwsNodePoolUpdateRequest.newBuilder().setName(name).build(); return rollbackAwsNodePoolUpdateAsync(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Rolls back a previously aborted or failed * [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] update request. Makes no changes if * the last update request successfully finished. If an update request is in progress, you cannot * rollback the update. You must first cancel or let it finish unsuccessfully before you can * rollback. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   RollbackAwsNodePoolUpdateRequest request =
   *       RollbackAwsNodePoolUpdateRequest.newBuilder()
   *           .setName(
   *               AwsNodePoolName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]", "[AWS_NODE_POOL]")
   *                   .toString())
   *           .setRespectPdb(true)
   *           .build();
   *   AwsNodePool response = awsClustersClient.rollbackAwsNodePoolUpdateAsync(request).get();
   * }
   * }
* * @param request The request object containing all of the parameters for the API call. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final OperationFuture rollbackAwsNodePoolUpdateAsync( RollbackAwsNodePoolUpdateRequest request) { return rollbackAwsNodePoolUpdateOperationCallable().futureCall(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Rolls back a previously aborted or failed * [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] update request. Makes no changes if * the last update request successfully finished. If an update request is in progress, you cannot * rollback the update. You must first cancel or let it finish unsuccessfully before you can * rollback. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   RollbackAwsNodePoolUpdateRequest request =
   *       RollbackAwsNodePoolUpdateRequest.newBuilder()
   *           .setName(
   *               AwsNodePoolName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]", "[AWS_NODE_POOL]")
   *                   .toString())
   *           .setRespectPdb(true)
   *           .build();
   *   OperationFuture future =
   *       awsClustersClient.rollbackAwsNodePoolUpdateOperationCallable().futureCall(request);
   *   // Do something.
   *   AwsNodePool response = future.get();
   * }
   * }
*/ public final OperationCallable rollbackAwsNodePoolUpdateOperationCallable() { return stub.rollbackAwsNodePoolUpdateOperationCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Rolls back a previously aborted or failed * [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] update request. Makes no changes if * the last update request successfully finished. If an update request is in progress, you cannot * rollback the update. You must first cancel or let it finish unsuccessfully before you can * rollback. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   RollbackAwsNodePoolUpdateRequest request =
   *       RollbackAwsNodePoolUpdateRequest.newBuilder()
   *           .setName(
   *               AwsNodePoolName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]", "[AWS_NODE_POOL]")
   *                   .toString())
   *           .setRespectPdb(true)
   *           .build();
   *   ApiFuture future =
   *       awsClustersClient.rollbackAwsNodePoolUpdateCallable().futureCall(request);
   *   // Do something.
   *   Operation response = future.get();
   * }
   * }
*/ public final UnaryCallable rollbackAwsNodePoolUpdateCallable() { return stub.rollbackAwsNodePoolUpdateCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Describes a specific [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resource. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   AwsNodePoolName name =
   *       AwsNodePoolName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]", "[AWS_NODE_POOL]");
   *   AwsNodePool response = awsClustersClient.getAwsNodePool(name);
   * }
   * }
* * @param name Required. The name of the [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] * resource to describe. *

`AwsNodePool` names are formatted as * `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>/awsNodePools/<node-pool-id>`. *

See [Resource Names](https://cloud.google.com/apis/design/resource_names) for more * details on Google Cloud resource names. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final AwsNodePool getAwsNodePool(AwsNodePoolName name) { GetAwsNodePoolRequest request = GetAwsNodePoolRequest.newBuilder().setName(name == null ? null : name.toString()).build(); return getAwsNodePool(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Describes a specific [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resource. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   String name =
   *       AwsNodePoolName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]", "[AWS_NODE_POOL]")
   *           .toString();
   *   AwsNodePool response = awsClustersClient.getAwsNodePool(name);
   * }
   * }
* * @param name Required. The name of the [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] * resource to describe. *

`AwsNodePool` names are formatted as * `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>/awsNodePools/<node-pool-id>`. *

See [Resource Names](https://cloud.google.com/apis/design/resource_names) for more * details on Google Cloud resource names. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final AwsNodePool getAwsNodePool(String name) { GetAwsNodePoolRequest request = GetAwsNodePoolRequest.newBuilder().setName(name).build(); return getAwsNodePool(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Describes a specific [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resource. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   GetAwsNodePoolRequest request =
   *       GetAwsNodePoolRequest.newBuilder()
   *           .setName(
   *               AwsNodePoolName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]", "[AWS_NODE_POOL]")
   *                   .toString())
   *           .build();
   *   AwsNodePool response = awsClustersClient.getAwsNodePool(request);
   * }
   * }
* * @param request The request object containing all of the parameters for the API call. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final AwsNodePool getAwsNodePool(GetAwsNodePoolRequest request) { return getAwsNodePoolCallable().call(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Describes a specific [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resource. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   GetAwsNodePoolRequest request =
   *       GetAwsNodePoolRequest.newBuilder()
   *           .setName(
   *               AwsNodePoolName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]", "[AWS_NODE_POOL]")
   *                   .toString())
   *           .build();
   *   ApiFuture future =
   *       awsClustersClient.getAwsNodePoolCallable().futureCall(request);
   *   // Do something.
   *   AwsNodePool response = future.get();
   * }
   * }
*/ public final UnaryCallable getAwsNodePoolCallable() { return stub.getAwsNodePoolCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Lists all [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resources on a given * [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster]. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   AwsClusterName parent = AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]");
   *   for (AwsNodePool element : awsClustersClient.listAwsNodePools(parent).iterateAll()) {
   *     // doThingsWith(element);
   *   }
   * }
   * }
* * @param parent Required. The parent `AwsCluster` which owns this collection of * [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resources. *

`AwsCluster` names are formatted as * `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>`. *

See [Resource Names](https://cloud.google.com/apis/design/resource_names) for more * details on Google Cloud resource names. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final ListAwsNodePoolsPagedResponse listAwsNodePools(AwsClusterName parent) { ListAwsNodePoolsRequest request = ListAwsNodePoolsRequest.newBuilder() .setParent(parent == null ? null : parent.toString()) .build(); return listAwsNodePools(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Lists all [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resources on a given * [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster]. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   String parent = AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]").toString();
   *   for (AwsNodePool element : awsClustersClient.listAwsNodePools(parent).iterateAll()) {
   *     // doThingsWith(element);
   *   }
   * }
   * }
* * @param parent Required. The parent `AwsCluster` which owns this collection of * [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resources. *

`AwsCluster` names are formatted as * `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>`. *

See [Resource Names](https://cloud.google.com/apis/design/resource_names) for more * details on Google Cloud resource names. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final ListAwsNodePoolsPagedResponse listAwsNodePools(String parent) { ListAwsNodePoolsRequest request = ListAwsNodePoolsRequest.newBuilder().setParent(parent).build(); return listAwsNodePools(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Lists all [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resources on a given * [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster]. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   ListAwsNodePoolsRequest request =
   *       ListAwsNodePoolsRequest.newBuilder()
   *           .setParent(AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]").toString())
   *           .setPageSize(883849137)
   *           .setPageToken("pageToken873572522")
   *           .build();
   *   for (AwsNodePool element : awsClustersClient.listAwsNodePools(request).iterateAll()) {
   *     // doThingsWith(element);
   *   }
   * }
   * }
* * @param request The request object containing all of the parameters for the API call. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final ListAwsNodePoolsPagedResponse listAwsNodePools(ListAwsNodePoolsRequest request) { return listAwsNodePoolsPagedCallable().call(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Lists all [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resources on a given * [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster]. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   ListAwsNodePoolsRequest request =
   *       ListAwsNodePoolsRequest.newBuilder()
   *           .setParent(AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]").toString())
   *           .setPageSize(883849137)
   *           .setPageToken("pageToken873572522")
   *           .build();
   *   ApiFuture future =
   *       awsClustersClient.listAwsNodePoolsPagedCallable().futureCall(request);
   *   // Do something.
   *   for (AwsNodePool element : future.get().iterateAll()) {
   *     // doThingsWith(element);
   *   }
   * }
   * }
*/ public final UnaryCallable listAwsNodePoolsPagedCallable() { return stub.listAwsNodePoolsPagedCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Lists all [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resources on a given * [AwsCluster][google.cloud.gkemulticloud.v1.AwsCluster]. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   ListAwsNodePoolsRequest request =
   *       ListAwsNodePoolsRequest.newBuilder()
   *           .setParent(AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]").toString())
   *           .setPageSize(883849137)
   *           .setPageToken("pageToken873572522")
   *           .build();
   *   while (true) {
   *     ListAwsNodePoolsResponse response =
   *         awsClustersClient.listAwsNodePoolsCallable().call(request);
   *     for (AwsNodePool element : response.getAwsNodePoolsList()) {
   *       // doThingsWith(element);
   *     }
   *     String nextPageToken = response.getNextPageToken();
   *     if (!Strings.isNullOrEmpty(nextPageToken)) {
   *       request = request.toBuilder().setPageToken(nextPageToken).build();
   *     } else {
   *       break;
   *     }
   *   }
   * }
   * }
*/ public final UnaryCallable listAwsNodePoolsCallable() { return stub.listAwsNodePoolsCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Deletes a specific [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resource. * *

If successful, the response contains a newly created * [Operation][google.longrunning.Operation] resource that can be described to track the status of * the operation. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   AwsNodePoolName name =
   *       AwsNodePoolName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]", "[AWS_NODE_POOL]");
   *   awsClustersClient.deleteAwsNodePoolAsync(name).get();
   * }
   * }
* * @param name Required. The resource name the * [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] to delete. *

`AwsNodePool` names are formatted as * `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>/awsNodePools/<node-pool-id>`. *

See [Resource Names](https://cloud.google.com/apis/design/resource_names) for more * details on Google Cloud resource names. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final OperationFuture deleteAwsNodePoolAsync( AwsNodePoolName name) { DeleteAwsNodePoolRequest request = DeleteAwsNodePoolRequest.newBuilder() .setName(name == null ? null : name.toString()) .build(); return deleteAwsNodePoolAsync(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Deletes a specific [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resource. * *

If successful, the response contains a newly created * [Operation][google.longrunning.Operation] resource that can be described to track the status of * the operation. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   String name =
   *       AwsNodePoolName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]", "[AWS_NODE_POOL]")
   *           .toString();
   *   awsClustersClient.deleteAwsNodePoolAsync(name).get();
   * }
   * }
* * @param name Required. The resource name the * [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] to delete. *

`AwsNodePool` names are formatted as * `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>/awsNodePools/<node-pool-id>`. *

See [Resource Names](https://cloud.google.com/apis/design/resource_names) for more * details on Google Cloud resource names. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final OperationFuture deleteAwsNodePoolAsync(String name) { DeleteAwsNodePoolRequest request = DeleteAwsNodePoolRequest.newBuilder().setName(name).build(); return deleteAwsNodePoolAsync(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Deletes a specific [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resource. * *

If successful, the response contains a newly created * [Operation][google.longrunning.Operation] resource that can be described to track the status of * the operation. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   DeleteAwsNodePoolRequest request =
   *       DeleteAwsNodePoolRequest.newBuilder()
   *           .setName(
   *               AwsNodePoolName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]", "[AWS_NODE_POOL]")
   *                   .toString())
   *           .setValidateOnly(true)
   *           .setAllowMissing(true)
   *           .setIgnoreErrors(true)
   *           .setEtag("etag3123477")
   *           .build();
   *   awsClustersClient.deleteAwsNodePoolAsync(request).get();
   * }
   * }
* * @param request The request object containing all of the parameters for the API call. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final OperationFuture deleteAwsNodePoolAsync( DeleteAwsNodePoolRequest request) { return deleteAwsNodePoolOperationCallable().futureCall(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Deletes a specific [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resource. * *

If successful, the response contains a newly created * [Operation][google.longrunning.Operation] resource that can be described to track the status of * the operation. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   DeleteAwsNodePoolRequest request =
   *       DeleteAwsNodePoolRequest.newBuilder()
   *           .setName(
   *               AwsNodePoolName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]", "[AWS_NODE_POOL]")
   *                   .toString())
   *           .setValidateOnly(true)
   *           .setAllowMissing(true)
   *           .setIgnoreErrors(true)
   *           .setEtag("etag3123477")
   *           .build();
   *   OperationFuture future =
   *       awsClustersClient.deleteAwsNodePoolOperationCallable().futureCall(request);
   *   // Do something.
   *   future.get();
   * }
   * }
*/ public final OperationCallable deleteAwsNodePoolOperationCallable() { return stub.deleteAwsNodePoolOperationCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Deletes a specific [AwsNodePool][google.cloud.gkemulticloud.v1.AwsNodePool] resource. * *

If successful, the response contains a newly created * [Operation][google.longrunning.Operation] resource that can be described to track the status of * the operation. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   DeleteAwsNodePoolRequest request =
   *       DeleteAwsNodePoolRequest.newBuilder()
   *           .setName(
   *               AwsNodePoolName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]", "[AWS_NODE_POOL]")
   *                   .toString())
   *           .setValidateOnly(true)
   *           .setAllowMissing(true)
   *           .setIgnoreErrors(true)
   *           .setEtag("etag3123477")
   *           .build();
   *   ApiFuture future =
   *       awsClustersClient.deleteAwsNodePoolCallable().futureCall(request);
   *   // Do something.
   *   future.get();
   * }
   * }
*/ public final UnaryCallable deleteAwsNodePoolCallable() { return stub.deleteAwsNodePoolCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Gets the OIDC discovery document for the cluster. See the [OpenID Connect Discovery 1.0 * specification](https://openid.net/specs/openid-connect-discovery-1_0.html) for details. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   GetAwsOpenIdConfigRequest request =
   *       GetAwsOpenIdConfigRequest.newBuilder()
   *           .setAwsCluster(
   *               AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]").toString())
   *           .build();
   *   AwsOpenIdConfig response = awsClustersClient.getAwsOpenIdConfig(request);
   * }
   * }
* * @param request The request object containing all of the parameters for the API call. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final AwsOpenIdConfig getAwsOpenIdConfig(GetAwsOpenIdConfigRequest request) { return getAwsOpenIdConfigCallable().call(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Gets the OIDC discovery document for the cluster. See the [OpenID Connect Discovery 1.0 * specification](https://openid.net/specs/openid-connect-discovery-1_0.html) for details. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   GetAwsOpenIdConfigRequest request =
   *       GetAwsOpenIdConfigRequest.newBuilder()
   *           .setAwsCluster(
   *               AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]").toString())
   *           .build();
   *   ApiFuture future =
   *       awsClustersClient.getAwsOpenIdConfigCallable().futureCall(request);
   *   // Do something.
   *   AwsOpenIdConfig response = future.get();
   * }
   * }
*/ public final UnaryCallable getAwsOpenIdConfigCallable() { return stub.getAwsOpenIdConfigCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Gets the public component of the cluster signing keys in JSON Web Key format. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   GetAwsJsonWebKeysRequest request =
   *       GetAwsJsonWebKeysRequest.newBuilder()
   *           .setAwsCluster(
   *               AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]").toString())
   *           .build();
   *   AwsJsonWebKeys response = awsClustersClient.getAwsJsonWebKeys(request);
   * }
   * }
* * @param request The request object containing all of the parameters for the API call. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final AwsJsonWebKeys getAwsJsonWebKeys(GetAwsJsonWebKeysRequest request) { return getAwsJsonWebKeysCallable().call(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Gets the public component of the cluster signing keys in JSON Web Key format. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   GetAwsJsonWebKeysRequest request =
   *       GetAwsJsonWebKeysRequest.newBuilder()
   *           .setAwsCluster(
   *               AwsClusterName.of("[PROJECT]", "[LOCATION]", "[AWS_CLUSTER]").toString())
   *           .build();
   *   ApiFuture future =
   *       awsClustersClient.getAwsJsonWebKeysCallable().futureCall(request);
   *   // Do something.
   *   AwsJsonWebKeys response = future.get();
   * }
   * }
*/ public final UnaryCallable getAwsJsonWebKeysCallable() { return stub.getAwsJsonWebKeysCallable(); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Returns information, such as supported AWS regions and Kubernetes versions, on a given Google * Cloud location. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   AwsServerConfigName name = AwsServerConfigName.of("[PROJECT]", "[LOCATION]");
   *   AwsServerConfig response = awsClustersClient.getAwsServerConfig(name);
   * }
   * }
* * @param name Required. The name of the * [AwsServerConfig][google.cloud.gkemulticloud.v1.AwsServerConfig] resource to describe. *

`AwsServerConfig` names are formatted as * `projects/<project-id>/locations/<region>/awsServerConfig`. *

See [Resource Names](https://cloud.google.com/apis/design/resource_names) for more * details on Google Cloud resource names. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final AwsServerConfig getAwsServerConfig(AwsServerConfigName name) { GetAwsServerConfigRequest request = GetAwsServerConfigRequest.newBuilder() .setName(name == null ? null : name.toString()) .build(); return getAwsServerConfig(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Returns information, such as supported AWS regions and Kubernetes versions, on a given Google * Cloud location. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   String name = AwsServerConfigName.of("[PROJECT]", "[LOCATION]").toString();
   *   AwsServerConfig response = awsClustersClient.getAwsServerConfig(name);
   * }
   * }
* * @param name Required. The name of the * [AwsServerConfig][google.cloud.gkemulticloud.v1.AwsServerConfig] resource to describe. *

`AwsServerConfig` names are formatted as * `projects/<project-id>/locations/<region>/awsServerConfig`. *

See [Resource Names](https://cloud.google.com/apis/design/resource_names) for more * details on Google Cloud resource names. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final AwsServerConfig getAwsServerConfig(String name) { GetAwsServerConfigRequest request = GetAwsServerConfigRequest.newBuilder().setName(name).build(); return getAwsServerConfig(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Returns information, such as supported AWS regions and Kubernetes versions, on a given Google * Cloud location. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   GetAwsServerConfigRequest request =
   *       GetAwsServerConfigRequest.newBuilder()
   *           .setName(AwsServerConfigName.of("[PROJECT]", "[LOCATION]").toString())
   *           .build();
   *   AwsServerConfig response = awsClustersClient.getAwsServerConfig(request);
   * }
   * }
* * @param request The request object containing all of the parameters for the API call. * @throws com.google.api.gax.rpc.ApiException if the remote call fails */ public final AwsServerConfig getAwsServerConfig(GetAwsServerConfigRequest request) { return getAwsServerConfigCallable().call(request); } // AUTO-GENERATED DOCUMENTATION AND METHOD. /** * Returns information, such as supported AWS regions and Kubernetes versions, on a given Google * Cloud location. * *

Sample code: * *

{@code
   * // This snippet has been automatically generated and should be regarded as a code template only.
   * // It will require modifications to work:
   * // - It may require correct/in-range values for request initialization.
   * // - It may require specifying regional endpoints when creating the service client as shown in
   * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
   * try (AwsClustersClient awsClustersClient = AwsClustersClient.create()) {
   *   GetAwsServerConfigRequest request =
   *       GetAwsServerConfigRequest.newBuilder()
   *           .setName(AwsServerConfigName.of("[PROJECT]", "[LOCATION]").toString())
   *           .build();
   *   ApiFuture future =
   *       awsClustersClient.getAwsServerConfigCallable().futureCall(request);
   *   // Do something.
   *   AwsServerConfig response = future.get();
   * }
   * }
*/ public final UnaryCallable getAwsServerConfigCallable() { return stub.getAwsServerConfigCallable(); } @Override public final void close() { stub.close(); } @Override public void shutdown() { stub.shutdown(); } @Override public boolean isShutdown() { return stub.isShutdown(); } @Override public boolean isTerminated() { return stub.isTerminated(); } @Override public void shutdownNow() { stub.shutdownNow(); } @Override public boolean awaitTermination(long duration, TimeUnit unit) throws InterruptedException { return stub.awaitTermination(duration, unit); } public static class ListAwsClustersPagedResponse extends AbstractPagedListResponse< ListAwsClustersRequest, ListAwsClustersResponse, AwsCluster, ListAwsClustersPage, ListAwsClustersFixedSizeCollection> { public static ApiFuture createAsync( PageContext context, ApiFuture futureResponse) { ApiFuture futurePage = ListAwsClustersPage.createEmptyPage().createPageAsync(context, futureResponse); return ApiFutures.transform( futurePage, input -> new ListAwsClustersPagedResponse(input), MoreExecutors.directExecutor()); } private ListAwsClustersPagedResponse(ListAwsClustersPage page) { super(page, ListAwsClustersFixedSizeCollection.createEmptyCollection()); } } public static class ListAwsClustersPage extends AbstractPage< ListAwsClustersRequest, ListAwsClustersResponse, AwsCluster, ListAwsClustersPage> { private ListAwsClustersPage( PageContext context, ListAwsClustersResponse response) { super(context, response); } private static ListAwsClustersPage createEmptyPage() { return new ListAwsClustersPage(null, null); } @Override protected ListAwsClustersPage createPage( PageContext context, ListAwsClustersResponse response) { return new ListAwsClustersPage(context, response); } @Override public ApiFuture createPageAsync( PageContext context, ApiFuture futureResponse) { return super.createPageAsync(context, futureResponse); } } public static class ListAwsClustersFixedSizeCollection extends AbstractFixedSizeCollection< ListAwsClustersRequest, ListAwsClustersResponse, AwsCluster, ListAwsClustersPage, ListAwsClustersFixedSizeCollection> { private ListAwsClustersFixedSizeCollection( List pages, int collectionSize) { super(pages, collectionSize); } private static ListAwsClustersFixedSizeCollection createEmptyCollection() { return new ListAwsClustersFixedSizeCollection(null, 0); } @Override protected ListAwsClustersFixedSizeCollection createCollection( List pages, int collectionSize) { return new ListAwsClustersFixedSizeCollection(pages, collectionSize); } } public static class ListAwsNodePoolsPagedResponse extends AbstractPagedListResponse< ListAwsNodePoolsRequest, ListAwsNodePoolsResponse, AwsNodePool, ListAwsNodePoolsPage, ListAwsNodePoolsFixedSizeCollection> { public static ApiFuture createAsync( PageContext context, ApiFuture futureResponse) { ApiFuture futurePage = ListAwsNodePoolsPage.createEmptyPage().createPageAsync(context, futureResponse); return ApiFutures.transform( futurePage, input -> new ListAwsNodePoolsPagedResponse(input), MoreExecutors.directExecutor()); } private ListAwsNodePoolsPagedResponse(ListAwsNodePoolsPage page) { super(page, ListAwsNodePoolsFixedSizeCollection.createEmptyCollection()); } } public static class ListAwsNodePoolsPage extends AbstractPage< ListAwsNodePoolsRequest, ListAwsNodePoolsResponse, AwsNodePool, ListAwsNodePoolsPage> { private ListAwsNodePoolsPage( PageContext context, ListAwsNodePoolsResponse response) { super(context, response); } private static ListAwsNodePoolsPage createEmptyPage() { return new ListAwsNodePoolsPage(null, null); } @Override protected ListAwsNodePoolsPage createPage( PageContext context, ListAwsNodePoolsResponse response) { return new ListAwsNodePoolsPage(context, response); } @Override public ApiFuture createPageAsync( PageContext context, ApiFuture futureResponse) { return super.createPageAsync(context, futureResponse); } } public static class ListAwsNodePoolsFixedSizeCollection extends AbstractFixedSizeCollection< ListAwsNodePoolsRequest, ListAwsNodePoolsResponse, AwsNodePool, ListAwsNodePoolsPage, ListAwsNodePoolsFixedSizeCollection> { private ListAwsNodePoolsFixedSizeCollection( List pages, int collectionSize) { super(pages, collectionSize); } private static ListAwsNodePoolsFixedSizeCollection createEmptyCollection() { return new ListAwsNodePoolsFixedSizeCollection(null, 0); } @Override protected ListAwsNodePoolsFixedSizeCollection createCollection( List pages, int collectionSize) { return new ListAwsNodePoolsFixedSizeCollection(pages, collectionSize); } } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy