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

com.oracle.bmc.apigateway.GatewayAsyncClient Maven / Gradle / Ivy

There is a newer version: 3.55.1
Show newest version
/**
 * Copyright (c) 2016, 2023, Oracle and/or its affiliates.  All rights reserved.
 * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
 */
package com.oracle.bmc.apigateway;

import com.oracle.bmc.apigateway.internal.http.*;
import com.oracle.bmc.apigateway.requests.*;
import com.oracle.bmc.apigateway.responses.*;

/**
 * Async client implementation for Gateway service. 
* There are two ways to use async client: * 1. Use AsyncHandler: using AsyncHandler, if the response to the call is an {@link java.io.InputStream}, like * getObject Api in object storage service, developers need to process the stream in AsyncHandler, and not anywhere else, * because the stream will be closed right after the AsyncHandler is invoked.
* 2. Use Java Future: using Java Future, developers need to close the stream after they are done with the Java Future.
* Accessing the result should be done in a mutually exclusive manner, either through the Future or the AsyncHandler, * but not both. If the Future is used, the caller should pass in null as the AsyncHandler. If the AsyncHandler * is used, it is still safe to use the Future to determine whether or not the request was completed via * Future.isDone/isCancelled.
* Please refer to https://github.com/oracle/oci-java-sdk/blob/master/bmc-examples/src/main/java/ResteasyClientWithObjectStorageExample.java */ @javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20190501") public class GatewayAsyncClient implements GatewayAsync { /** * Service instance for Gateway. */ public static final com.oracle.bmc.Service SERVICE = com.oracle.bmc.Services.serviceBuilder() .serviceName("GATEWAY") .serviceEndpointPrefix("") .serviceEndpointTemplate("https://apigateway.{region}.oci.{secondLevelDomain}") .build(); private static final org.slf4j.Logger LOG = org.slf4j.LoggerFactory.getLogger(GatewayAsyncClient.class); private final com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider authenticationDetailsProvider; private final org.glassfish.jersey.apache.connector.ApacheConnectionClosingStrategy apacheConnectionClosingStrategy; private final com.oracle.bmc.http.internal.RestClientFactory restClientFactory; private final com.oracle.bmc.http.signing.RequestSignerFactory defaultRequestSignerFactory; private final java.util.Map< com.oracle.bmc.http.signing.SigningStrategy, com.oracle.bmc.http.signing.RequestSignerFactory> signingStrategyRequestSignerFactories; private final boolean isNonBufferingApacheClient; private final com.oracle.bmc.ClientConfiguration clientConfigurationToUse; /** * Used to synchronize any updates on the `this.client` object. */ private final Object clientUpdate = new Object(); /** * Stores the actual client object used to make the API calls. * Note: This object can get refreshed periodically, hence it's important to keep any updates synchronized. * For any writes to the object, please synchronize on `this.clientUpdate`. */ private volatile com.oracle.bmc.http.internal.RestClient client; /** * Keeps track of the last endpoint that was assigned to the client, which in turn can be used when the client is refreshed. * Note: Always synchronize on `this.clientUpdate` when reading/writing this field. */ private volatile String overrideEndpoint = null; /** * Creates a new service instance using the given authentication provider. * @param authenticationDetailsProvider The authentication details provider, required. */ public GatewayAsyncClient( com.oracle.bmc.auth.BasicAuthenticationDetailsProvider authenticationDetailsProvider) { this(authenticationDetailsProvider, null); } /** * Creates a new service instance using the given authentication provider and client configuration. * @param authenticationDetailsProvider The authentication details provider, required. * @param configuration The client configuration, optional. */ public GatewayAsyncClient( com.oracle.bmc.auth.BasicAuthenticationDetailsProvider authenticationDetailsProvider, com.oracle.bmc.ClientConfiguration configuration) { this(authenticationDetailsProvider, configuration, null); } /** * Creates a new service instance using the given authentication provider and client configuration. Additionally, * a Consumer can be provided that will be invoked whenever a REST Client is created to allow for additional configuration/customization. * @param authenticationDetailsProvider The authentication details provider, required. * @param configuration The client configuration, optional. * @param clientConfigurator ClientConfigurator that will be invoked for additional configuration of a REST client, optional. */ public GatewayAsyncClient( com.oracle.bmc.auth.BasicAuthenticationDetailsProvider authenticationDetailsProvider, com.oracle.bmc.ClientConfiguration configuration, com.oracle.bmc.http.ClientConfigurator clientConfigurator) { this( authenticationDetailsProvider, configuration, clientConfigurator, new com.oracle.bmc.http.signing.internal.DefaultRequestSignerFactory( com.oracle.bmc.http.signing.SigningStrategy.STANDARD)); } /** * Creates a new service instance using the given authentication provider and client configuration. Additionally, * a Consumer can be provided that will be invoked whenever a REST Client is created to allow for additional configuration/customization. *

