Class SessionControllerClient

java.lang.Object
com.google.cloud.dataproc.v1.SessionControllerClient
All Implemented Interfaces:
BackgroundResource, AutoCloseable

@Generated("by gapic-generator-java") public class SessionControllerClient extends Object implements BackgroundResource
Service Description: The `SessionController` provides methods to manage interactive sessions.

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:


 // 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
   SessionName name = SessionName.of("[PROJECT]", "[LOCATION]", "[SESSION]");
   Session response = sessionControllerClient.getSession(name);
 }
 

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

Methods
Method Description Method Variants

CreateSession

Create an interactive session asynchronously.

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

  • createSessionAsync(CreateSessionRequest request)

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

  • createSessionAsync(LocationName parent, Session session, String sessionId)

  • createSessionAsync(String parent, Session session, String sessionId)

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

  • createSessionOperationCallable()

  • createSessionCallable()

GetSession

Gets the resource representation for an interactive session.

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

  • getSession(GetSessionRequest request)

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

  • getSession(SessionName name)

  • getSession(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.

  • getSessionCallable()

ListSessions

Lists interactive sessions.

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

  • listSessions(ListSessionsRequest request)

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

  • listSessions(LocationName parent)

  • listSessions(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.

  • listSessionsPagedCallable()

  • listSessionsCallable()

TerminateSession

Terminates the interactive session.

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

  • terminateSessionAsync(TerminateSessionRequest request)

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

  • terminateSessionAsync(SessionName name)

  • terminateSessionAsync(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.

  • terminateSessionOperationCallable()

  • terminateSessionCallable()

DeleteSession

Deletes the interactive session resource. If the session is not in terminal state, it is terminated, and then deleted.

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

  • deleteSessionAsync(DeleteSessionRequest request)

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

  • deleteSessionAsync(SessionName name)

  • deleteSessionAsync(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.

  • deleteSessionOperationCallable()

  • deleteSessionCallable()

SetIamPolicy

Sets the access control policy on the specified resource. Replacesany existing policy.

Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED`errors.

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

  • setIamPolicy(SetIamPolicyRequest request)

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

  • setIamPolicyCallable()

GetIamPolicy

Gets the access control policy for a resource. Returns an empty policyif the resource exists and does not have a policy set.

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

  • getIamPolicy(GetIamPolicyRequest request)

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

  • getIamPolicyCallable()

TestIamPermissions

Returns permissions that a caller has on the specified resource. If theresource does not exist, this will return an empty set ofpermissions, not a `NOT_FOUND` error.

Note: This operation is designed to be used for buildingpermission-aware UIs and command-line tools, not for authorizationchecking. This operation may "fail open" without warning.

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

  • testIamPermissions(TestIamPermissionsRequest request)

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

  • testIamPermissionsCallable()

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 SessionControllerSettings to create(). For example:

To customize credentials:


 // 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
 SessionControllerSettings sessionControllerSettings =
     SessionControllerSettings.newBuilder()
         .setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
         .build();
 SessionControllerClient sessionControllerClient =
     SessionControllerClient.create(sessionControllerSettings);
 

To customize the endpoint:


 // 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
 SessionControllerSettings sessionControllerSettings =
     SessionControllerSettings.newBuilder().setEndpoint(myEndpoint).build();
 SessionControllerClient sessionControllerClient =
     SessionControllerClient.create(sessionControllerSettings);
 

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


 // 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
 SessionControllerSettings sessionControllerSettings =
     SessionControllerSettings.newHttpJsonBuilder().build();
 SessionControllerClient sessionControllerClient =
     SessionControllerClient.create(sessionControllerSettings);
 

Please refer to the GitHub repository's samples for more quickstart code snippets.

  • Constructor Details

    • SessionControllerClient

      protected SessionControllerClient(SessionControllerSettings settings) throws IOException
      Constructs an instance of SessionControllerClient, 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.
      Throws:
      IOException
    • SessionControllerClient

      protected SessionControllerClient(SessionControllerStub stub)
  • Method Details

    • create

      public static final SessionControllerClient create() throws IOException
      Constructs an instance of SessionControllerClient with default settings.
      Throws:
      IOException
    • create

      public static final SessionControllerClient create(SessionControllerSettings settings) throws IOException
      Constructs an instance of SessionControllerClient, using the given settings. The channels are created based on the settings passed in, or defaults for any settings that are not set.
      Throws:
      IOException
    • create

      public static final SessionControllerClient create(SessionControllerStub stub)
      Constructs an instance of SessionControllerClient, using the given stub for making calls. This is for advanced usage - prefer using create(SessionControllerSettings).
    • getSettings

      public final SessionControllerSettings getSettings()
    • getStub

      public SessionControllerStub getStub()
    • getOperationsClient

      public final OperationsClient getOperationsClient()
      Returns the OperationsClient that can be used to query the status of a long-running operation returned by another API method call.
    • getHttpJsonOperationsClient

      @BetaApi public final OperationsClient getHttpJsonOperationsClient()
      Returns the OperationsClient that can be used to query the status of a long-running operation returned by another API method call.
    • createSessionAsync

      public final OperationFuture<Session,SessionOperationMetadata> createSessionAsync(LocationName parent, Session session, String sessionId)
      Create an interactive session asynchronously.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]");
         Session session = Session.newBuilder().build();
         String sessionId = "sessionId607796817";
         Session response =
             sessionControllerClient.createSessionAsync(parent, session, sessionId).get();
       }
       
      Parameters:
      parent - Required. The parent resource where this session will be created.
      session - Required. The interactive session to create.
      sessionId - Required. The ID to use for the session, which becomes the final component of the session's resource name.

      This value must be 4-63 characters. Valid characters are /[a-z][0-9]-/.

      Throws:
      ApiException - if the remote call fails
    • createSessionAsync

      public final OperationFuture<Session,SessionOperationMetadata> createSessionAsync(String parent, Session session, String sessionId)
      Create an interactive session asynchronously.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         String parent = LocationName.of("[PROJECT]", "[LOCATION]").toString();
         Session session = Session.newBuilder().build();
         String sessionId = "sessionId607796817";
         Session response =
             sessionControllerClient.createSessionAsync(parent, session, sessionId).get();
       }
       
      Parameters:
      parent - Required. The parent resource where this session will be created.
      session - Required. The interactive session to create.
      sessionId - Required. The ID to use for the session, which becomes the final component of the session's resource name.

      This value must be 4-63 characters. Valid characters are /[a-z][0-9]-/.

      Throws:
      ApiException - if the remote call fails
    • createSessionAsync

      public final OperationFuture<Session,SessionOperationMetadata> createSessionAsync(CreateSessionRequest request)
      Create an interactive session asynchronously.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         CreateSessionRequest request =
             CreateSessionRequest.newBuilder()
                 .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
                 .setSession(Session.newBuilder().build())
                 .setSessionId("sessionId607796817")
                 .setRequestId("requestId693933066")
                 .build();
         Session response = sessionControllerClient.createSessionAsync(request).get();
       }
       
      Parameters:
      request - The request object containing all of the parameters for the API call.
      Throws:
      ApiException - if the remote call fails
    • createSessionOperationCallable

      public final OperationCallable<CreateSessionRequest,Session,SessionOperationMetadata> createSessionOperationCallable()
      Create an interactive session asynchronously.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         CreateSessionRequest request =
             CreateSessionRequest.newBuilder()
                 .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
                 .setSession(Session.newBuilder().build())
                 .setSessionId("sessionId607796817")
                 .setRequestId("requestId693933066")
                 .build();
         OperationFuture<Session, SessionOperationMetadata> future =
             sessionControllerClient.createSessionOperationCallable().futureCall(request);
         // Do something.
         Session response = future.get();
       }
       
    • createSessionCallable

      public final UnaryCallable<CreateSessionRequest,Operation> createSessionCallable()
      Create an interactive session asynchronously.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         CreateSessionRequest request =
             CreateSessionRequest.newBuilder()
                 .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
                 .setSession(Session.newBuilder().build())
                 .setSessionId("sessionId607796817")
                 .setRequestId("requestId693933066")
                 .build();
         ApiFuture<Operation> future =
             sessionControllerClient.createSessionCallable().futureCall(request);
         // Do something.
         Operation response = future.get();
       }
       
    • getSession

      public final Session getSession(SessionName name)
      Gets the resource representation for an interactive session.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         SessionName name = SessionName.of("[PROJECT]", "[LOCATION]", "[SESSION]");
         Session response = sessionControllerClient.getSession(name);
       }
       
      Parameters:
      name - Required. The name of the session to retrieve.
      Throws:
      ApiException - if the remote call fails
    • getSession

      public final Session getSession(String name)
      Gets the resource representation for an interactive session.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         String name = SessionName.of("[PROJECT]", "[LOCATION]", "[SESSION]").toString();
         Session response = sessionControllerClient.getSession(name);
       }
       
      Parameters:
      name - Required. The name of the session to retrieve.
      Throws:
      ApiException - if the remote call fails
    • getSession

      public final Session getSession(GetSessionRequest request)
      Gets the resource representation for an interactive session.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         GetSessionRequest request =
             GetSessionRequest.newBuilder()
                 .setName(SessionName.of("[PROJECT]", "[LOCATION]", "[SESSION]").toString())
                 .build();
         Session response = sessionControllerClient.getSession(request);
       }
       
      Parameters:
      request - The request object containing all of the parameters for the API call.
      Throws:
      ApiException - if the remote call fails
    • getSessionCallable

      public final UnaryCallable<GetSessionRequest,Session> getSessionCallable()
      Gets the resource representation for an interactive session.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         GetSessionRequest request =
             GetSessionRequest.newBuilder()
                 .setName(SessionName.of("[PROJECT]", "[LOCATION]", "[SESSION]").toString())
                 .build();
         ApiFuture<Session> future = sessionControllerClient.getSessionCallable().futureCall(request);
         // Do something.
         Session response = future.get();
       }
       
    • listSessions

      Lists interactive sessions.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]");
         for (Session element : sessionControllerClient.listSessions(parent).iterateAll()) {
           // doThingsWith(element);
         }
       }
       
      Parameters:
      parent - Required. The parent, which owns this collection of sessions.
      Throws:
      ApiException - if the remote call fails
    • listSessions

      public final SessionControllerClient.ListSessionsPagedResponse listSessions(String parent)
      Lists interactive sessions.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         String parent = LocationName.of("[PROJECT]", "[LOCATION]").toString();
         for (Session element : sessionControllerClient.listSessions(parent).iterateAll()) {
           // doThingsWith(element);
         }
       }
       
      Parameters:
      parent - Required. The parent, which owns this collection of sessions.
      Throws:
      ApiException - if the remote call fails
    • listSessions

      Lists interactive sessions.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         ListSessionsRequest request =
             ListSessionsRequest.newBuilder()
                 .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
                 .setPageSize(883849137)
                 .setPageToken("pageToken873572522")
                 .setFilter("filter-1274492040")
                 .build();
         for (Session element : sessionControllerClient.listSessions(request).iterateAll()) {
           // doThingsWith(element);
         }
       }
       
      Parameters:
      request - The request object containing all of the parameters for the API call.
      Throws:
      ApiException - if the remote call fails
    • listSessionsPagedCallable

      Lists interactive sessions.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         ListSessionsRequest request =
             ListSessionsRequest.newBuilder()
                 .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
                 .setPageSize(883849137)
                 .setPageToken("pageToken873572522")
                 .setFilter("filter-1274492040")
                 .build();
         ApiFuture<Session> future =
             sessionControllerClient.listSessionsPagedCallable().futureCall(request);
         // Do something.
         for (Session element : future.get().iterateAll()) {
           // doThingsWith(element);
         }
       }
       
    • listSessionsCallable

      public final UnaryCallable<ListSessionsRequest,ListSessionsResponse> listSessionsCallable()
      Lists interactive sessions.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         ListSessionsRequest request =
             ListSessionsRequest.newBuilder()
                 .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
                 .setPageSize(883849137)
                 .setPageToken("pageToken873572522")
                 .setFilter("filter-1274492040")
                 .build();
         while (true) {
           ListSessionsResponse response =
               sessionControllerClient.listSessionsCallable().call(request);
           for (Session element : response.getSessionsList()) {
             // doThingsWith(element);
           }
           String nextPageToken = response.getNextPageToken();
           if (!Strings.isNullOrEmpty(nextPageToken)) {
             request = request.toBuilder().setPageToken(nextPageToken).build();
           } else {
             break;
           }
         }
       }
       
    • terminateSessionAsync

      public final OperationFuture<Session,SessionOperationMetadata> terminateSessionAsync(SessionName name)
      Terminates the interactive session.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         SessionName name = SessionName.of("[PROJECT]", "[LOCATION]", "[SESSION]");
         Session response = sessionControllerClient.terminateSessionAsync(name).get();
       }
       
      Parameters:
      name - Required. The name of the session resource to terminate.
      Throws:
      ApiException - if the remote call fails
    • terminateSessionAsync

      public final OperationFuture<Session,SessionOperationMetadata> terminateSessionAsync(String name)
      Terminates the interactive session.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         String name = SessionName.of("[PROJECT]", "[LOCATION]", "[SESSION]").toString();
         Session response = sessionControllerClient.terminateSessionAsync(name).get();
       }
       
      Parameters:
      name - Required. The name of the session resource to terminate.
      Throws:
      ApiException - if the remote call fails
    • terminateSessionAsync

      public final OperationFuture<Session,SessionOperationMetadata> terminateSessionAsync(TerminateSessionRequest request)
      Terminates the interactive session.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         TerminateSessionRequest request =
             TerminateSessionRequest.newBuilder()
                 .setName(SessionName.of("[PROJECT]", "[LOCATION]", "[SESSION]").toString())
                 .setRequestId("requestId693933066")
                 .build();
         Session response = sessionControllerClient.terminateSessionAsync(request).get();
       }
       
      Parameters:
      request - The request object containing all of the parameters for the API call.
      Throws:
      ApiException - if the remote call fails
    • terminateSessionOperationCallable

      public final OperationCallable<TerminateSessionRequest,Session,SessionOperationMetadata> terminateSessionOperationCallable()
      Terminates the interactive session.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         TerminateSessionRequest request =
             TerminateSessionRequest.newBuilder()
                 .setName(SessionName.of("[PROJECT]", "[LOCATION]", "[SESSION]").toString())
                 .setRequestId("requestId693933066")
                 .build();
         OperationFuture<Session, SessionOperationMetadata> future =
             sessionControllerClient.terminateSessionOperationCallable().futureCall(request);
         // Do something.
         Session response = future.get();
       }
       
    • terminateSessionCallable

      public final UnaryCallable<TerminateSessionRequest,Operation> terminateSessionCallable()
      Terminates the interactive session.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         TerminateSessionRequest request =
             TerminateSessionRequest.newBuilder()
                 .setName(SessionName.of("[PROJECT]", "[LOCATION]", "[SESSION]").toString())
                 .setRequestId("requestId693933066")
                 .build();
         ApiFuture<Operation> future =
             sessionControllerClient.terminateSessionCallable().futureCall(request);
         // Do something.
         Operation response = future.get();
       }
       
    • deleteSessionAsync

      public final OperationFuture<Session,SessionOperationMetadata> deleteSessionAsync(SessionName name)
      Deletes the interactive session resource. If the session is not in terminal state, it is terminated, and then deleted.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         SessionName name = SessionName.of("[PROJECT]", "[LOCATION]", "[SESSION]");
         Session response = sessionControllerClient.deleteSessionAsync(name).get();
       }
       
      Parameters:
      name - Required. The name of the session resource to delete.
      Throws:
      ApiException - if the remote call fails
    • deleteSessionAsync

      public final OperationFuture<Session,SessionOperationMetadata> deleteSessionAsync(String name)
      Deletes the interactive session resource. If the session is not in terminal state, it is terminated, and then deleted.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         String name = SessionName.of("[PROJECT]", "[LOCATION]", "[SESSION]").toString();
         Session response = sessionControllerClient.deleteSessionAsync(name).get();
       }
       
      Parameters:
      name - Required. The name of the session resource to delete.
      Throws:
      ApiException - if the remote call fails
    • deleteSessionAsync

      public final OperationFuture<Session,SessionOperationMetadata> deleteSessionAsync(DeleteSessionRequest request)
      Deletes the interactive session resource. If the session is not in terminal state, it is terminated, and then deleted.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         DeleteSessionRequest request =
             DeleteSessionRequest.newBuilder()
                 .setName(SessionName.of("[PROJECT]", "[LOCATION]", "[SESSION]").toString())
                 .setRequestId("requestId693933066")
                 .build();
         Session response = sessionControllerClient.deleteSessionAsync(request).get();
       }
       
      Parameters:
      request - The request object containing all of the parameters for the API call.
      Throws:
      ApiException - if the remote call fails
    • deleteSessionOperationCallable

      public final OperationCallable<DeleteSessionRequest,Session,SessionOperationMetadata> deleteSessionOperationCallable()
      Deletes the interactive session resource. If the session is not in terminal state, it is terminated, and then deleted.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         DeleteSessionRequest request =
             DeleteSessionRequest.newBuilder()
                 .setName(SessionName.of("[PROJECT]", "[LOCATION]", "[SESSION]").toString())
                 .setRequestId("requestId693933066")
                 .build();
         OperationFuture<Session, SessionOperationMetadata> future =
             sessionControllerClient.deleteSessionOperationCallable().futureCall(request);
         // Do something.
         Session response = future.get();
       }
       
    • deleteSessionCallable

      public final UnaryCallable<DeleteSessionRequest,Operation> deleteSessionCallable()
      Deletes the interactive session resource. If the session is not in terminal state, it is terminated, and then deleted.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         DeleteSessionRequest request =
             DeleteSessionRequest.newBuilder()
                 .setName(SessionName.of("[PROJECT]", "[LOCATION]", "[SESSION]").toString())
                 .setRequestId("requestId693933066")
                 .build();
         ApiFuture<Operation> future =
             sessionControllerClient.deleteSessionCallable().futureCall(request);
         // Do something.
         Operation response = future.get();
       }
       
    • setIamPolicy

      public final Policy setIamPolicy(SetIamPolicyRequest request)
      Sets the access control policy on the specified resource. Replacesany existing policy.

      Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED`errors.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         SetIamPolicyRequest request =
             SetIamPolicyRequest.newBuilder()
                 .setResource(
                     AutoscalingPolicyName.ofProjectRegionAutoscalingPolicyName(
                             "[PROJECT]", "[REGION]", "[AUTOSCALING_POLICY]")
                         .toString())
                 .setPolicy(Policy.newBuilder().build())
                 .setUpdateMask(FieldMask.newBuilder().build())
                 .build();
         Policy response = sessionControllerClient.setIamPolicy(request);
       }
       
      Parameters:
      request - The request object containing all of the parameters for the API call.
      Throws:
      ApiException - if the remote call fails
    • setIamPolicyCallable

      public final UnaryCallable<SetIamPolicyRequest,Policy> setIamPolicyCallable()
      Sets the access control policy on the specified resource. Replacesany existing policy.

      Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED`errors.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         SetIamPolicyRequest request =
             SetIamPolicyRequest.newBuilder()
                 .setResource(
                     AutoscalingPolicyName.ofProjectRegionAutoscalingPolicyName(
                             "[PROJECT]", "[REGION]", "[AUTOSCALING_POLICY]")
                         .toString())
                 .setPolicy(Policy.newBuilder().build())
                 .setUpdateMask(FieldMask.newBuilder().build())
                 .build();
         ApiFuture<Policy> future = sessionControllerClient.setIamPolicyCallable().futureCall(request);
         // Do something.
         Policy response = future.get();
       }
       
    • getIamPolicy

      public final Policy getIamPolicy(GetIamPolicyRequest request)
      Gets the access control policy for a resource. Returns an empty policyif the resource exists and does not have a policy set.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         GetIamPolicyRequest request =
             GetIamPolicyRequest.newBuilder()
                 .setResource(
                     AutoscalingPolicyName.ofProjectRegionAutoscalingPolicyName(
                             "[PROJECT]", "[REGION]", "[AUTOSCALING_POLICY]")
                         .toString())
                 .setOptions(GetPolicyOptions.newBuilder().build())
                 .build();
         Policy response = sessionControllerClient.getIamPolicy(request);
       }
       
      Parameters:
      request - The request object containing all of the parameters for the API call.
      Throws:
      ApiException - if the remote call fails
    • getIamPolicyCallable

      public final UnaryCallable<GetIamPolicyRequest,Policy> getIamPolicyCallable()
      Gets the access control policy for a resource. Returns an empty policyif the resource exists and does not have a policy set.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         GetIamPolicyRequest request =
             GetIamPolicyRequest.newBuilder()
                 .setResource(
                     AutoscalingPolicyName.ofProjectRegionAutoscalingPolicyName(
                             "[PROJECT]", "[REGION]", "[AUTOSCALING_POLICY]")
                         .toString())
                 .setOptions(GetPolicyOptions.newBuilder().build())
                 .build();
         ApiFuture<Policy> future = sessionControllerClient.getIamPolicyCallable().futureCall(request);
         // Do something.
         Policy response = future.get();
       }
       
    • testIamPermissions

      public final TestIamPermissionsResponse testIamPermissions(TestIamPermissionsRequest request)
      Returns permissions that a caller has on the specified resource. If theresource does not exist, this will return an empty set ofpermissions, not a `NOT_FOUND` error.

      Note: This operation is designed to be used for buildingpermission-aware UIs and command-line tools, not for authorizationchecking. This operation may "fail open" without warning.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         TestIamPermissionsRequest request =
             TestIamPermissionsRequest.newBuilder()
                 .setResource(
                     AutoscalingPolicyName.ofProjectRegionAutoscalingPolicyName(
                             "[PROJECT]", "[REGION]", "[AUTOSCALING_POLICY]")
                         .toString())
                 .addAllPermissions(new ArrayList<String>())
                 .build();
         TestIamPermissionsResponse response = sessionControllerClient.testIamPermissions(request);
       }
       
      Parameters:
      request - The request object containing all of the parameters for the API call.
      Throws:
      ApiException - if the remote call fails
    • testIamPermissionsCallable

      public final UnaryCallable<TestIamPermissionsRequest,TestIamPermissionsResponse> testIamPermissionsCallable()
      Returns permissions that a caller has on the specified resource. If theresource does not exist, this will return an empty set ofpermissions, not a `NOT_FOUND` error.

      Note: This operation is designed to be used for buildingpermission-aware UIs and command-line tools, not for authorizationchecking. This operation may "fail open" without warning.

      Sample 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 (SessionControllerClient sessionControllerClient = SessionControllerClient.create()) {
         TestIamPermissionsRequest request =
             TestIamPermissionsRequest.newBuilder()
                 .setResource(
                     AutoscalingPolicyName.ofProjectRegionAutoscalingPolicyName(
                             "[PROJECT]", "[REGION]", "[AUTOSCALING_POLICY]")
                         .toString())
                 .addAllPermissions(new ArrayList<String>())
                 .build();
         ApiFuture<TestIamPermissionsResponse> future =
             sessionControllerClient.testIamPermissionsCallable().futureCall(request);
         // Do something.
         TestIamPermissionsResponse response = future.get();
       }
       
    • close

      public final void close()
      Specified by:
      close in interface AutoCloseable
    • shutdown

      public void shutdown()
      Specified by:
      shutdown in interface BackgroundResource
    • isShutdown

      public boolean isShutdown()
      Specified by:
      isShutdown in interface BackgroundResource
    • isTerminated

      public boolean isTerminated()
      Specified by:
      isTerminated in interface BackgroundResource
    • shutdownNow

      public void shutdownNow()
      Specified by:
      shutdownNow in interface BackgroundResource
    • awaitTermination

      public boolean awaitTermination(long duration, TimeUnit unit) throws InterruptedException
      Specified by:
      awaitTermination in interface BackgroundResource
      Throws:
      InterruptedException