Class WaasAsyncClient
- java.lang.Object
-
- com.oracle.bmc.http.internal.BaseAsyncClient
-
- com.oracle.bmc.waas.WaasAsyncClient
-
- All Implemented Interfaces:
WaasAsync,AutoCloseable
@Generated(value="OracleSDKGenerator", comments="API Version: 20181116") public class WaasAsyncClient extends BaseAsyncClient implements WaasAsyncAsync client implementation for Waas service.
There are two ways to use async client: 1. Use AsyncHandler: using AsyncHandler, if the response to the call is anInputStream, 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
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classWaasAsyncClient.BuilderBuilder class for this client.
-
Field Summary
Fields Modifier and Type Field Description StringclientCommonLibraryVersionCompatible SDK version, provided by the codegen.Optional<String>minimumClientCommonLibraryVersionFromClientMinimum compatible SDK version, maybe provided by the codegen.static ServiceSERVICEService instance for Waas.
-
Constructor Summary
Constructors Constructor Description WaasAsyncClient(AbstractAuthenticationDetailsProvider authenticationDetailsProvider, ClientConfiguration configuration, ClientConfigurator clientConfigurator, RequestSignerFactory defaultRequestSignerFactory)Deprecated.Use thebuilderinstead.WaasAsyncClient(AbstractAuthenticationDetailsProvider authenticationDetailsProvider, ClientConfiguration configuration, ClientConfigurator clientConfigurator, RequestSignerFactory defaultRequestSignerFactory, List<ClientConfigurator> additionalClientConfigurators)Deprecated.Use thebuilderinstead.WaasAsyncClient(AbstractAuthenticationDetailsProvider authenticationDetailsProvider, ClientConfiguration configuration, ClientConfigurator clientConfigurator, RequestSignerFactory defaultRequestSignerFactory, List<ClientConfigurator> additionalClientConfigurators, String endpoint)Deprecated.Use thebuilderinstead.WaasAsyncClient(AbstractAuthenticationDetailsProvider authenticationDetailsProvider, ClientConfiguration configuration, ClientConfigurator clientConfigurator, RequestSignerFactory defaultRequestSignerFactory, Map<SigningStrategy,RequestSignerFactory> signingStrategyRequestSignerFactories, List<ClientConfigurator> additionalClientConfigurators, String endpoint)Deprecated.Use thebuilderinstead.WaasAsyncClient(BasicAuthenticationDetailsProvider authenticationDetailsProvider)Deprecated.Use thebuilderinstead.WaasAsyncClient(BasicAuthenticationDetailsProvider authenticationDetailsProvider, ClientConfiguration configuration)Deprecated.Use thebuilderinstead.WaasAsyncClient(BasicAuthenticationDetailsProvider authenticationDetailsProvider, ClientConfiguration configuration, ClientConfigurator clientConfigurator)Deprecated.Use thebuilderinstead.
-
Method Summary
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface java.lang.AutoCloseable
close
-
Methods inherited from interface com.oracle.bmc.waas.WaasAsync
getEndpoint, refreshClient, setEndpoint, useRealmSpecificEndpointTemplate
-
-
-
-
Constructor Detail
-
WaasAsyncClient
@Deprecated public WaasAsyncClient(BasicAuthenticationDetailsProvider authenticationDetailsProvider)
Deprecated.Use thebuilderinstead.Create a new client instance.- Parameters:
authenticationDetailsProvider- The authentication details (seeWaasAsyncClient.Builder.build(com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider))
-
WaasAsyncClient
@Deprecated public WaasAsyncClient(BasicAuthenticationDetailsProvider authenticationDetailsProvider, ClientConfiguration configuration)
Deprecated.Use thebuilderinstead.Create a new client instance.- Parameters:
authenticationDetailsProvider- The authentication details (seeWaasAsyncClient.Builder.build(com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider))configuration-ClientBuilderBase.configuration
-
WaasAsyncClient
@Deprecated public WaasAsyncClient(BasicAuthenticationDetailsProvider authenticationDetailsProvider, ClientConfiguration configuration, ClientConfigurator clientConfigurator)
Deprecated.Use thebuilderinstead.Create a new client instance.- Parameters:
authenticationDetailsProvider- The authentication details (seeWaasAsyncClient.Builder.build(com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider))configuration-ClientBuilderBase.configurationclientConfigurator-ClientBuilderBase.clientConfigurator(com.oracle.bmc.http.ClientConfigurator)
-
WaasAsyncClient
@Deprecated public WaasAsyncClient(AbstractAuthenticationDetailsProvider authenticationDetailsProvider, ClientConfiguration configuration, ClientConfigurator clientConfigurator, RequestSignerFactory defaultRequestSignerFactory)
Deprecated.Use thebuilderinstead.Create a new client instance.- Parameters:
authenticationDetailsProvider- The authentication details (seeWaasAsyncClient.Builder.build(com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider))configuration-ClientBuilderBase.configurationclientConfigurator-ClientBuilderBase.clientConfigurator(com.oracle.bmc.http.ClientConfigurator)defaultRequestSignerFactory-ClientBuilderBase.requestSignerFactory
-
WaasAsyncClient
@Deprecated public WaasAsyncClient(AbstractAuthenticationDetailsProvider authenticationDetailsProvider, ClientConfiguration configuration, ClientConfigurator clientConfigurator, RequestSignerFactory defaultRequestSignerFactory, List<ClientConfigurator> additionalClientConfigurators)
Deprecated.Use thebuilderinstead.Create a new client instance.- Parameters:
authenticationDetailsProvider- The authentication details (seeWaasAsyncClient.Builder.build(com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider))configuration-ClientBuilderBase.configurationclientConfigurator-ClientBuilderBase.clientConfigurator(com.oracle.bmc.http.ClientConfigurator)defaultRequestSignerFactory-ClientBuilderBase.requestSignerFactoryadditionalClientConfigurators-ClientBuilderBase.additionalClientConfigurators
-
WaasAsyncClient
@Deprecated public WaasAsyncClient(AbstractAuthenticationDetailsProvider authenticationDetailsProvider, ClientConfiguration configuration, ClientConfigurator clientConfigurator, RequestSignerFactory defaultRequestSignerFactory, List<ClientConfigurator> additionalClientConfigurators, String endpoint)
Deprecated.Use thebuilderinstead.Create a new client instance.- Parameters:
authenticationDetailsProvider- The authentication details (seeWaasAsyncClient.Builder.build(com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider))configuration-ClientBuilderBase.configurationclientConfigurator-ClientBuilderBase.clientConfigurator(com.oracle.bmc.http.ClientConfigurator)defaultRequestSignerFactory-ClientBuilderBase.requestSignerFactoryadditionalClientConfigurators-ClientBuilderBase.additionalClientConfiguratorsendpoint-ClientBuilderBase.endpoint(java.lang.String)
-
WaasAsyncClient
@Deprecated public WaasAsyncClient(AbstractAuthenticationDetailsProvider authenticationDetailsProvider, ClientConfiguration configuration, ClientConfigurator clientConfigurator, RequestSignerFactory defaultRequestSignerFactory, Map<SigningStrategy,RequestSignerFactory> signingStrategyRequestSignerFactories, List<ClientConfigurator> additionalClientConfigurators, String endpoint)
Deprecated.Use thebuilderinstead.Create a new client instance.- Parameters:
authenticationDetailsProvider- The authentication details (seeWaasAsyncClient.Builder.build(com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider))configuration-ClientBuilderBase.configurationclientConfigurator-ClientBuilderBase.clientConfigurator(com.oracle.bmc.http.ClientConfigurator)defaultRequestSignerFactory-ClientBuilderBase.requestSignerFactoryadditionalClientConfigurators-ClientBuilderBase.additionalClientConfiguratorsendpoint-ClientBuilderBase.endpoint(java.lang.String)signingStrategyRequestSignerFactories-ClientBuilderBase.signingStrategyRequestSignerFactories
-
-
Method Detail
-
builder
public static WaasAsyncClient.Builder builder()
Create a builder for this client.- Returns:
- builder
-
setRegion
public void setRegion(Region region)
Description copied from interface:WaasAsyncSets the region to call (ex, Region.US_PHOENIX_1).Note, this will call
setEndpointafter resolving the endpoint. If the service is not available in this region, however, an IllegalArgumentException will be raised.
-
setRegion
public void setRegion(String regionId)
Description copied from interface:WaasAsyncSets the region to call (ex, ‘us-phoenix-1’).Note, this will first try to map the region ID to a known Region and call
setRegion.If no known Region could be determined, it will create an endpoint based on the default endpoint format (
Region.formatDefaultRegionEndpoint(Service, String)and then callsetEndpoint.
-
acceptRecommendations
public Future<AcceptRecommendationsResponse> acceptRecommendations(AcceptRecommendationsRequest request, AsyncHandler<AcceptRecommendationsRequest,AcceptRecommendationsResponse> handler)
Description copied from interface:WaasAsyncAccepts a list of recommended Web Application Firewall protection rules.Web Application Firewall protection rule recommendations are sets of rules generated by observed traffic patterns through the Web Application Firewall and are meant to optimize the Web Application Firewall’s security profile. Only the rules specified in the request body will be updated; all other rules will remain unchanged.
Use the `GET /waasPolicies/{waasPolicyId}/wafConfig/recommendations` method to view a list of recommended Web Application Firewall protection rules. For more information, see [WAF Protection Rules](https://docs.oracle.com/iaas/Content/WAF/Tasks/wafprotectionrules.htm).
- Specified by:
acceptRecommendationsin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
cancelWorkRequest
public Future<CancelWorkRequestResponse> cancelWorkRequest(CancelWorkRequestRequest request, AsyncHandler<CancelWorkRequestRequest,CancelWorkRequestResponse> handler)
Description copied from interface:WaasAsyncCancels a specified work request.- Specified by:
cancelWorkRequestin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
changeAddressListCompartment
public Future<ChangeAddressListCompartmentResponse> changeAddressListCompartment(ChangeAddressListCompartmentRequest request, AsyncHandler<ChangeAddressListCompartmentRequest,ChangeAddressListCompartmentResponse> handler)
Description copied from interface:WaasAsyncMoves address list into a different compartment.When provided, If-Match is checked against ETag values of the address list. For information about moving resources between compartments, see Moving Resources to a Different Compartment.
- Specified by:
changeAddressListCompartmentin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
changeCertificateCompartment
public Future<ChangeCertificateCompartmentResponse> changeCertificateCompartment(ChangeCertificateCompartmentRequest request, AsyncHandler<ChangeCertificateCompartmentRequest,ChangeCertificateCompartmentResponse> handler)
Description copied from interface:WaasAsyncMoves certificate into a different compartment.When provided, If-Match is checked against ETag values of the certificate. For information about moving resources between compartments, see Moving Resources to a Different Compartment.
- Specified by:
changeCertificateCompartmentin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
changeCustomProtectionRuleCompartment
public Future<ChangeCustomProtectionRuleCompartmentResponse> changeCustomProtectionRuleCompartment(ChangeCustomProtectionRuleCompartmentRequest request, AsyncHandler<ChangeCustomProtectionRuleCompartmentRequest,ChangeCustomProtectionRuleCompartmentResponse> handler)
Description copied from interface:WaasAsyncMoves a custom protection rule into a different compartment within the same tenancy.When provided, If-Match is checked against ETag values of the custom protection rule. For information about moving resources between compartments, see Moving Resources to a Different Compartment.
- Specified by:
changeCustomProtectionRuleCompartmentin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
changeWaasPolicyCompartment
public Future<ChangeWaasPolicyCompartmentResponse> changeWaasPolicyCompartment(ChangeWaasPolicyCompartmentRequest request, AsyncHandler<ChangeWaasPolicyCompartmentRequest,ChangeWaasPolicyCompartmentResponse> handler)
Description copied from interface:WaasAsyncMoves WAAS policy into a different compartment.When provided, If-Match is checked against ETag values of the WAAS policy. For information about moving resources between compartments, see Moving Resources to a Different Compartment.
- Specified by:
changeWaasPolicyCompartmentin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
createAddressList
public Future<CreateAddressListResponse> createAddressList(CreateAddressListRequest request, AsyncHandler<CreateAddressListRequest,CreateAddressListResponse> handler)
Description copied from interface:WaasAsyncCreates an address list in a set compartment and allows it to be used in a WAAS policy and referenced by access rules.Addresses can be IP addresses and CIDR notations.
- Specified by:
createAddressListin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
createCertificate
public Future<CreateCertificateResponse> createCertificate(CreateCertificateRequest request, AsyncHandler<CreateCertificateRequest,CreateCertificateResponse> handler)
Description copied from interface:WaasAsyncAllows an SSL certificate to be added to a WAAS policy.The Web Application Firewall terminates SSL connections to inspect requests in runtime, and then re-encrypts requests before sending them to the origin for fulfillment.
For more information, see [WAF Settings](https://docs.oracle.com/iaas/Content/WAF/Tasks/wafsettings.htm).
- Specified by:
createCertificatein interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
createCustomProtectionRule
public Future<CreateCustomProtectionRuleResponse> createCustomProtectionRule(CreateCustomProtectionRuleRequest request, AsyncHandler<CreateCustomProtectionRuleRequest,CreateCustomProtectionRuleResponse> handler)
Description copied from interface:WaasAsyncCreates a new custom protection rule in the specified compartment.Custom protection rules allow you to create rules in addition to the rulesets provided by the Web Application Firewall service, including rules from [ModSecurity](https://modsecurity.org/). The syntax for custom rules is based on the ModSecurity syntax. For more information about custom protection rules, see [Custom Protection Rules](https://docs.oracle.com/iaas/Content/WAF/Tasks/customprotectionrules.htm).
- Specified by:
createCustomProtectionRulein interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
createWaasPolicy
public Future<CreateWaasPolicyResponse> createWaasPolicy(CreateWaasPolicyRequest request, AsyncHandler<CreateWaasPolicyRequest,CreateWaasPolicyResponse> handler)
Description copied from interface:WaasAsyncCreates a new Web Application Acceleration and Security (WAAS) policy in the specified compartment.A WAAS policy must be established before creating Web Application Firewall (WAF) rules. To use WAF rules, your web application’s origin servers must defined in the
WaasPolicyschema.A domain name must be specified when creating a WAAS policy. The domain name should be different from the origins specified in your `WaasPolicy`. Once domain name is entered and stored, it is unchangeable.
Use the record data returned in the `cname` field of the `WaasPolicy` object to create a CNAME record in your DNS configuration that will direct your domain's traffic through the WAF.
For the purposes of access control, you must provide the OCID of the compartment where you want the service to reside. For information about access control and compartments, see [Overview of the IAM Service](https://docs.oracle.com/iaas/Content/Identity/Concepts/overview.htm).
You must specify a display name and domain for the WAAS policy. The display name does not have to be unique and can be changed. The domain name should be different from every origin specified in `WaasPolicy`.
All Oracle Cloud Infrastructure resources, including WAAS policies, receive a unique, Oracle-assigned ID called an Oracle Cloud Identifier (OCID). When a resource is created, you can find its OCID in the response. You can also retrieve a resource's OCID by using a list API operation for that resource type, or by viewing the resource in the Console. Fore more information, see [Resource Identifiers](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm).
*Note:** After sending the POST request, the new object's state will temporarily be `CREATING`. Ensure that the resource's state has changed to `ACTIVE` before use.
- Specified by:
createWaasPolicyin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
deleteAddressList
public Future<DeleteAddressListResponse> deleteAddressList(DeleteAddressListRequest request, AsyncHandler<DeleteAddressListRequest,DeleteAddressListResponse> handler)
Description copied from interface:WaasAsyncDeletes the address list from the compartment if it is not used.- Specified by:
deleteAddressListin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
deleteCertificate
public Future<DeleteCertificateResponse> deleteCertificate(DeleteCertificateRequest request, AsyncHandler<DeleteCertificateRequest,DeleteCertificateResponse> handler)
Description copied from interface:WaasAsyncDeletes an SSL certificate from the WAAS service.- Specified by:
deleteCertificatein interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
deleteCustomProtectionRule
public Future<DeleteCustomProtectionRuleResponse> deleteCustomProtectionRule(DeleteCustomProtectionRuleRequest request, AsyncHandler<DeleteCustomProtectionRuleRequest,DeleteCustomProtectionRuleResponse> handler)
Description copied from interface:WaasAsyncDeletes a Custom Protection rule.- Specified by:
deleteCustomProtectionRulein interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
deleteWaasPolicy
public Future<DeleteWaasPolicyResponse> deleteWaasPolicy(DeleteWaasPolicyRequest request, AsyncHandler<DeleteWaasPolicyRequest,DeleteWaasPolicyResponse> handler)
Description copied from interface:WaasAsyncDeletes a policy.- Specified by:
deleteWaasPolicyin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
getAddressList
public Future<GetAddressListResponse> getAddressList(GetAddressListRequest request, AsyncHandler<GetAddressListRequest,GetAddressListResponse> handler)
Description copied from interface:WaasAsyncGets the details of an address list.- Specified by:
getAddressListin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
getCertificate
public Future<GetCertificateResponse> getCertificate(GetCertificateRequest request, AsyncHandler<GetCertificateRequest,GetCertificateResponse> handler)
Description copied from interface:WaasAsyncGets the details of an SSL certificate.- Specified by:
getCertificatein interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
getCustomProtectionRule
public Future<GetCustomProtectionRuleResponse> getCustomProtectionRule(GetCustomProtectionRuleRequest request, AsyncHandler<GetCustomProtectionRuleRequest,GetCustomProtectionRuleResponse> handler)
Description copied from interface:WaasAsyncGets the details of a custom protection rule.- Specified by:
getCustomProtectionRulein interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
getDeviceFingerprintChallenge
public Future<GetDeviceFingerprintChallengeResponse> getDeviceFingerprintChallenge(GetDeviceFingerprintChallengeRequest request, AsyncHandler<GetDeviceFingerprintChallengeRequest,GetDeviceFingerprintChallengeResponse> handler)
Description copied from interface:WaasAsyncGets the device fingerprint challenge settings in the Web Application Firewall configuration for a WAAS policy.- Specified by:
getDeviceFingerprintChallengein interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
getHumanInteractionChallenge
public Future<GetHumanInteractionChallengeResponse> getHumanInteractionChallenge(GetHumanInteractionChallengeRequest request, AsyncHandler<GetHumanInteractionChallengeRequest,GetHumanInteractionChallengeResponse> handler)
Description copied from interface:WaasAsyncGets the human interaction challenge settings in the Web Application Firewall configuration for a WAAS policy.- Specified by:
getHumanInteractionChallengein interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
getJsChallenge
public Future<GetJsChallengeResponse> getJsChallenge(GetJsChallengeRequest request, AsyncHandler<GetJsChallengeRequest,GetJsChallengeResponse> handler)
Description copied from interface:WaasAsyncGets the JavaScript challenge settings in the Web Application Firewall configuration for a WAAS policy.- Specified by:
getJsChallengein interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
getPolicyConfig
public Future<GetPolicyConfigResponse> getPolicyConfig(GetPolicyConfigRequest request, AsyncHandler<GetPolicyConfigRequest,GetPolicyConfigResponse> handler)
Description copied from interface:WaasAsyncGets the configuration of a WAAS policy.- Specified by:
getPolicyConfigin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
getProtectionRule
public Future<GetProtectionRuleResponse> getProtectionRule(GetProtectionRuleRequest request, AsyncHandler<GetProtectionRuleRequest,GetProtectionRuleResponse> handler)
Description copied from interface:WaasAsyncGets the details of a protection rule in the Web Application Firewall configuration for a WAAS policy.- Specified by:
getProtectionRulein interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
getProtectionSettings
public Future<GetProtectionSettingsResponse> getProtectionSettings(GetProtectionSettingsRequest request, AsyncHandler<GetProtectionSettingsRequest,GetProtectionSettingsResponse> handler)
Description copied from interface:WaasAsyncGets the protection settings in the Web Application Firewall configuration for a WAAS policy.- Specified by:
getProtectionSettingsin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
getWaasPolicy
public Future<GetWaasPolicyResponse> getWaasPolicy(GetWaasPolicyRequest request, AsyncHandler<GetWaasPolicyRequest,GetWaasPolicyResponse> handler)
Description copied from interface:WaasAsyncGets the details of a WAAS policy.- Specified by:
getWaasPolicyin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
getWafAddressRateLimiting
public Future<GetWafAddressRateLimitingResponse> getWafAddressRateLimiting(GetWafAddressRateLimitingRequest request, AsyncHandler<GetWafAddressRateLimitingRequest,GetWafAddressRateLimitingResponse> handler)
Description copied from interface:WaasAsyncGets the address rate limiting settings of the Web Application Firewall configuration for a WAAS policy.- Specified by:
getWafAddressRateLimitingin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
getWafConfig
public Future<GetWafConfigResponse> getWafConfig(GetWafConfigRequest request, AsyncHandler<GetWafConfigRequest,GetWafConfigResponse> handler)
Description copied from interface:WaasAsyncGets the Web Application Firewall configuration details for a WAAS policy.- Specified by:
getWafConfigin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
getWorkRequest
public Future<GetWorkRequestResponse> getWorkRequest(GetWorkRequestRequest request, AsyncHandler<GetWorkRequestRequest,GetWorkRequestResponse> handler)
Description copied from interface:WaasAsyncGets the details of a specified work request.- Specified by:
getWorkRequestin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
listAccessRules
public Future<ListAccessRulesResponse> listAccessRules(ListAccessRulesRequest request, AsyncHandler<ListAccessRulesRequest,ListAccessRulesResponse> handler)
Description copied from interface:WaasAsyncGets the currently configured access rules for the Web Application Firewall configuration of a specified WAAS policy.The order of the access rules is important. The rules will be checked in the order they are specified and the first matching rule will be used.
- Specified by:
listAccessRulesin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
listAddressLists
public Future<ListAddressListsResponse> listAddressLists(ListAddressListsRequest request, AsyncHandler<ListAddressListsRequest,ListAddressListsResponse> handler)
Description copied from interface:WaasAsyncGets a list of address lists that can be used in a WAAS policy.- Specified by:
listAddressListsin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
listCachingRules
public Future<ListCachingRulesResponse> listCachingRules(ListCachingRulesRequest request, AsyncHandler<ListCachingRulesRequest,ListCachingRulesResponse> handler)
Description copied from interface:WaasAsyncGets the currently configured caching rules for the Web Application Firewall configuration of a specified WAAS policy.The rules are processed in the order they are specified in and the first matching rule will be used when processing a request.
- Specified by:
listCachingRulesin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
listCaptchas
public Future<ListCaptchasResponse> listCaptchas(ListCaptchasRequest request, AsyncHandler<ListCaptchasRequest,ListCaptchasResponse> handler)
Description copied from interface:WaasAsyncGets the list of currently configured CAPTCHA challenges in the Web Application Firewall configuration of a WAAS policy.The order of the CAPTCHA challenges is important. The URL for each CAPTCHA will be checked in the order they are created.
- Specified by:
listCaptchasin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
listCertificates
public Future<ListCertificatesResponse> listCertificates(ListCertificatesRequest request, AsyncHandler<ListCertificatesRequest,ListCertificatesResponse> handler)
Description copied from interface:WaasAsyncGets a list of SSL certificates that can be used in a WAAS policy.- Specified by:
listCertificatesin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
listCustomProtectionRules
public Future<ListCustomProtectionRulesResponse> listCustomProtectionRules(ListCustomProtectionRulesRequest request, AsyncHandler<ListCustomProtectionRulesRequest,ListCustomProtectionRulesResponse> handler)
Description copied from interface:WaasAsyncGets a list of custom protection rules for the specified Web Application Firewall.- Specified by:
listCustomProtectionRulesin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
listEdgeSubnets
public Future<ListEdgeSubnetsResponse> listEdgeSubnets(ListEdgeSubnetsRequest request, AsyncHandler<ListEdgeSubnetsRequest,ListEdgeSubnetsResponse> handler)
Description copied from interface:WaasAsyncReturn the list of the tenant’s edge node subnets.Use these CIDR blocks to restrict incoming traffic to your origin. These subnets are owned by OCI and forward traffic to customer origins. They are not associated with specific regions or compartments.
- Specified by:
listEdgeSubnetsin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
listGoodBots
public Future<ListGoodBotsResponse> listGoodBots(ListGoodBotsRequest request, AsyncHandler<ListGoodBotsRequest,ListGoodBotsResponse> handler)
Description copied from interface:WaasAsyncGets the list of good bots defined in the Web Application Firewall configuration for a WAAS policy.The list is sorted by `key`, in ascending order.
- Specified by:
listGoodBotsin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
listProtectionRules
public Future<ListProtectionRulesResponse> listProtectionRules(ListProtectionRulesRequest request, AsyncHandler<ListProtectionRulesRequest,ListProtectionRulesResponse> handler)
Description copied from interface:WaasAsyncGets the list of available protection rules for a WAAS policy.Use the
GetWafConfigoperation to view a list of currently configured protection rules for the Web Application Firewall, or use theListRecommendationsoperation to get a list of recommended protection rules for the Web Application Firewall. The list is sorted bykey, in ascending order.- Specified by:
listProtectionRulesin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
listRecommendations
public Future<ListRecommendationsResponse> listRecommendations(ListRecommendationsRequest request, AsyncHandler<ListRecommendationsRequest,ListRecommendationsResponse> handler)
Description copied from interface:WaasAsyncGets the list of recommended Web Application Firewall protection rules.Use the `POST /waasPolicies/{waasPolicyId}/actions/acceptWafConfigRecommendations` method to accept recommended Web Application Firewall protection rules. For more information, see [WAF Protection Rules](https://docs.oracle.com/iaas/Content/WAF/Tasks/wafprotectionrules.htm). The list is sorted by `key`, in ascending order.
- Specified by:
listRecommendationsin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
listThreatFeeds
public Future<ListThreatFeedsResponse> listThreatFeeds(ListThreatFeedsRequest request, AsyncHandler<ListThreatFeedsRequest,ListThreatFeedsResponse> handler)
Description copied from interface:WaasAsyncGets the list of available web application threat intelligence feeds and the actions set for each feed.The list is sorted by
key, in ascending order.- Specified by:
listThreatFeedsin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
listWaasPolicies
public Future<ListWaasPoliciesResponse> listWaasPolicies(ListWaasPoliciesRequest request, AsyncHandler<ListWaasPoliciesRequest,ListWaasPoliciesResponse> handler)
Description copied from interface:WaasAsyncGets a list of WAAS policies.- Specified by:
listWaasPoliciesin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
listWaasPolicyCustomProtectionRules
public Future<ListWaasPolicyCustomProtectionRulesResponse> listWaasPolicyCustomProtectionRules(ListWaasPolicyCustomProtectionRulesRequest request, AsyncHandler<ListWaasPolicyCustomProtectionRulesRequest,ListWaasPolicyCustomProtectionRulesResponse> handler)
Description copied from interface:WaasAsyncGets the list of currently configured custom protection rules for a WAAS policy.- Specified by:
listWaasPolicyCustomProtectionRulesin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
listWafBlockedRequests
public Future<ListWafBlockedRequestsResponse> listWafBlockedRequests(ListWafBlockedRequestsRequest request, AsyncHandler<ListWafBlockedRequestsRequest,ListWafBlockedRequestsResponse> handler)
Description copied from interface:WaasAsyncGets the number of blocked requests by a Web Application Firewall feature in five minute blocks, sorted bytimeObservedin ascending order (starting from oldest data).- Specified by:
listWafBlockedRequestsin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
listWafLogs
public Future<ListWafLogsResponse> listWafLogs(ListWafLogsRequest request, AsyncHandler<ListWafLogsRequest,ListWafLogsResponse> handler)
Description copied from interface:WaasAsyncGets structured Web Application Firewall event logs for a WAAS policy.Sorted by the
timeObservedin ascending order (starting from the oldest recorded event).- Specified by:
listWafLogsin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
listWafRequests
public Future<ListWafRequestsResponse> listWafRequests(ListWafRequestsRequest request, AsyncHandler<ListWafRequestsRequest,ListWafRequestsResponse> handler)
Description copied from interface:WaasAsyncGets the number of requests managed by a Web Application Firewall over a specified period of time, including blocked requests.Sorted by
timeObservedin ascending order (starting from oldest requests).- Specified by:
listWafRequestsin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
listWafTraffic
public Future<ListWafTrafficResponse> listWafTraffic(ListWafTrafficRequest request, AsyncHandler<ListWafTrafficRequest,ListWafTrafficResponse> handler)
Description copied from interface:WaasAsyncGets the Web Application Firewall traffic data for a WAAS policy.Sorted by
timeObservedin ascending order (starting from oldest data).- Specified by:
listWafTrafficin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
listWhitelists
public Future<ListWhitelistsResponse> listWhitelists(ListWhitelistsRequest request, AsyncHandler<ListWhitelistsRequest,ListWhitelistsResponse> handler)
Description copied from interface:WaasAsyncGets the list of whitelists defined in the Web Application Firewall configuration for a WAAS policy.- Specified by:
listWhitelistsin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
listWorkRequests
public Future<ListWorkRequestsResponse> listWorkRequests(ListWorkRequestsRequest request, AsyncHandler<ListWorkRequestsRequest,ListWorkRequestsResponse> handler)
Description copied from interface:WaasAsyncGets a list of subnets (CIDR notation) from which the WAAS EDGE may make requests.The subnets are owned by OCI and forward traffic to your origins. Allow traffic from these subnets to your origins. They are not associated with specific regions or compartments.
- Specified by:
listWorkRequestsin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
purgeCache
public Future<PurgeCacheResponse> purgeCache(PurgeCacheRequest request, AsyncHandler<PurgeCacheRequest,PurgeCacheResponse> handler)
Description copied from interface:WaasAsyncPerforms a purge of the cache for each specified resource.If no resources are passed, the cache for the entire Web Application Firewall will be purged. For more information, see Caching Rules.
- Specified by:
purgeCachein interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
updateAccessRules
public Future<UpdateAccessRulesResponse> updateAccessRules(UpdateAccessRulesRequest request, AsyncHandler<UpdateAccessRulesRequest,UpdateAccessRulesResponse> handler)
Description copied from interface:WaasAsyncUpdates the list of access rules in the Web Application Firewall configuration for a specified WAAS policy.Access rules allow explicit actions to be defined and executed for requests that meet various conditions. A rule action can be set to allow, detect, or block requests. The detect setting allows the request to pass through the Web Application Firewall and is tagged with a
DETECTflag in the Web Application Firewall’s log.This operation can create, delete, update, and/or reorder access rules depending on the structure of the request body.
Access rules can be updated by changing the properties of the access rule object with the rule's key specified in the key field. Access rules can be reordered by changing the order of the access rules in the list when updating.
Access rules can be created by adding a new access rule object to the list without a `key` property specified. A `key` will be generated for the new access rule upon update.
Any existing access rules that are not specified with a `key` in the list of access rules will be deleted upon update.
- Specified by:
updateAccessRulesin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
updateAddressList
public Future<UpdateAddressListResponse> updateAddressList(UpdateAddressListRequest request, AsyncHandler<UpdateAddressListRequest,UpdateAddressListResponse> handler)
Description copied from interface:WaasAsyncUpdates the details of an address list.Only the fields specified in the request body will be updated; all other properties will remain unchanged.
- Specified by:
updateAddressListin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
updateCachingRules
public Future<UpdateCachingRulesResponse> updateCachingRules(UpdateCachingRulesRequest request, AsyncHandler<UpdateCachingRulesRequest,UpdateCachingRulesResponse> handler)
Description copied from interface:WaasAsyncUpdates the configuration for each specified caching rule.Caching rules WAF policies allow you to selectively cache content on Oracle Cloud Infrastructure's edge servers, such as webpages or certain file types. For more information about caching rules, see [Caching Rules](https://docs.oracle.com/iaas/Content/WAF/Tasks/cachingrules.htm).
This operation can create, delete, update, and/or reorder caching rules depending on the structure of the request body. Caching rules can be updated by changing the properties of the caching rule object with the rule's key specified in the key field. Any existing caching rules that are not specified with a key in the list of access rules will be deleted upon update.
The order the caching rules are specified in is important. The rules are processed in the order they are specified and the first matching rule will be used when processing a request. Use `ListCachingRules` to view a list of all available caching rules in a compartment.
- Specified by:
updateCachingRulesin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
updateCaptchas
public Future<UpdateCaptchasResponse> updateCaptchas(UpdateCaptchasRequest request, AsyncHandler<UpdateCaptchasRequest,UpdateCaptchasResponse> handler)
Description copied from interface:WaasAsyncUpdates the list of CAPTCHA challenges in the Web Application Firewall configuration for a WAAS policy.This operation can create, update, or delete CAPTCHAs depending on the structure of the request body. CAPTCHA challenges can be updated by changing the properties of the CAPTCHA object with the rule’s key specified in the key field. CAPTCHA challenges can be reordered by changing the order of the CAPTCHA challenges in the list when updating.
CAPTCHA challenges can be created by adding a new access rule object to the list without a `key` property specified. A `key` will be generated for the new CAPTCHA challenges upon update.
Any existing CAPTCHA challenges that are not specified with a `key` in the list of CAPTCHA challenges will be deleted upon update.
Query parameters are allowed in CAPTCHA URL.
- Specified by:
updateCaptchasin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
updateCertificate
public Future<UpdateCertificateResponse> updateCertificate(UpdateCertificateRequest request, AsyncHandler<UpdateCertificateRequest,UpdateCertificateResponse> handler)
Description copied from interface:WaasAsyncIt is not possible to update a certificate, only create and delete.Therefore, this operation can only update the display name, freeform tags, and defined tags of a certificate.
- Specified by:
updateCertificatein interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
updateCustomProtectionRule
public Future<UpdateCustomProtectionRuleResponse> updateCustomProtectionRule(UpdateCustomProtectionRuleRequest request, AsyncHandler<UpdateCustomProtectionRuleRequest,UpdateCustomProtectionRuleResponse> handler)
Description copied from interface:WaasAsyncUpdates the configuration of a custom protection rule.Only the fields specified in the request body will be updated; all other properties will remain unchanged.
- Specified by:
updateCustomProtectionRulein interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
updateDeviceFingerprintChallenge
public Future<UpdateDeviceFingerprintChallengeResponse> updateDeviceFingerprintChallenge(UpdateDeviceFingerprintChallengeRequest request, AsyncHandler<UpdateDeviceFingerprintChallengeRequest,UpdateDeviceFingerprintChallengeResponse> handler)
Description copied from interface:WaasAsyncUpdates the Device Fingerprint Challenge (DFC) settings in the Web Application Firewall configuration for a policy.The DFC generates a hashed signature of both virtual and real browsers based on 50+ attributes. These proprietary signatures are then leveraged for real-time correlation to identify and block malicious bots.
The signature is based on a library of attributes detected via JavaScript listeners; the attributes include OS, screen resolution, fonts, UserAgent, IP address, etc. We are constantly making improvements and considering new libraries to include in our DFC build. We can also exclude attributes from the signature as needed.
DFC collects attributes to generate a hashed signature about a client - if a fingerprint is not possible, then it will result in a block or alert action. Actions can be enforced across multiple devices if they share they have the same fingerprint.
- Specified by:
updateDeviceFingerprintChallengein interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
updateGoodBots
public Future<UpdateGoodBotsResponse> updateGoodBots(UpdateGoodBotsRequest request, AsyncHandler<UpdateGoodBotsRequest,UpdateGoodBotsResponse> handler)
Description copied from interface:WaasAsyncUpdates the list of good bots in the Web Application Firewall configuration for a policy.Only the fields specified in the request body will be updated, all other configuration properties will remain unchanged.
Good bots allows you to manage access for bots from known providers, such as Google or Baidu. For more information about good bots, see [Bot Management](https://docs.oracle.com/iaas/Content/WAF/Tasks/botmanagement.htm).
- Specified by:
updateGoodBotsin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
updateHumanInteractionChallenge
public Future<UpdateHumanInteractionChallengeResponse> updateHumanInteractionChallenge(UpdateHumanInteractionChallengeRequest request, AsyncHandler<UpdateHumanInteractionChallengeRequest,UpdateHumanInteractionChallengeResponse> handler)
Description copied from interface:WaasAsyncUpdates the Human Interaction Challenge (HIC) settings in the Web Application Firewall configuration for a WAAS policy.HIC is a countermeasure that allows the proxy to check the user’s browser for various behaviors that distinguish a human presence from a bot.
- Specified by:
updateHumanInteractionChallengein interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
updateJsChallenge
public Future<UpdateJsChallengeResponse> updateJsChallenge(UpdateJsChallengeRequest request, AsyncHandler<UpdateJsChallengeRequest,UpdateJsChallengeResponse> handler)
Description copied from interface:WaasAsyncUpdates the JavaScript challenge settings in the Web Application Firewall configuration for a WAAS policy.JavaScript Challenge validates that the client can accept JavaScript with a binary decision. For more information, see Bot Management.
- Specified by:
updateJsChallengein interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
updatePolicyConfig
public Future<UpdatePolicyConfigResponse> updatePolicyConfig(UpdatePolicyConfigRequest request, AsyncHandler<UpdatePolicyConfigRequest,UpdatePolicyConfigResponse> handler)
Description copied from interface:WaasAsyncUpdates the configuration for a WAAS policy.Only the fields specified in the request body will be updated; all other properties will remain unchanged.
- Specified by:
updatePolicyConfigin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
updateProtectionRules
public Future<UpdateProtectionRulesResponse> updateProtectionRules(UpdateProtectionRulesRequest request, AsyncHandler<UpdateProtectionRulesRequest,UpdateProtectionRulesResponse> handler)
Description copied from interface:WaasAsyncUpdates the action for each specified protection rule.Requests can either be allowed, blocked, or trigger an alert if they meet the parameters of an applied rule. For more information on protection rules, see WAF Protection Rules. This operation can update or disable protection rules depending on the structure of the request body. Protection rules can be updated by changing the properties of the protection rule object with the rule’s key specified in the key field.
- Specified by:
updateProtectionRulesin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
updateProtectionSettings
public Future<UpdateProtectionSettingsResponse> updateProtectionSettings(UpdateProtectionSettingsRequest request, AsyncHandler<UpdateProtectionSettingsRequest,UpdateProtectionSettingsResponse> handler)
Description copied from interface:WaasAsyncUpdates the protection settings in the Web Application Firewall configuration for a WAAS policy.Protection settings allow you define what action is taken when a request is blocked by the Web Application Firewall, such as returning a response code or block page. Only the fields specified in the request body will be updated; all other fields will remain unchanged.
- Specified by:
updateProtectionSettingsin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
updateThreatFeeds
public Future<UpdateThreatFeedsResponse> updateThreatFeeds(UpdateThreatFeedsRequest request, AsyncHandler<UpdateThreatFeedsRequest,UpdateThreatFeedsResponse> handler)
Description copied from interface:WaasAsyncUpdates the action to take when a request’s IP address matches an address in the specified threat intelligence feed.Threat intelligence feeds are compiled lists of IP addresses with malicious reputations based on internet intelligence. Only the threat feeds specified in the request body will be updated; all other threat feeds will remain unchanged.
- Specified by:
updateThreatFeedsin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
updateWaasPolicy
public Future<UpdateWaasPolicyResponse> updateWaasPolicy(UpdateWaasPolicyRequest request, AsyncHandler<UpdateWaasPolicyRequest,UpdateWaasPolicyResponse> handler)
Description copied from interface:WaasAsyncUpdates the details of a WAAS policy, including origins and tags.Only the fields specified in the request body will be updated; all other properties will remain unchanged. To update platform provided resources such as
GoodBots,ProtectionRules, andThreatFeeds, first retrieve the list of available resources with the related list operation such asGetThreatFeedsorGetProtectionRules. The returned list will contain objects withkeyproperties that can be used to update the resource during theUpdateWaasPolicyrequest.- Specified by:
updateWaasPolicyin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
updateWaasPolicyCustomProtectionRules
public Future<UpdateWaasPolicyCustomProtectionRulesResponse> updateWaasPolicyCustomProtectionRules(UpdateWaasPolicyCustomProtectionRulesRequest request, AsyncHandler<UpdateWaasPolicyCustomProtectionRulesRequest,UpdateWaasPolicyCustomProtectionRulesResponse> handler)
Description copied from interface:WaasAsyncUpdates the action for each specified custom protection rule.Only the
DETECTandBLOCKactions can be set. Disabled rules should not be included in the list. For more information on protection rules, see WAF Protection Rules.- Specified by:
updateWaasPolicyCustomProtectionRulesin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
updateWafAddressRateLimiting
public Future<UpdateWafAddressRateLimitingResponse> updateWafAddressRateLimiting(UpdateWafAddressRateLimitingRequest request, AsyncHandler<UpdateWafAddressRateLimitingRequest,UpdateWafAddressRateLimitingResponse> handler)
Description copied from interface:WaasAsyncUpdates the address rate limiting settings in the Web Application Firewall configuration for a policy.Rate limiting allows you to configure a threshold for the number of requests from a unique IP address for the given period. You can also define the response code for the requests from the same address that exceed the threshold.
- Specified by:
updateWafAddressRateLimitingin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
updateWafConfig
public Future<UpdateWafConfigResponse> updateWafConfig(UpdateWafConfigRequest request, AsyncHandler<UpdateWafConfigRequest,UpdateWafConfigResponse> handler)
Description copied from interface:WaasAsyncUpdates the Web Application Firewall configuration for a specified WAAS policy.To update platform provided resources such as `GoodBots`, `ProtectionRules`, and `ThreatFeeds`, first retrieve the list of available resources with the related list operation, such as `GetThreatFeeds` or `GetProtectionRules`.
The returned list will contain objects with `key` properties that can be used to update the resource during the `UpdateWafConfig` request.
- Specified by:
updateWafConfigin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
updateWhitelists
public Future<UpdateWhitelistsResponse> updateWhitelists(UpdateWhitelistsRequest request, AsyncHandler<UpdateWhitelistsRequest,UpdateWhitelistsResponse> handler)
Description copied from interface:WaasAsyncUpdates the list of IP addresses that bypass the Web Application Firewall for a WAAS policy.Supports single IP addresses, subnet masks (CIDR notation) and Address Lists.
This operation can create, delete, update, and/or reorder whitelists depending on the structure of the request body.
Whitelists can be updated by changing the properties of the whitelist object with the rule's key specified in the `key` field. Whitelists can be reordered by changing the order of the whitelists in the list of objects when updating.
Whitelists can be created by adding a new whitelist object to the list without a `key` property specified. A `key` will be generated for the new whitelist upon update.
Whitelists can be deleted by removing the existing whitelist object from the list. Any existing whitelists that are not specified with a `key` in the list of access rules will be deleted upon update.
- Specified by:
updateWhitelistsin interfaceWaasAsync- Parameters:
request- The request object containing the details to sendhandler- The request handler to invoke upon completion, may be null.- Returns:
- A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
-
getDefaultConfigurator
protected ClientConfigurator getDefaultConfigurator()
-
useRealmSpecificEndpointTemplate
public void useRealmSpecificEndpointTemplate(boolean useOfRealmSpecificEndpointTemplateEnabled)
This method should be used to enable or disable the use of realm-specific endpoint template.The default value is null. To enable the use of endpoint template defined for the realm in use, set the flag to true To disable the use of endpoint template defined for the realm in use, set the flag to false
- Parameters:
useOfRealmSpecificEndpointTemplateEnabled- This flag can be set to true or false to enable or disable the use of realm-specific endpoint template respectively
-
populateServiceParametersInEndpoint
public final void populateServiceParametersInEndpoint(String endpoint, Map<String,Object> requiredParametersMap)
Populate the parameters in the endpoint with its corresponding value and update the base endpoint.The value will be populated iff the parameter in endpoint is a required request path parameter or a required request query parameter. If not, the parameter in the endpoint will be ignored and left blank.
- Parameters:
endpoint- The endpoint template in userequiredParametersMap- Map of parameter name as key and value set in request path or query parameter as value
-
updateBaseEndpoint
public final void updateBaseEndpoint(String endpoint)
This method should be used for parameterized endpoint templates only.This does not include {region} and {secondLevelDomain} parameters.
- Parameters:
endpoint- The updated endpoint to use
-
setEndpoint
public final void setEndpoint(String endpoint)
-
getEndpoint
public final String getEndpoint()
-
refreshClient
public final void refreshClient()
Rebuild the backingHttpClient.This will call
ClientConfigurators again, and can be used to e.g. refresh the SSL certificate.
-
close
public final void close()
- Specified by:
closein interfaceAutoCloseable
-
getClientCommonLibraryVersion
public String getClientCommonLibraryVersion()
-
getMinimumClientCommonLibraryVersionFromClient
public Optional<String> getMinimumClientCommonLibraryVersionFromClient()
-
clientCall
protected <REQ extends BmcRequest<?>,RESP extends BmcResponse,RESP_BUILDER extends BmcResponse.Builder<RESP>> ClientCall<REQ,RESP,RESP_BUILDER> clientCall(REQ request, Supplier<RESP_BUILDER> responseBuilder)
-
-