* This is an advanced constructor for clients that want to take control over how requests are signed. * @param authenticationDetailsProvider The authentication details provider, required. * @param configuration The client configuration, optional. * @param clientConfigurator ClientConfigurator that will be invoked for additional configuration of a REST client, optional. * @param defaultRequestSignerFactory The request signer factory used to create the request signer for this service. */ public GatewayAsyncClient( com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider authenticationDetailsProvider, com.oracle.bmc.ClientConfiguration configuration, com.oracle.bmc.http.ClientConfigurator clientConfigurator, com.oracle.bmc.http.signing.RequestSignerFactory defaultRequestSignerFactory) { this( authenticationDetailsProvider, configuration, clientConfigurator, defaultRequestSignerFactory, new java.util.ArrayList()); } /** * Creates a new service instance using the given authentication provider and client configuration. Additionally, * a Consumer can be provided that will be invoked whenever a REST Client is created to allow for additional configuration/customization. *

* This is an advanced constructor for clients that want to take control over how requests are signed. * @param authenticationDetailsProvider The authentication details provider, required. * @param configuration The client configuration, optional. * @param clientConfigurator ClientConfigurator that will be invoked for additional configuration of a REST client, optional. * @param defaultRequestSignerFactory The request signer factory used to create the request signer for this service. * @param additionalClientConfigurators Additional client configurators to be run after the primary configurator. */ public GatewayAsyncClient( com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider authenticationDetailsProvider, com.oracle.bmc.ClientConfiguration configuration, com.oracle.bmc.http.ClientConfigurator clientConfigurator, com.oracle.bmc.http.signing.RequestSignerFactory defaultRequestSignerFactory, java.util.List additionalClientConfigurators) { this( authenticationDetailsProvider, configuration, clientConfigurator, defaultRequestSignerFactory, additionalClientConfigurators, null); } /** * Creates a new service instance using the given authentication provider and client configuration. Additionally, * a Consumer can be provided that will be invoked whenever a REST Client is created to allow for additional configuration/customization. *

* This is an advanced constructor for clients that want to take control over how requests are signed. * @param authenticationDetailsProvider The authentication details provider, required. * @param configuration The client configuration, optional. * @param clientConfigurator ClientConfigurator that will be invoked for additional configuration of a REST client, optional. * @param defaultRequestSignerFactory The request signer factory used to create the request signer for this service. * @param additionalClientConfigurators Additional client configurators to be run after the primary configurator. * @param endpoint Endpoint, or null to leave unset (note, may be overridden by {@code authenticationDetailsProvider}) */ public GatewayAsyncClient( com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider authenticationDetailsProvider, com.oracle.bmc.ClientConfiguration configuration, com.oracle.bmc.http.ClientConfigurator clientConfigurator, com.oracle.bmc.http.signing.RequestSignerFactory defaultRequestSignerFactory, java.util.List additionalClientConfigurators, String endpoint) { this( authenticationDetailsProvider, configuration, clientConfigurator, defaultRequestSignerFactory, com.oracle.bmc.http.signing.internal.DefaultRequestSignerFactory .createDefaultRequestSignerFactories(), additionalClientConfigurators, endpoint); } /** * Creates a new service instance using the given authentication provider and client configuration. Additionally, * a Consumer can be provided that will be invoked whenever a REST Client is created to allow for additional configuration/customization. *

* This is an advanced constructor for clients that want to take control over how requests are signed. * @param authenticationDetailsProvider The authentication details provider, required. * @param configuration The client configuration, optional. * @param clientConfigurator ClientConfigurator that will be invoked for additional configuration of a REST client, optional. * @param defaultRequestSignerFactory The request signer factory used to create the request signer for this service. * @param signingStrategyRequestSignerFactories The request signer factories for each signing strategy used to create the request signer * @param additionalClientConfigurators Additional client configurators to be run after the primary configurator. * @param endpoint Endpoint, or null to leave unset (note, may be overridden by {@code authenticationDetailsProvider}) */ public GatewayAsyncClient( com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider authenticationDetailsProvider, com.oracle.bmc.ClientConfiguration configuration, com.oracle.bmc.http.ClientConfigurator clientConfigurator, com.oracle.bmc.http.signing.RequestSignerFactory defaultRequestSignerFactory, java.util.Map< com.oracle.bmc.http.signing.SigningStrategy, com.oracle.bmc.http.signing.RequestSignerFactory> signingStrategyRequestSignerFactories, java.util.List additionalClientConfigurators, String endpoint) { this( authenticationDetailsProvider, configuration, clientConfigurator, defaultRequestSignerFactory, signingStrategyRequestSignerFactories, additionalClientConfigurators, endpoint, com.oracle.bmc.http.internal.RestClientFactoryBuilder.builder()); } /** * Creates a new service instance using the given authentication provider and client configuration. Additionally, * a Consumer can be provided that will be invoked whenever a REST Client is created to allow for additional configuration/customization. *

* This is an advanced constructor for clients that want to take control over how requests are signed. * @param authenticationDetailsProvider The authentication details provider, required. * @param configuration The client configuration, optional. * @param clientConfigurator ClientConfigurator that will be invoked for additional configuration of a REST client, optional. * @param defaultRequestSignerFactory The request signer factory used to create the request signer for this service. * @param signingStrategyRequestSignerFactories The request signer factories for each signing strategy used to create the request signer * @param additionalClientConfigurators Additional client configurators to be run after the primary configurator. * @param endpoint Endpoint, or null to leave unset (note, may be overridden by {@code authenticationDetailsProvider}) * @param restClientFactoryBuilder the builder for the {@link com.oracle.bmc.http.internal.RestClientFactory} */ public GatewayAsyncClient( com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider authenticationDetailsProvider, com.oracle.bmc.ClientConfiguration configuration, com.oracle.bmc.http.ClientConfigurator clientConfigurator, com.oracle.bmc.http.signing.RequestSignerFactory defaultRequestSignerFactory, java.util.Map< com.oracle.bmc.http.signing.SigningStrategy, com.oracle.bmc.http.signing.RequestSignerFactory> signingStrategyRequestSignerFactories, java.util.List additionalClientConfigurators, String endpoint, com.oracle.bmc.http.internal.RestClientFactoryBuilder restClientFactoryBuilder) { this.authenticationDetailsProvider = authenticationDetailsProvider; java.util.List authenticationDetailsConfigurators = new java.util.ArrayList<>(); if (this.authenticationDetailsProvider instanceof com.oracle.bmc.auth.ProvidesClientConfigurators) { authenticationDetailsConfigurators.addAll( ((com.oracle.bmc.auth.ProvidesClientConfigurators) this.authenticationDetailsProvider) .getClientConfigurators()); } java.util.List allConfigurators = new java.util.ArrayList<>(additionalClientConfigurators); allConfigurators.addAll(authenticationDetailsConfigurators); this.restClientFactory = restClientFactoryBuilder .clientConfigurator(clientConfigurator) .additionalClientConfigurators(allConfigurators) .build(); this.isNonBufferingApacheClient = com.oracle.bmc.http.ApacheUtils.isNonBufferingClientConfigurator( restClientFactory.getClientConfigurator()); this.apacheConnectionClosingStrategy = com.oracle.bmc.http.ApacheUtils.getApacheConnectionClosingStrategy( restClientFactory.getClientConfigurator()); this.defaultRequestSignerFactory = defaultRequestSignerFactory; this.signingStrategyRequestSignerFactories = signingStrategyRequestSignerFactories; this.clientConfigurationToUse = configuration; this.refreshClient(); if (this.authenticationDetailsProvider instanceof com.oracle.bmc.auth.RegionProvider) { com.oracle.bmc.auth.RegionProvider provider = (com.oracle.bmc.auth.RegionProvider) this.authenticationDetailsProvider; if (provider.getRegion() != null) { this.setRegion(provider.getRegion()); if (endpoint != null) { LOG.info( "Authentication details provider configured for region '{}', but endpoint specifically set to '{}'. Using endpoint setting instead of region.", provider.getRegion(), endpoint); } } } if (endpoint != null) { setEndpoint(endpoint); } } /** * Create a builder for this client. * @return builder */ public static Builder builder() { return new Builder(SERVICE); } /** * Builder class for this client. The "authenticationDetailsProvider" is required and must be passed to the * {@link #build(AbstractAuthenticationDetailsProvider)} method. */ public static class Builder extends com.oracle.bmc.common.RegionalClientBuilder { private Builder(com.oracle.bmc.Service service) { super(service); requestSignerFactory = new com.oracle.bmc.http.signing.internal.DefaultRequestSignerFactory( com.oracle.bmc.http.signing.SigningStrategy.STANDARD); } /** * Build the client. * @param authenticationDetailsProvider authentication details provider * @return the client */ public GatewayAsyncClient build( @javax.annotation.Nonnull com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider authenticationDetailsProvider) { if (authenticationDetailsProvider == null) { throw new NullPointerException( "authenticationDetailsProvider is marked non-null but is null"); } return new GatewayAsyncClient( authenticationDetailsProvider, configuration, clientConfigurator, requestSignerFactory, signingStrategyRequestSignerFactories, additionalClientConfigurators, endpoint); } } com.oracle.bmc.http.internal.RestClient getClient() { return client; } @Override public void refreshClient() { LOG.info("Refreshing client '{}'.", this.client != null ? this.client.getClass() : null); com.oracle.bmc.http.signing.RequestSigner defaultRequestSigner = this.defaultRequestSignerFactory.createRequestSigner( SERVICE, this.authenticationDetailsProvider); java.util.Map< com.oracle.bmc.http.signing.SigningStrategy, com.oracle.bmc.http.signing.RequestSigner> requestSigners = new java.util.HashMap<>(); if (this.authenticationDetailsProvider instanceof com.oracle.bmc.auth.BasicAuthenticationDetailsProvider) { for (com.oracle.bmc.http.signing.SigningStrategy s : com.oracle.bmc.http.signing.SigningStrategy.values()) { requestSigners.put( s, this.signingStrategyRequestSignerFactories .get(s) .createRequestSigner(SERVICE, authenticationDetailsProvider)); } } com.oracle.bmc.http.internal.RestClient refreshedClient = this.restClientFactory.create( defaultRequestSigner, requestSigners, this.clientConfigurationToUse, this.isNonBufferingApacheClient); synchronized (clientUpdate) { if (this.overrideEndpoint != null) { refreshedClient.setEndpoint(this.overrideEndpoint); } this.client = refreshedClient; } LOG.info("Refreshed client '{}'.", this.client != null ? this.client.getClass() : null); } @Override public void setEndpoint(String endpoint) { LOG.info("Setting endpoint to {}", endpoint); synchronized (clientUpdate) { this.overrideEndpoint = endpoint; client.setEndpoint(endpoint); } } @Override public String getEndpoint() { String endpoint = null; java.net.URI uri = client.getBaseTarget().getUri(); if (uri != null) { endpoint = uri.toString(); } return endpoint; } @Override public void setRegion(com.oracle.bmc.Region region) { java.util.Optional endpoint = com.oracle.bmc.internal.GuavaUtils.adaptFromGuava(region.getEndpoint(SERVICE)); if (endpoint.isPresent()) { setEndpoint(endpoint.get()); } else { throw new IllegalArgumentException( "Endpoint for " + SERVICE + " is not known in region " + region); } } @Override public void setRegion(String regionId) { regionId = regionId.toLowerCase(java.util.Locale.ENGLISH); try { com.oracle.bmc.Region region = com.oracle.bmc.Region.fromRegionId(regionId); setRegion(region); } catch (IllegalArgumentException e) { LOG.info("Unknown regionId '{}', falling back to default endpoint format", regionId); String endpoint = com.oracle.bmc.Region.formatDefaultRegionEndpoint(SERVICE, regionId); setEndpoint(endpoint); } } @Override public void close() { client.close(); } @Override public java.util.concurrent.Future changeGatewayCompartment( ChangeGatewayCompartmentRequest request, final com.oracle.bmc.responses.AsyncHandler< ChangeGatewayCompartmentRequest, ChangeGatewayCompartmentResponse> handler) { LOG.trace("Called async changeGatewayCompartment"); final ChangeGatewayCompartmentRequest interceptedRequest = ChangeGatewayCompartmentConverter.interceptRequest(request); final com.oracle.bmc.http.internal.WrappedInvocationBuilder ib = ChangeGatewayCompartmentConverter.fromRequest(client, interceptedRequest); com.oracle.bmc.http.internal.RetryTokenUtils.addRetryToken(ib); com.oracle.bmc.ServiceDetails serviceDetails = new com.oracle.bmc.ServiceDetails( "Gateway", "ChangeGatewayCompartment", ib.getRequestUri().toString(), "https://docs.oracle.com/iaas/api/#/en/api-gateway/20190501/Gateway/ChangeGatewayCompartment"); final java.util.function.Function< javax.ws.rs.core.Response, ChangeGatewayCompartmentResponse> transformer = ChangeGatewayCompartmentConverter.fromResponse( java.util.Optional.of(serviceDetails)); com.oracle.bmc.responses.AsyncHandler< ChangeGatewayCompartmentRequest, ChangeGatewayCompartmentResponse> handlerToUse = handler; java.util.function.Function< com.oracle.bmc.responses.AsyncHandler< ChangeGatewayCompartmentRequest, ChangeGatewayCompartmentResponse>, java.util.concurrent.Future> futureSupplier = client.postFutureSupplier( interceptedRequest, interceptedRequest.getChangeGatewayCompartmentDetails(), ib, transformer); if (this.authenticationDetailsProvider instanceof com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) { return new com.oracle.bmc.util.internal.RefreshAuthTokenWrapper< ChangeGatewayCompartmentRequest, ChangeGatewayCompartmentResponse>( (com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) this.authenticationDetailsProvider, handlerToUse, futureSupplier) { @Override protected void beforeRetryAction() {} }; } else { return futureSupplier.apply(handlerToUse); } } @Override public java.util.concurrent.Future createGateway( CreateGatewayRequest request, final com.oracle.bmc.responses.AsyncHandler handler) { LOG.trace("Called async createGateway"); final CreateGatewayRequest interceptedRequest = CreateGatewayConverter.interceptRequest(request); final com.oracle.bmc.http.internal.WrappedInvocationBuilder ib = CreateGatewayConverter.fromRequest(client, interceptedRequest); com.oracle.bmc.http.internal.RetryTokenUtils.addRetryToken(ib); com.oracle.bmc.ServiceDetails serviceDetails = new com.oracle.bmc.ServiceDetails( "Gateway", "CreateGateway", ib.getRequestUri().toString(), ""); final java.util.function.Function transformer = CreateGatewayConverter.fromResponse(java.util.Optional.of(serviceDetails)); com.oracle.bmc.responses.AsyncHandler handlerToUse = handler; java.util.function.Function< com.oracle.bmc.responses.AsyncHandler< CreateGatewayRequest, CreateGatewayResponse>, java.util.concurrent.Future> futureSupplier = client.postFutureSupplier( interceptedRequest, interceptedRequest.getCreateGatewayDetails(), ib, transformer); if (this.authenticationDetailsProvider instanceof com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) { return new com.oracle.bmc.util.internal.RefreshAuthTokenWrapper< CreateGatewayRequest, CreateGatewayResponse>( (com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) this.authenticationDetailsProvider, handlerToUse, futureSupplier) { @Override protected void beforeRetryAction() {} }; } else { return futureSupplier.apply(handlerToUse); } } @Override public java.util.concurrent.Future deleteGateway( DeleteGatewayRequest request, final com.oracle.bmc.responses.AsyncHandler handler) { LOG.trace("Called async deleteGateway"); final DeleteGatewayRequest interceptedRequest = DeleteGatewayConverter.interceptRequest(request); final com.oracle.bmc.http.internal.WrappedInvocationBuilder ib = DeleteGatewayConverter.fromRequest(client, interceptedRequest); com.oracle.bmc.ServiceDetails serviceDetails = new com.oracle.bmc.ServiceDetails( "Gateway", "DeleteGateway", ib.getRequestUri().toString(), "https://docs.oracle.com/iaas/api/#/en/api-gateway/20190501/Gateway/DeleteGateway"); final java.util.function.Function transformer = DeleteGatewayConverter.fromResponse(java.util.Optional.of(serviceDetails)); com.oracle.bmc.responses.AsyncHandler handlerToUse = handler; java.util.function.Function< com.oracle.bmc.responses.AsyncHandler< DeleteGatewayRequest, DeleteGatewayResponse>, java.util.concurrent.Future> futureSupplier = client.deleteFutureSupplier(interceptedRequest, ib, transformer); if (this.authenticationDetailsProvider instanceof com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) { return new com.oracle.bmc.util.internal.RefreshAuthTokenWrapper< DeleteGatewayRequest, DeleteGatewayResponse>( (com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) this.authenticationDetailsProvider, handlerToUse, futureSupplier) { @Override protected void beforeRetryAction() {} }; } else { return futureSupplier.apply(handlerToUse); } } @Override public java.util.concurrent.Future getGateway( GetGatewayRequest request, final com.oracle.bmc.responses.AsyncHandler handler) { LOG.trace("Called async getGateway"); final GetGatewayRequest interceptedRequest = GetGatewayConverter.interceptRequest(request); final com.oracle.bmc.http.internal.WrappedInvocationBuilder ib = GetGatewayConverter.fromRequest(client, interceptedRequest); com.oracle.bmc.ServiceDetails serviceDetails = new com.oracle.bmc.ServiceDetails( "Gateway", "GetGateway", ib.getRequestUri().toString(), "https://docs.oracle.com/iaas/api/#/en/api-gateway/20190501/Gateway/GetGateway"); final java.util.function.Function transformer = GetGatewayConverter.fromResponse(java.util.Optional.of(serviceDetails)); com.oracle.bmc.responses.AsyncHandler handlerToUse = handler; java.util.function.Function< com.oracle.bmc.responses.AsyncHandler< GetGatewayRequest, GetGatewayResponse>, java.util.concurrent.Future> futureSupplier = client.getFutureSupplier(interceptedRequest, ib, transformer); if (this.authenticationDetailsProvider instanceof com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) { return new com.oracle.bmc.util.internal.RefreshAuthTokenWrapper< GetGatewayRequest, GetGatewayResponse>( (com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) this.authenticationDetailsProvider, handlerToUse, futureSupplier) { @Override protected void beforeRetryAction() {} }; } else { return futureSupplier.apply(handlerToUse); } } @Override public java.util.concurrent.Future listGateways( ListGatewaysRequest request, final com.oracle.bmc.responses.AsyncHandler handler) { LOG.trace("Called async listGateways"); final ListGatewaysRequest interceptedRequest = ListGatewaysConverter.interceptRequest(request); final com.oracle.bmc.http.internal.WrappedInvocationBuilder ib = ListGatewaysConverter.fromRequest(client, interceptedRequest); com.oracle.bmc.ServiceDetails serviceDetails = new com.oracle.bmc.ServiceDetails( "Gateway", "ListGateways", ib.getRequestUri().toString(), "https://docs.oracle.com/iaas/api/#/en/api-gateway/20190501/GatewaySummary/ListGateways"); final java.util.function.Function transformer = ListGatewaysConverter.fromResponse(java.util.Optional.of(serviceDetails)); com.oracle.bmc.responses.AsyncHandler handlerToUse = handler; java.util.function.Function< com.oracle.bmc.responses.AsyncHandler< ListGatewaysRequest, ListGatewaysResponse>, java.util.concurrent.Future> futureSupplier = client.getFutureSupplier(interceptedRequest, ib, transformer); if (this.authenticationDetailsProvider instanceof com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) { return new com.oracle.bmc.util.internal.RefreshAuthTokenWrapper< ListGatewaysRequest, ListGatewaysResponse>( (com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) this.authenticationDetailsProvider, handlerToUse, futureSupplier) { @Override protected void beforeRetryAction() {} }; } else { return futureSupplier.apply(handlerToUse); } } @Override public java.util.concurrent.Future updateGateway( UpdateGatewayRequest request, final com.oracle.bmc.responses.AsyncHandler handler) { LOG.trace("Called async updateGateway"); final UpdateGatewayRequest interceptedRequest = UpdateGatewayConverter.interceptRequest(request); final com.oracle.bmc.http.internal.WrappedInvocationBuilder ib = UpdateGatewayConverter.fromRequest(client, interceptedRequest); com.oracle.bmc.ServiceDetails serviceDetails = new com.oracle.bmc.ServiceDetails( "Gateway", "UpdateGateway", ib.getRequestUri().toString(), "https://docs.oracle.com/iaas/api/#/en/api-gateway/20190501/Gateway/UpdateGateway"); final java.util.function.Function transformer = UpdateGatewayConverter.fromResponse(java.util.Optional.of(serviceDetails)); com.oracle.bmc.responses.AsyncHandler handlerToUse = handler; java.util.function.Function< com.oracle.bmc.responses.AsyncHandler< UpdateGatewayRequest, UpdateGatewayResponse>, java.util.concurrent.Future> futureSupplier = client.putFutureSupplier( interceptedRequest, interceptedRequest.getUpdateGatewayDetails(), ib, transformer); if (this.authenticationDetailsProvider instanceof com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) { return new com.oracle.bmc.util.internal.RefreshAuthTokenWrapper< UpdateGatewayRequest, UpdateGatewayResponse>( (com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) this.authenticationDetailsProvider, handlerToUse, futureSupplier) { @Override protected void beforeRetryAction() {} }; } else { return futureSupplier.apply(handlerToUse); } } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy