missingHeaders =
+ RequestSignerImpl.calculateMissingHeaders(
+ httpMethod.toLowerCase(),
+ uri,
+ existingHeaders,
+ body,
+ Constants.ALL_HEADERS,
+ signingConfiguration);
+ assertNotNull(missingHeaders);
+ int expectedMissingHeaderSize =
+ (signingStrategy.isSkipContentHeadersForStreamingPutRequests()) ? 2 : 4;
+ assertEquals(expectedMissingHeaderSize, missingHeaders.size());
+ assertTrue(missingHeaders.containsKey(HttpHeaders.DATE.toLowerCase()));
+ if (!signingStrategy.isSkipContentHeadersForStreamingPutRequests()) {
+ assertTrue(missingHeaders.containsKey(HttpHeaders.CONTENT_LENGTH.toLowerCase()));
+ assertEquals(
+ Integer.toString(contentLength),
+ missingHeaders.get(HttpHeaders.CONTENT_LENGTH.toLowerCase()));
+ assertTrue(missingHeaders.containsKey("x-content-sha256"));
+ }
+ assertEquals(
+ "identity.us-phoenix-1.oraclecloud.com",
+ missingHeaders.get(HttpHeaders.HOST.toLowerCase()));
+ }
}
diff --git a/bmc-containerengine/pom.xml b/bmc-containerengine/pom.xml
index bea28bcaaa7..903cc6dd6a8 100644
--- a/bmc-containerengine/pom.xml
+++ b/bmc-containerengine/pom.xml
@@ -5,7 +5,7 @@
com.oracle.oci.sdk
oci-java-sdk
- 1.6.0
+ 1.6.1
../pom.xml
@@ -19,7 +19,7 @@
com.oracle.oci.sdk
oci-java-sdk-common
- 1.6.0
+ 1.6.1
diff --git a/bmc-core/pom.xml b/bmc-core/pom.xml
index 0deeda84cfc..0db92709ee3 100644
--- a/bmc-core/pom.xml
+++ b/bmc-core/pom.xml
@@ -5,7 +5,7 @@
com.oracle.oci.sdk
oci-java-sdk
- 1.6.0
+ 1.6.1
../pom.xml
@@ -19,12 +19,12 @@
com.oracle.oci.sdk
oci-java-sdk-common
- 1.6.0
+ 1.6.1
com.oracle.oci.sdk
oci-java-sdk-workrequests
- 1.6.0
+ 1.6.1
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/ComputeManagement.java b/bmc-core/src/main/java/com/oracle/bmc/core/ComputeManagement.java
index 2ca0e8f0703..240584eebdd 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/ComputeManagement.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/ComputeManagement.java
@@ -84,7 +84,8 @@ ChangeInstancePoolCompartmentResponse changeInstancePoolCompartment(
ChangeInstancePoolCompartmentRequest request);
/**
- * Creates an instance configuration
+ * Creates an instance configuration. An instance configuration is a template that defines the
+ * settings to use when creating Compute instances.
*
* @param request The request object containing the details to send
* @return A response object containing details about the completed operation
@@ -147,7 +148,13 @@ GetInstancePoolLoadBalancerAttachmentResponse getInstancePoolLoadBalancerAttachm
GetInstancePoolLoadBalancerAttachmentRequest request);
/**
- * Launch an instance from an instance configuration
+ * Launches an instance from an instance configuration.
+ *
+ * If the instance configuration does not include all of the parameters that are
+ * required to launch an instance, such as the availability domain and subnet ID, you must
+ * provide these parameters when you launch an instance from the instance configuration.
+ * For more information, see the {@link InstanceConfiguration}
+ * resource.
*
* @param request The request object containing the details to send
* @return A response object containing details about the completed operation
@@ -157,7 +164,7 @@ LaunchInstanceConfigurationResponse launchInstanceConfiguration(
LaunchInstanceConfigurationRequest request);
/**
- * Lists the available instanceConfigurations in the specific compartment.
+ * Lists the instance configurations in the specified compartment.
*
* @param request The request object containing the details to send
* @return A response object containing details about the completed operation
@@ -232,7 +239,7 @@ ListInstancePoolInstancesResponse listInstancePoolInstances(
TerminateInstancePoolResponse terminateInstancePool(TerminateInstancePoolRequest request);
/**
- * Updates the freeFormTags, definedTags, and display name of an instance configuration.
+ * Updates the free-form tags, defined tags, and display name of an instance configuration.
* @param request The request object containing the details to send
* @return A response object containing details about the completed operation
* @throws BmcException when an error occurs.
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/ComputeManagementAsync.java b/bmc-core/src/main/java/com/oracle/bmc/core/ComputeManagementAsync.java
index 13ed4f6ba20..34ce257b144 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/ComputeManagementAsync.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/ComputeManagementAsync.java
@@ -109,7 +109,8 @@ java.util.concurrent.Future attachLoadBalancer(
handler);
/**
- * Creates an instance configuration
+ * Creates an instance configuration. An instance configuration is a template that defines the
+ * settings to use when creating Compute instances.
*
*
* @param request The request object containing the details to send
@@ -225,7 +226,13 @@ java.util.concurrent.Future getInstancePool(
handler);
/**
- * Launch an instance from an instance configuration
+ * Launches an instance from an instance configuration.
+ *
+ * If the instance configuration does not include all of the parameters that are
+ * required to launch an instance, such as the availability domain and subnet ID, you must
+ * provide these parameters when you launch an instance from the instance configuration.
+ * For more information, see the {@link InstanceConfiguration}
+ * resource.
*
*
* @param request The request object containing the details to send
@@ -242,7 +249,7 @@ java.util.concurrent.Future launchInstanceC
handler);
/**
- * Lists the available instanceConfigurations in the specific compartment.
+ * Lists the instance configurations in the specified compartment.
*
*
* @param request The request object containing the details to send
@@ -378,7 +385,7 @@ java.util.concurrent.Future terminateInstancePool
handler);
/**
- * Updates the freeFormTags, definedTags, and display name of an instance configuration.
+ * Updates the free-form tags, defined tags, and display name of an instance configuration.
*
* @param request The request object containing the details to send
* @param handler The request handler to invoke upon completion, may be null.
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/VirtualNetwork.java b/bmc-core/src/main/java/com/oracle/bmc/core/VirtualNetwork.java
index 62ca44e7a92..bb1dc90fba6 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/VirtualNetwork.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/VirtualNetwork.java
@@ -126,6 +126,18 @@ ChangeCrossConnectCompartmentResponse changeCrossConnectCompartment(
ChangeCrossConnectGroupCompartmentResponse changeCrossConnectGroupCompartment(
ChangeCrossConnectGroupCompartmentRequest request);
+ /**
+ * Moves a set of DHCP options into a different compartment within the same tenancy. For information
+ * about moving resources between compartments, see
+ * [Moving Resources to a Different Compartment](https://docs.cloud.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes).
+ *
+ * @param request The request object containing the details to send
+ * @return A response object containing details about the completed operation
+ * @throws BmcException when an error occurs.
+ */
+ ChangeDhcpOptionsCompartmentResponse changeDhcpOptionsCompartment(
+ ChangeDhcpOptionsCompartmentRequest request);
+
/**
* Moves an IPSec connection into a different compartment within the same tenancy. For information
* about moving resources between compartments, see
@@ -138,6 +150,30 @@ ChangeCrossConnectGroupCompartmentResponse changeCrossConnectGroupCompartment(
ChangeIPSecConnectionCompartmentResponse changeIPSecConnectionCompartment(
ChangeIPSecConnectionCompartmentRequest request);
+ /**
+ * Moves an internet gateway into a different compartment within the same tenancy. For information
+ * about moving resources between compartments, see
+ * [Moving Resources to a Different Compartment](https://docs.cloud.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes).
+ *
+ * @param request The request object containing the details to send
+ * @return A response object containing details about the completed operation
+ * @throws BmcException when an error occurs.
+ */
+ ChangeInternetGatewayCompartmentResponse changeInternetGatewayCompartment(
+ ChangeInternetGatewayCompartmentRequest request);
+
+ /**
+ * Moves a local peering gateway into a different compartment within the same tenancy. For information
+ * about moving resources between compartments, see
+ * [Moving Resources to a Different Compartment](https://docs.cloud.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes).
+ *
+ * @param request The request object containing the details to send
+ * @return A response object containing details about the completed operation
+ * @throws BmcException when an error occurs.
+ */
+ ChangeLocalPeeringGatewayCompartmentResponse changeLocalPeeringGatewayCompartment(
+ ChangeLocalPeeringGatewayCompartmentRequest request);
+
/**
* Moves a NAT gateway into a different compartment within the same tenancy. For information
* about moving resources between compartments, see
@@ -150,6 +186,32 @@ ChangeIPSecConnectionCompartmentResponse changeIPSecConnectionCompartment(
ChangeNatGatewayCompartmentResponse changeNatGatewayCompartment(
ChangeNatGatewayCompartmentRequest request);
+ /**
+ * Moves a network security group into a different compartment within the same tenancy. For
+ * information about moving resources between compartments, see [Moving Resources to a Different Compartment](https://docs.cloud.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes).
+ *
+ * @param request The request object containing the details to send
+ * @return A response object containing details about the completed operation
+ * @throws BmcException when an error occurs.
+ */
+ ChangeNetworkSecurityGroupCompartmentResponse changeNetworkSecurityGroupCompartment(
+ ChangeNetworkSecurityGroupCompartmentRequest request);
+
+ /**
+ * Moves a public IP into a different compartment within the same tenancy. For information
+ * about moving resources between compartments, see
+ * [Moving Resources to a Different Compartment](https://docs.cloud.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes).
+ *
+ * This operation applies only to reserved public IPs. Ephemeral public IPs always belong to the
+ * same compartment as their VNIC and move accordingly.
+ *
+ * @param request The request object containing the details to send
+ * @return A response object containing details about the completed operation
+ * @throws BmcException when an error occurs.
+ */
+ ChangePublicIpCompartmentResponse changePublicIpCompartment(
+ ChangePublicIpCompartmentRequest request);
+
/**
* Moves a remote peering connection (RPC) into a different compartment within the same tenancy. For information
* about moving resources between compartments, see
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/VirtualNetworkAsync.java b/bmc-core/src/main/java/com/oracle/bmc/core/VirtualNetworkAsync.java
index 129bcc87777..1cdc5fac071 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/VirtualNetworkAsync.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/VirtualNetworkAsync.java
@@ -185,6 +185,26 @@ java.util.concurrent.Future changeCpeCompartment(
ChangeCrossConnectGroupCompartmentResponse>
handler);
+ /**
+ * Moves a set of DHCP options into a different compartment within the same tenancy. For information
+ * about moving resources between compartments, see
+ * [Moving Resources to a Different Compartment](https://docs.cloud.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes).
+ *
+ *
+ * @param request The request object containing the details to send
+ * @param handler The request handler to invoke upon completion, may be null.
+ * @return 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.
+ */
+ java.util.concurrent.Future changeDhcpOptionsCompartment(
+ ChangeDhcpOptionsCompartmentRequest request,
+ com.oracle.bmc.responses.AsyncHandler<
+ ChangeDhcpOptionsCompartmentRequest,
+ ChangeDhcpOptionsCompartmentResponse>
+ handler);
+
/**
* Moves an IPSec connection into a different compartment within the same tenancy. For information
* about moving resources between compartments, see
@@ -206,6 +226,48 @@ java.util.concurrent.Future changeCpeCompartment(
ChangeIPSecConnectionCompartmentResponse>
handler);
+ /**
+ * Moves an internet gateway into a different compartment within the same tenancy. For information
+ * about moving resources between compartments, see
+ * [Moving Resources to a Different Compartment](https://docs.cloud.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes).
+ *
+ *
+ * @param request The request object containing the details to send
+ * @param handler The request handler to invoke upon completion, may be null.
+ * @return 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.
+ */
+ java.util.concurrent.Future
+ changeInternetGatewayCompartment(
+ ChangeInternetGatewayCompartmentRequest request,
+ com.oracle.bmc.responses.AsyncHandler<
+ ChangeInternetGatewayCompartmentRequest,
+ ChangeInternetGatewayCompartmentResponse>
+ handler);
+
+ /**
+ * Moves a local peering gateway into a different compartment within the same tenancy. For information
+ * about moving resources between compartments, see
+ * [Moving Resources to a Different Compartment](https://docs.cloud.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes).
+ *
+ *
+ * @param request The request object containing the details to send
+ * @param handler The request handler to invoke upon completion, may be null.
+ * @return 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.
+ */
+ java.util.concurrent.Future
+ changeLocalPeeringGatewayCompartment(
+ ChangeLocalPeeringGatewayCompartmentRequest request,
+ com.oracle.bmc.responses.AsyncHandler<
+ ChangeLocalPeeringGatewayCompartmentRequest,
+ ChangeLocalPeeringGatewayCompartmentResponse>
+ handler);
+
/**
* Moves a NAT gateway into a different compartment within the same tenancy. For information
* about moving resources between compartments, see
@@ -225,6 +287,48 @@ java.util.concurrent.Future changeNatGatewa
ChangeNatGatewayCompartmentRequest, ChangeNatGatewayCompartmentResponse>
handler);
+ /**
+ * Moves a network security group into a different compartment within the same tenancy. For
+ * information about moving resources between compartments, see [Moving Resources to a Different Compartment](https://docs.cloud.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes).
+ *
+ *
+ * @param request The request object containing the details to send
+ * @param handler The request handler to invoke upon completion, may be null.
+ * @return 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.
+ */
+ java.util.concurrent.Future
+ changeNetworkSecurityGroupCompartment(
+ ChangeNetworkSecurityGroupCompartmentRequest request,
+ com.oracle.bmc.responses.AsyncHandler<
+ ChangeNetworkSecurityGroupCompartmentRequest,
+ ChangeNetworkSecurityGroupCompartmentResponse>
+ handler);
+
+ /**
+ * Moves a public IP into a different compartment within the same tenancy. For information
+ * about moving resources between compartments, see
+ * [Moving Resources to a Different Compartment](https://docs.cloud.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes).
+ *
+ * This operation applies only to reserved public IPs. Ephemeral public IPs always belong to the
+ * same compartment as their VNIC and move accordingly.
+ *
+ *
+ * @param request The request object containing the details to send
+ * @param handler The request handler to invoke upon completion, may be null.
+ * @return 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.
+ */
+ java.util.concurrent.Future changePublicIpCompartment(
+ ChangePublicIpCompartmentRequest request,
+ com.oracle.bmc.responses.AsyncHandler<
+ ChangePublicIpCompartmentRequest, ChangePublicIpCompartmentResponse>
+ handler);
+
/**
* Moves a remote peering connection (RPC) into a different compartment within the same tenancy. For information
* about moving resources between compartments, see
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/VirtualNetworkAsyncClient.java b/bmc-core/src/main/java/com/oracle/bmc/core/VirtualNetworkAsyncClient.java
index e09aff2a9b6..f669ed1f5bd 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/VirtualNetworkAsyncClient.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/VirtualNetworkAsyncClient.java
@@ -968,6 +968,100 @@ public java.util.concurrent.Future get() {
}
}
+ @Override
+ public java.util.concurrent.Future
+ changeDhcpOptionsCompartment(
+ final ChangeDhcpOptionsCompartmentRequest request,
+ final com.oracle.bmc.responses.AsyncHandler<
+ ChangeDhcpOptionsCompartmentRequest,
+ ChangeDhcpOptionsCompartmentResponse>
+ handler) {
+ LOG.trace("Called async changeDhcpOptionsCompartment");
+ final ChangeDhcpOptionsCompartmentRequest interceptedRequest =
+ ChangeDhcpOptionsCompartmentConverter.interceptRequest(request);
+ final com.oracle.bmc.http.internal.WrappedInvocationBuilder ib =
+ ChangeDhcpOptionsCompartmentConverter.fromRequest(client, interceptedRequest);
+ final com.google.common.base.Function<
+ javax.ws.rs.core.Response, ChangeDhcpOptionsCompartmentResponse>
+ transformer = ChangeDhcpOptionsCompartmentConverter.fromResponse();
+
+ com.oracle.bmc.responses.AsyncHandler<
+ ChangeDhcpOptionsCompartmentRequest, ChangeDhcpOptionsCompartmentResponse>
+ handlerToUse = handler;
+ if (handler != null
+ && this.authenticationDetailsProvider
+ instanceof com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) {
+ handlerToUse =
+ new com.oracle.bmc.util.internal.RefreshAuthTokenWrappingAsyncHandler<
+ ChangeDhcpOptionsCompartmentRequest,
+ ChangeDhcpOptionsCompartmentResponse>(
+ (com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider)
+ this.authenticationDetailsProvider,
+ handler) {
+ @Override
+ public void retryCall() {
+ final com.oracle.bmc.util.internal.Consumer
+ onSuccess =
+ new com.oracle.bmc.http.internal.SuccessConsumer<>(
+ this, transformer, interceptedRequest);
+ final com.oracle.bmc.util.internal.Consumer onError =
+ new com.oracle.bmc.http.internal.ErrorConsumer<>(
+ this, interceptedRequest);
+ client.post(
+ ib,
+ interceptedRequest.getChangeDhcpOptionsCompartmentDetails(),
+ interceptedRequest,
+ onSuccess,
+ onError);
+ }
+ };
+ }
+
+ final com.oracle.bmc.util.internal.Consumer onSuccess =
+ (handler == null)
+ ? null
+ : new com.oracle.bmc.http.internal.SuccessConsumer<>(
+ handlerToUse, transformer, interceptedRequest);
+ final com.oracle.bmc.util.internal.Consumer onError =
+ (handler == null)
+ ? null
+ : new com.oracle.bmc.http.internal.ErrorConsumer<>(
+ handlerToUse, interceptedRequest);
+
+ java.util.concurrent.Future responseFuture =
+ client.post(
+ ib,
+ interceptedRequest.getChangeDhcpOptionsCompartmentDetails(),
+ interceptedRequest,
+ onSuccess,
+ onError);
+
+ if (this.authenticationDetailsProvider
+ instanceof com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) {
+ return new com.oracle.bmc.util.internal.RefreshAuthTokenTransformingFuture<
+ javax.ws.rs.core.Response, ChangeDhcpOptionsCompartmentResponse>(
+ responseFuture,
+ transformer,
+ (com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider)
+ this.authenticationDetailsProvider,
+ new com.google.common.base.Supplier<
+ java.util.concurrent.Future>() {
+ @Override
+ public java.util.concurrent.Future get() {
+ return client.post(
+ ib,
+ interceptedRequest.getChangeDhcpOptionsCompartmentDetails(),
+ interceptedRequest,
+ onSuccess,
+ onError);
+ }
+ });
+ } else {
+ return new com.oracle.bmc.util.internal.TransformingFuture<>(
+ responseFuture, transformer);
+ }
+ }
+
@Override
public java.util.concurrent.Future
changeIPSecConnectionCompartment(
@@ -1063,6 +1157,199 @@ public java.util.concurrent.Future get() {
}
}
+ @Override
+ public java.util.concurrent.Future
+ changeInternetGatewayCompartment(
+ final ChangeInternetGatewayCompartmentRequest request,
+ final com.oracle.bmc.responses.AsyncHandler<
+ ChangeInternetGatewayCompartmentRequest,
+ ChangeInternetGatewayCompartmentResponse>
+ handler) {
+ LOG.trace("Called async changeInternetGatewayCompartment");
+ final ChangeInternetGatewayCompartmentRequest interceptedRequest =
+ ChangeInternetGatewayCompartmentConverter.interceptRequest(request);
+ final com.oracle.bmc.http.internal.WrappedInvocationBuilder ib =
+ ChangeInternetGatewayCompartmentConverter.fromRequest(client, interceptedRequest);
+ final com.google.common.base.Function<
+ javax.ws.rs.core.Response, ChangeInternetGatewayCompartmentResponse>
+ transformer = ChangeInternetGatewayCompartmentConverter.fromResponse();
+
+ com.oracle.bmc.responses.AsyncHandler<
+ ChangeInternetGatewayCompartmentRequest,
+ ChangeInternetGatewayCompartmentResponse>
+ handlerToUse = handler;
+ if (handler != null
+ && this.authenticationDetailsProvider
+ instanceof com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) {
+ handlerToUse =
+ new com.oracle.bmc.util.internal.RefreshAuthTokenWrappingAsyncHandler<
+ ChangeInternetGatewayCompartmentRequest,
+ ChangeInternetGatewayCompartmentResponse>(
+ (com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider)
+ this.authenticationDetailsProvider,
+ handler) {
+ @Override
+ public void retryCall() {
+ final com.oracle.bmc.util.internal.Consumer
+ onSuccess =
+ new com.oracle.bmc.http.internal.SuccessConsumer<>(
+ this, transformer, interceptedRequest);
+ final com.oracle.bmc.util.internal.Consumer onError =
+ new com.oracle.bmc.http.internal.ErrorConsumer<>(
+ this, interceptedRequest);
+ client.post(
+ ib,
+ interceptedRequest.getChangeInternetGatewayCompartmentDetails(),
+ interceptedRequest,
+ onSuccess,
+ onError);
+ }
+ };
+ }
+
+ final com.oracle.bmc.util.internal.Consumer onSuccess =
+ (handler == null)
+ ? null
+ : new com.oracle.bmc.http.internal.SuccessConsumer<>(
+ handlerToUse, transformer, interceptedRequest);
+ final com.oracle.bmc.util.internal.Consumer onError =
+ (handler == null)
+ ? null
+ : new com.oracle.bmc.http.internal.ErrorConsumer<>(
+ handlerToUse, interceptedRequest);
+
+ java.util.concurrent.Future responseFuture =
+ client.post(
+ ib,
+ interceptedRequest.getChangeInternetGatewayCompartmentDetails(),
+ interceptedRequest,
+ onSuccess,
+ onError);
+
+ if (this.authenticationDetailsProvider
+ instanceof com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) {
+ return new com.oracle.bmc.util.internal.RefreshAuthTokenTransformingFuture<
+ javax.ws.rs.core.Response, ChangeInternetGatewayCompartmentResponse>(
+ responseFuture,
+ transformer,
+ (com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider)
+ this.authenticationDetailsProvider,
+ new com.google.common.base.Supplier<
+ java.util.concurrent.Future>() {
+ @Override
+ public java.util.concurrent.Future get() {
+ return client.post(
+ ib,
+ interceptedRequest.getChangeInternetGatewayCompartmentDetails(),
+ interceptedRequest,
+ onSuccess,
+ onError);
+ }
+ });
+ } else {
+ return new com.oracle.bmc.util.internal.TransformingFuture<>(
+ responseFuture, transformer);
+ }
+ }
+
+ @Override
+ public java.util.concurrent.Future
+ changeLocalPeeringGatewayCompartment(
+ final ChangeLocalPeeringGatewayCompartmentRequest request,
+ final com.oracle.bmc.responses.AsyncHandler<
+ ChangeLocalPeeringGatewayCompartmentRequest,
+ ChangeLocalPeeringGatewayCompartmentResponse>
+ handler) {
+ LOG.trace("Called async changeLocalPeeringGatewayCompartment");
+ final ChangeLocalPeeringGatewayCompartmentRequest interceptedRequest =
+ ChangeLocalPeeringGatewayCompartmentConverter.interceptRequest(request);
+ final com.oracle.bmc.http.internal.WrappedInvocationBuilder ib =
+ ChangeLocalPeeringGatewayCompartmentConverter.fromRequest(
+ client, interceptedRequest);
+ final com.google.common.base.Function<
+ javax.ws.rs.core.Response, ChangeLocalPeeringGatewayCompartmentResponse>
+ transformer = ChangeLocalPeeringGatewayCompartmentConverter.fromResponse();
+
+ com.oracle.bmc.responses.AsyncHandler<
+ ChangeLocalPeeringGatewayCompartmentRequest,
+ ChangeLocalPeeringGatewayCompartmentResponse>
+ handlerToUse = handler;
+ if (handler != null
+ && this.authenticationDetailsProvider
+ instanceof com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) {
+ handlerToUse =
+ new com.oracle.bmc.util.internal.RefreshAuthTokenWrappingAsyncHandler<
+ ChangeLocalPeeringGatewayCompartmentRequest,
+ ChangeLocalPeeringGatewayCompartmentResponse>(
+ (com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider)
+ this.authenticationDetailsProvider,
+ handler) {
+ @Override
+ public void retryCall() {
+ final com.oracle.bmc.util.internal.Consumer
+ onSuccess =
+ new com.oracle.bmc.http.internal.SuccessConsumer<>(
+ this, transformer, interceptedRequest);
+ final com.oracle.bmc.util.internal.Consumer onError =
+ new com.oracle.bmc.http.internal.ErrorConsumer<>(
+ this, interceptedRequest);
+ client.post(
+ ib,
+ interceptedRequest
+ .getChangeLocalPeeringGatewayCompartmentDetails(),
+ interceptedRequest,
+ onSuccess,
+ onError);
+ }
+ };
+ }
+
+ final com.oracle.bmc.util.internal.Consumer onSuccess =
+ (handler == null)
+ ? null
+ : new com.oracle.bmc.http.internal.SuccessConsumer<>(
+ handlerToUse, transformer, interceptedRequest);
+ final com.oracle.bmc.util.internal.Consumer onError =
+ (handler == null)
+ ? null
+ : new com.oracle.bmc.http.internal.ErrorConsumer<>(
+ handlerToUse, interceptedRequest);
+
+ java.util.concurrent.Future responseFuture =
+ client.post(
+ ib,
+ interceptedRequest.getChangeLocalPeeringGatewayCompartmentDetails(),
+ interceptedRequest,
+ onSuccess,
+ onError);
+
+ if (this.authenticationDetailsProvider
+ instanceof com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) {
+ return new com.oracle.bmc.util.internal.RefreshAuthTokenTransformingFuture<
+ javax.ws.rs.core.Response, ChangeLocalPeeringGatewayCompartmentResponse>(
+ responseFuture,
+ transformer,
+ (com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider)
+ this.authenticationDetailsProvider,
+ new com.google.common.base.Supplier<
+ java.util.concurrent.Future>() {
+ @Override
+ public java.util.concurrent.Future get() {
+ return client.post(
+ ib,
+ interceptedRequest
+ .getChangeLocalPeeringGatewayCompartmentDetails(),
+ interceptedRequest,
+ onSuccess,
+ onError);
+ }
+ });
+ } else {
+ return new com.oracle.bmc.util.internal.TransformingFuture<>(
+ responseFuture, transformer);
+ }
+ }
+
@Override
public java.util.concurrent.Future
changeNatGatewayCompartment(
@@ -1157,6 +1444,195 @@ public java.util.concurrent.Future get() {
}
}
+ @Override
+ public java.util.concurrent.Future
+ changeNetworkSecurityGroupCompartment(
+ final ChangeNetworkSecurityGroupCompartmentRequest request,
+ final com.oracle.bmc.responses.AsyncHandler<
+ ChangeNetworkSecurityGroupCompartmentRequest,
+ ChangeNetworkSecurityGroupCompartmentResponse>
+ handler) {
+ LOG.trace("Called async changeNetworkSecurityGroupCompartment");
+ final ChangeNetworkSecurityGroupCompartmentRequest interceptedRequest =
+ ChangeNetworkSecurityGroupCompartmentConverter.interceptRequest(request);
+ final com.oracle.bmc.http.internal.WrappedInvocationBuilder ib =
+ ChangeNetworkSecurityGroupCompartmentConverter.fromRequest(
+ client, interceptedRequest);
+ final com.google.common.base.Function<
+ javax.ws.rs.core.Response, ChangeNetworkSecurityGroupCompartmentResponse>
+ transformer = ChangeNetworkSecurityGroupCompartmentConverter.fromResponse();
+
+ com.oracle.bmc.responses.AsyncHandler<
+ ChangeNetworkSecurityGroupCompartmentRequest,
+ ChangeNetworkSecurityGroupCompartmentResponse>
+ handlerToUse = handler;
+ if (handler != null
+ && this.authenticationDetailsProvider
+ instanceof com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) {
+ handlerToUse =
+ new com.oracle.bmc.util.internal.RefreshAuthTokenWrappingAsyncHandler<
+ ChangeNetworkSecurityGroupCompartmentRequest,
+ ChangeNetworkSecurityGroupCompartmentResponse>(
+ (com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider)
+ this.authenticationDetailsProvider,
+ handler) {
+ @Override
+ public void retryCall() {
+ final com.oracle.bmc.util.internal.Consumer
+ onSuccess =
+ new com.oracle.bmc.http.internal.SuccessConsumer<>(
+ this, transformer, interceptedRequest);
+ final com.oracle.bmc.util.internal.Consumer onError =
+ new com.oracle.bmc.http.internal.ErrorConsumer<>(
+ this, interceptedRequest);
+ client.post(
+ ib,
+ interceptedRequest
+ .getChangeNetworkSecurityGroupCompartmentDetails(),
+ interceptedRequest,
+ onSuccess,
+ onError);
+ }
+ };
+ }
+
+ final com.oracle.bmc.util.internal.Consumer onSuccess =
+ (handler == null)
+ ? null
+ : new com.oracle.bmc.http.internal.SuccessConsumer<>(
+ handlerToUse, transformer, interceptedRequest);
+ final com.oracle.bmc.util.internal.Consumer onError =
+ (handler == null)
+ ? null
+ : new com.oracle.bmc.http.internal.ErrorConsumer<>(
+ handlerToUse, interceptedRequest);
+
+ java.util.concurrent.Future responseFuture =
+ client.post(
+ ib,
+ interceptedRequest.getChangeNetworkSecurityGroupCompartmentDetails(),
+ interceptedRequest,
+ onSuccess,
+ onError);
+
+ if (this.authenticationDetailsProvider
+ instanceof com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) {
+ return new com.oracle.bmc.util.internal.RefreshAuthTokenTransformingFuture<
+ javax.ws.rs.core.Response, ChangeNetworkSecurityGroupCompartmentResponse>(
+ responseFuture,
+ transformer,
+ (com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider)
+ this.authenticationDetailsProvider,
+ new com.google.common.base.Supplier<
+ java.util.concurrent.Future>() {
+ @Override
+ public java.util.concurrent.Future get() {
+ return client.post(
+ ib,
+ interceptedRequest
+ .getChangeNetworkSecurityGroupCompartmentDetails(),
+ interceptedRequest,
+ onSuccess,
+ onError);
+ }
+ });
+ } else {
+ return new com.oracle.bmc.util.internal.TransformingFuture<>(
+ responseFuture, transformer);
+ }
+ }
+
+ @Override
+ public java.util.concurrent.Future changePublicIpCompartment(
+ final ChangePublicIpCompartmentRequest request,
+ final com.oracle.bmc.responses.AsyncHandler<
+ ChangePublicIpCompartmentRequest, ChangePublicIpCompartmentResponse>
+ handler) {
+ LOG.trace("Called async changePublicIpCompartment");
+ final ChangePublicIpCompartmentRequest interceptedRequest =
+ ChangePublicIpCompartmentConverter.interceptRequest(request);
+ final com.oracle.bmc.http.internal.WrappedInvocationBuilder ib =
+ ChangePublicIpCompartmentConverter.fromRequest(client, interceptedRequest);
+ final com.google.common.base.Function<
+ javax.ws.rs.core.Response, ChangePublicIpCompartmentResponse>
+ transformer = ChangePublicIpCompartmentConverter.fromResponse();
+
+ com.oracle.bmc.responses.AsyncHandler<
+ ChangePublicIpCompartmentRequest, ChangePublicIpCompartmentResponse>
+ handlerToUse = handler;
+ if (handler != null
+ && this.authenticationDetailsProvider
+ instanceof com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) {
+ handlerToUse =
+ new com.oracle.bmc.util.internal.RefreshAuthTokenWrappingAsyncHandler<
+ ChangePublicIpCompartmentRequest, ChangePublicIpCompartmentResponse>(
+ (com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider)
+ this.authenticationDetailsProvider,
+ handler) {
+ @Override
+ public void retryCall() {
+ final com.oracle.bmc.util.internal.Consumer
+ onSuccess =
+ new com.oracle.bmc.http.internal.SuccessConsumer<>(
+ this, transformer, interceptedRequest);
+ final com.oracle.bmc.util.internal.Consumer onError =
+ new com.oracle.bmc.http.internal.ErrorConsumer<>(
+ this, interceptedRequest);
+ client.post(
+ ib,
+ interceptedRequest.getChangePublicIpCompartmentDetails(),
+ interceptedRequest,
+ onSuccess,
+ onError);
+ }
+ };
+ }
+
+ final com.oracle.bmc.util.internal.Consumer onSuccess =
+ (handler == null)
+ ? null
+ : new com.oracle.bmc.http.internal.SuccessConsumer<>(
+ handlerToUse, transformer, interceptedRequest);
+ final com.oracle.bmc.util.internal.Consumer onError =
+ (handler == null)
+ ? null
+ : new com.oracle.bmc.http.internal.ErrorConsumer<>(
+ handlerToUse, interceptedRequest);
+
+ java.util.concurrent.Future responseFuture =
+ client.post(
+ ib,
+ interceptedRequest.getChangePublicIpCompartmentDetails(),
+ interceptedRequest,
+ onSuccess,
+ onError);
+
+ if (this.authenticationDetailsProvider
+ instanceof com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) {
+ return new com.oracle.bmc.util.internal.RefreshAuthTokenTransformingFuture<
+ javax.ws.rs.core.Response, ChangePublicIpCompartmentResponse>(
+ responseFuture,
+ transformer,
+ (com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider)
+ this.authenticationDetailsProvider,
+ new com.google.common.base.Supplier<
+ java.util.concurrent.Future>() {
+ @Override
+ public java.util.concurrent.Future get() {
+ return client.post(
+ ib,
+ interceptedRequest.getChangePublicIpCompartmentDetails(),
+ interceptedRequest,
+ onSuccess,
+ onError);
+ }
+ });
+ } else {
+ return new com.oracle.bmc.util.internal.TransformingFuture<>(
+ responseFuture, transformer);
+ }
+ }
+
@Override
public java.util.concurrent.Future
changeRemotePeeringConnectionCompartment(
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/VirtualNetworkClient.java b/bmc-core/src/main/java/com/oracle/bmc/core/VirtualNetworkClient.java
index fb75c03d5c2..b22b910e853 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/VirtualNetworkClient.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/VirtualNetworkClient.java
@@ -621,6 +621,41 @@ public ChangeCrossConnectGroupCompartmentResponse changeCrossConnectGroupCompart
});
}
+ @Override
+ public ChangeDhcpOptionsCompartmentResponse changeDhcpOptionsCompartment(
+ ChangeDhcpOptionsCompartmentRequest request) {
+ LOG.trace("Called changeDhcpOptionsCompartment");
+ final ChangeDhcpOptionsCompartmentRequest interceptedRequest =
+ ChangeDhcpOptionsCompartmentConverter.interceptRequest(request);
+ com.oracle.bmc.http.internal.WrappedInvocationBuilder ib =
+ ChangeDhcpOptionsCompartmentConverter.fromRequest(client, interceptedRequest);
+ com.google.common.base.Function<
+ javax.ws.rs.core.Response, ChangeDhcpOptionsCompartmentResponse>
+ transformer = ChangeDhcpOptionsCompartmentConverter.fromResponse();
+
+ final com.oracle.bmc.retrier.BmcGenericRetrier retrier =
+ com.oracle.bmc.retrier.Retriers.createPreferredRetrier(
+ interceptedRequest.getRetryConfiguration(), retryConfiguration);
+ return retrier.execute(
+ interceptedRequest,
+ retryRequest -> {
+ final com.oracle.bmc.retrier.TokenRefreshRetrier tokenRefreshRetrier =
+ new com.oracle.bmc.retrier.TokenRefreshRetrier(
+ authenticationDetailsProvider);
+ return tokenRefreshRetrier.execute(
+ retryRequest,
+ retriedRequest -> {
+ javax.ws.rs.core.Response response =
+ client.post(
+ ib,
+ retriedRequest
+ .getChangeDhcpOptionsCompartmentDetails(),
+ retriedRequest);
+ return transformer.apply(response);
+ });
+ });
+ }
+
@Override
public ChangeIPSecConnectionCompartmentResponse changeIPSecConnectionCompartment(
ChangeIPSecConnectionCompartmentRequest request) {
@@ -656,6 +691,77 @@ public ChangeIPSecConnectionCompartmentResponse changeIPSecConnectionCompartment
});
}
+ @Override
+ public ChangeInternetGatewayCompartmentResponse changeInternetGatewayCompartment(
+ ChangeInternetGatewayCompartmentRequest request) {
+ LOG.trace("Called changeInternetGatewayCompartment");
+ final ChangeInternetGatewayCompartmentRequest interceptedRequest =
+ ChangeInternetGatewayCompartmentConverter.interceptRequest(request);
+ com.oracle.bmc.http.internal.WrappedInvocationBuilder ib =
+ ChangeInternetGatewayCompartmentConverter.fromRequest(client, interceptedRequest);
+ com.google.common.base.Function<
+ javax.ws.rs.core.Response, ChangeInternetGatewayCompartmentResponse>
+ transformer = ChangeInternetGatewayCompartmentConverter.fromResponse();
+
+ final com.oracle.bmc.retrier.BmcGenericRetrier retrier =
+ com.oracle.bmc.retrier.Retriers.createPreferredRetrier(
+ interceptedRequest.getRetryConfiguration(), retryConfiguration);
+ return retrier.execute(
+ interceptedRequest,
+ retryRequest -> {
+ final com.oracle.bmc.retrier.TokenRefreshRetrier tokenRefreshRetrier =
+ new com.oracle.bmc.retrier.TokenRefreshRetrier(
+ authenticationDetailsProvider);
+ return tokenRefreshRetrier.execute(
+ retryRequest,
+ retriedRequest -> {
+ javax.ws.rs.core.Response response =
+ client.post(
+ ib,
+ retriedRequest
+ .getChangeInternetGatewayCompartmentDetails(),
+ retriedRequest);
+ return transformer.apply(response);
+ });
+ });
+ }
+
+ @Override
+ public ChangeLocalPeeringGatewayCompartmentResponse changeLocalPeeringGatewayCompartment(
+ ChangeLocalPeeringGatewayCompartmentRequest request) {
+ LOG.trace("Called changeLocalPeeringGatewayCompartment");
+ final ChangeLocalPeeringGatewayCompartmentRequest interceptedRequest =
+ ChangeLocalPeeringGatewayCompartmentConverter.interceptRequest(request);
+ com.oracle.bmc.http.internal.WrappedInvocationBuilder ib =
+ ChangeLocalPeeringGatewayCompartmentConverter.fromRequest(
+ client, interceptedRequest);
+ com.google.common.base.Function<
+ javax.ws.rs.core.Response, ChangeLocalPeeringGatewayCompartmentResponse>
+ transformer = ChangeLocalPeeringGatewayCompartmentConverter.fromResponse();
+
+ final com.oracle.bmc.retrier.BmcGenericRetrier retrier =
+ com.oracle.bmc.retrier.Retriers.createPreferredRetrier(
+ interceptedRequest.getRetryConfiguration(), retryConfiguration);
+ return retrier.execute(
+ interceptedRequest,
+ retryRequest -> {
+ final com.oracle.bmc.retrier.TokenRefreshRetrier tokenRefreshRetrier =
+ new com.oracle.bmc.retrier.TokenRefreshRetrier(
+ authenticationDetailsProvider);
+ return tokenRefreshRetrier.execute(
+ retryRequest,
+ retriedRequest -> {
+ javax.ws.rs.core.Response response =
+ client.post(
+ ib,
+ retriedRequest
+ .getChangeLocalPeeringGatewayCompartmentDetails(),
+ retriedRequest);
+ return transformer.apply(response);
+ });
+ });
+ }
+
@Override
public ChangeNatGatewayCompartmentResponse changeNatGatewayCompartment(
ChangeNatGatewayCompartmentRequest request) {
@@ -691,6 +797,77 @@ public ChangeNatGatewayCompartmentResponse changeNatGatewayCompartment(
});
}
+ @Override
+ public ChangeNetworkSecurityGroupCompartmentResponse changeNetworkSecurityGroupCompartment(
+ ChangeNetworkSecurityGroupCompartmentRequest request) {
+ LOG.trace("Called changeNetworkSecurityGroupCompartment");
+ final ChangeNetworkSecurityGroupCompartmentRequest interceptedRequest =
+ ChangeNetworkSecurityGroupCompartmentConverter.interceptRequest(request);
+ com.oracle.bmc.http.internal.WrappedInvocationBuilder ib =
+ ChangeNetworkSecurityGroupCompartmentConverter.fromRequest(
+ client, interceptedRequest);
+ com.google.common.base.Function<
+ javax.ws.rs.core.Response, ChangeNetworkSecurityGroupCompartmentResponse>
+ transformer = ChangeNetworkSecurityGroupCompartmentConverter.fromResponse();
+
+ final com.oracle.bmc.retrier.BmcGenericRetrier retrier =
+ com.oracle.bmc.retrier.Retriers.createPreferredRetrier(
+ interceptedRequest.getRetryConfiguration(), retryConfiguration);
+ return retrier.execute(
+ interceptedRequest,
+ retryRequest -> {
+ final com.oracle.bmc.retrier.TokenRefreshRetrier tokenRefreshRetrier =
+ new com.oracle.bmc.retrier.TokenRefreshRetrier(
+ authenticationDetailsProvider);
+ return tokenRefreshRetrier.execute(
+ retryRequest,
+ retriedRequest -> {
+ javax.ws.rs.core.Response response =
+ client.post(
+ ib,
+ retriedRequest
+ .getChangeNetworkSecurityGroupCompartmentDetails(),
+ retriedRequest);
+ return transformer.apply(response);
+ });
+ });
+ }
+
+ @Override
+ public ChangePublicIpCompartmentResponse changePublicIpCompartment(
+ ChangePublicIpCompartmentRequest request) {
+ LOG.trace("Called changePublicIpCompartment");
+ final ChangePublicIpCompartmentRequest interceptedRequest =
+ ChangePublicIpCompartmentConverter.interceptRequest(request);
+ com.oracle.bmc.http.internal.WrappedInvocationBuilder ib =
+ ChangePublicIpCompartmentConverter.fromRequest(client, interceptedRequest);
+ com.google.common.base.Function<
+ javax.ws.rs.core.Response, ChangePublicIpCompartmentResponse>
+ transformer = ChangePublicIpCompartmentConverter.fromResponse();
+
+ final com.oracle.bmc.retrier.BmcGenericRetrier retrier =
+ com.oracle.bmc.retrier.Retriers.createPreferredRetrier(
+ interceptedRequest.getRetryConfiguration(), retryConfiguration);
+ return retrier.execute(
+ interceptedRequest,
+ retryRequest -> {
+ final com.oracle.bmc.retrier.TokenRefreshRetrier tokenRefreshRetrier =
+ new com.oracle.bmc.retrier.TokenRefreshRetrier(
+ authenticationDetailsProvider);
+ return tokenRefreshRetrier.execute(
+ retryRequest,
+ retriedRequest -> {
+ javax.ws.rs.core.Response response =
+ client.post(
+ ib,
+ retriedRequest
+ .getChangePublicIpCompartmentDetails(),
+ retriedRequest);
+ return transformer.apply(response);
+ });
+ });
+ }
+
@Override
public ChangeRemotePeeringConnectionCompartmentResponse
changeRemotePeeringConnectionCompartment(
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/internal/http/ChangeDhcpOptionsCompartmentConverter.java b/bmc-core/src/main/java/com/oracle/bmc/core/internal/http/ChangeDhcpOptionsCompartmentConverter.java
new file mode 100644
index 00000000000..7d872fc99b0
--- /dev/null
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/internal/http/ChangeDhcpOptionsCompartmentConverter.java
@@ -0,0 +1,115 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+package com.oracle.bmc.core.internal.http;
+
+import com.oracle.bmc.http.internal.ResponseHelper;
+import com.oracle.bmc.core.model.*;
+import com.oracle.bmc.core.requests.*;
+import com.oracle.bmc.core.responses.*;
+import org.apache.commons.lang3.Validate;
+
+@javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918")
+@lombok.extern.slf4j.Slf4j
+public class ChangeDhcpOptionsCompartmentConverter {
+ private static final com.oracle.bmc.http.internal.ResponseConversionFunctionFactory
+ RESPONSE_CONVERSION_FACTORY =
+ new com.oracle.bmc.http.internal.ResponseConversionFunctionFactory();
+
+ public static ChangeDhcpOptionsCompartmentRequest interceptRequest(
+ ChangeDhcpOptionsCompartmentRequest request) {
+
+ return request;
+ }
+
+ public static com.oracle.bmc.http.internal.WrappedInvocationBuilder fromRequest(
+ com.oracle.bmc.http.internal.RestClient client,
+ ChangeDhcpOptionsCompartmentRequest request) {
+ Validate.notNull(request, "request instance is required");
+ Validate.notBlank(request.getDhcpId(), "dhcpId must not be blank");
+ Validate.notNull(
+ request.getChangeDhcpOptionsCompartmentDetails(),
+ "changeDhcpOptionsCompartmentDetails is required");
+
+ com.oracle.bmc.http.internal.WrappedWebTarget target =
+ client.getBaseTarget()
+ .path("/20160918")
+ .path("dhcps")
+ .path(
+ com.oracle.bmc.util.internal.HttpUtils.encodePathSegment(
+ request.getDhcpId()))
+ .path("actions")
+ .path("changeCompartment");
+
+ com.oracle.bmc.http.internal.WrappedInvocationBuilder ib = target.request();
+
+ ib.accept(javax.ws.rs.core.MediaType.APPLICATION_JSON);
+
+ if (request.getOpcRequestId() != null) {
+ ib.header("opc-request-id", request.getOpcRequestId());
+ }
+
+ if (request.getOpcRetryToken() != null) {
+ ib.header("opc-retry-token", request.getOpcRetryToken());
+ }
+
+ return ib;
+ }
+
+ public static com.google.common.base.Function<
+ javax.ws.rs.core.Response, ChangeDhcpOptionsCompartmentResponse>
+ fromResponse() {
+ final com.google.common.base.Function<
+ javax.ws.rs.core.Response, ChangeDhcpOptionsCompartmentResponse>
+ transformer =
+ new com.google.common.base.Function<
+ javax.ws.rs.core.Response, ChangeDhcpOptionsCompartmentResponse>() {
+ @Override
+ public ChangeDhcpOptionsCompartmentResponse apply(
+ javax.ws.rs.core.Response rawResponse) {
+ LOG.trace(
+ "Transform function invoked for ChangeDhcpOptionsCompartmentResponse");
+ com.google.common.base.Function<
+ javax.ws.rs.core.Response,
+ com.oracle.bmc.http.internal.WithHeaders>
+ responseFn = RESPONSE_CONVERSION_FACTORY.create();
+
+ com.oracle.bmc.http.internal.WithHeaders response =
+ responseFn.apply(rawResponse);
+ javax.ws.rs.core.MultivaluedMap headers =
+ response.getHeaders();
+
+ ChangeDhcpOptionsCompartmentResponse.Builder builder =
+ ChangeDhcpOptionsCompartmentResponse.builder();
+
+ com.google.common.base.Optional> etagHeader =
+ com.oracle.bmc.http.internal.HeaderUtils.get(
+ headers, "etag");
+ if (etagHeader.isPresent()) {
+ builder.etag(
+ com.oracle.bmc.http.internal.HeaderUtils.toValue(
+ "etag", etagHeader.get().get(0), String.class));
+ }
+
+ com.google.common.base.Optional>
+ opcRequestIdHeader =
+ com.oracle.bmc.http.internal.HeaderUtils.get(
+ headers, "opc-request-id");
+ if (opcRequestIdHeader.isPresent()) {
+ builder.opcRequestId(
+ com.oracle.bmc.http.internal.HeaderUtils.toValue(
+ "opc-request-id",
+ opcRequestIdHeader.get().get(0),
+ String.class));
+ }
+
+ ChangeDhcpOptionsCompartmentResponse responseWrapper =
+ builder.build();
+
+ ResponseHelper.closeResponseSilentlyIfNotBuffered(rawResponse);
+ return responseWrapper;
+ }
+ };
+ return transformer;
+ }
+}
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/internal/http/ChangeInternetGatewayCompartmentConverter.java b/bmc-core/src/main/java/com/oracle/bmc/core/internal/http/ChangeInternetGatewayCompartmentConverter.java
new file mode 100644
index 00000000000..f502ce6d503
--- /dev/null
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/internal/http/ChangeInternetGatewayCompartmentConverter.java
@@ -0,0 +1,116 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+package com.oracle.bmc.core.internal.http;
+
+import com.oracle.bmc.http.internal.ResponseHelper;
+import com.oracle.bmc.core.model.*;
+import com.oracle.bmc.core.requests.*;
+import com.oracle.bmc.core.responses.*;
+import org.apache.commons.lang3.Validate;
+
+@javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918")
+@lombok.extern.slf4j.Slf4j
+public class ChangeInternetGatewayCompartmentConverter {
+ private static final com.oracle.bmc.http.internal.ResponseConversionFunctionFactory
+ RESPONSE_CONVERSION_FACTORY =
+ new com.oracle.bmc.http.internal.ResponseConversionFunctionFactory();
+
+ public static ChangeInternetGatewayCompartmentRequest interceptRequest(
+ ChangeInternetGatewayCompartmentRequest request) {
+
+ return request;
+ }
+
+ public static com.oracle.bmc.http.internal.WrappedInvocationBuilder fromRequest(
+ com.oracle.bmc.http.internal.RestClient client,
+ ChangeInternetGatewayCompartmentRequest request) {
+ Validate.notNull(request, "request instance is required");
+ Validate.notBlank(request.getIgId(), "igId must not be blank");
+ Validate.notNull(
+ request.getChangeInternetGatewayCompartmentDetails(),
+ "changeInternetGatewayCompartmentDetails is required");
+
+ com.oracle.bmc.http.internal.WrappedWebTarget target =
+ client.getBaseTarget()
+ .path("/20160918")
+ .path("internetGateways")
+ .path(
+ com.oracle.bmc.util.internal.HttpUtils.encodePathSegment(
+ request.getIgId()))
+ .path("actions")
+ .path("changeCompartment");
+
+ com.oracle.bmc.http.internal.WrappedInvocationBuilder ib = target.request();
+
+ ib.accept(javax.ws.rs.core.MediaType.APPLICATION_JSON);
+
+ if (request.getOpcRequestId() != null) {
+ ib.header("opc-request-id", request.getOpcRequestId());
+ }
+
+ if (request.getOpcRetryToken() != null) {
+ ib.header("opc-retry-token", request.getOpcRetryToken());
+ }
+
+ return ib;
+ }
+
+ public static com.google.common.base.Function<
+ javax.ws.rs.core.Response, ChangeInternetGatewayCompartmentResponse>
+ fromResponse() {
+ final com.google.common.base.Function<
+ javax.ws.rs.core.Response, ChangeInternetGatewayCompartmentResponse>
+ transformer =
+ new com.google.common.base.Function<
+ javax.ws.rs.core.Response,
+ ChangeInternetGatewayCompartmentResponse>() {
+ @Override
+ public ChangeInternetGatewayCompartmentResponse apply(
+ javax.ws.rs.core.Response rawResponse) {
+ LOG.trace(
+ "Transform function invoked for ChangeInternetGatewayCompartmentResponse");
+ com.google.common.base.Function<
+ javax.ws.rs.core.Response,
+ com.oracle.bmc.http.internal.WithHeaders>
+ responseFn = RESPONSE_CONVERSION_FACTORY.create();
+
+ com.oracle.bmc.http.internal.WithHeaders response =
+ responseFn.apply(rawResponse);
+ javax.ws.rs.core.MultivaluedMap headers =
+ response.getHeaders();
+
+ ChangeInternetGatewayCompartmentResponse.Builder builder =
+ ChangeInternetGatewayCompartmentResponse.builder();
+
+ com.google.common.base.Optional> etagHeader =
+ com.oracle.bmc.http.internal.HeaderUtils.get(
+ headers, "etag");
+ if (etagHeader.isPresent()) {
+ builder.etag(
+ com.oracle.bmc.http.internal.HeaderUtils.toValue(
+ "etag", etagHeader.get().get(0), String.class));
+ }
+
+ com.google.common.base.Optional>
+ opcRequestIdHeader =
+ com.oracle.bmc.http.internal.HeaderUtils.get(
+ headers, "opc-request-id");
+ if (opcRequestIdHeader.isPresent()) {
+ builder.opcRequestId(
+ com.oracle.bmc.http.internal.HeaderUtils.toValue(
+ "opc-request-id",
+ opcRequestIdHeader.get().get(0),
+ String.class));
+ }
+
+ ChangeInternetGatewayCompartmentResponse responseWrapper =
+ builder.build();
+
+ ResponseHelper.closeResponseSilentlyIfNotBuffered(rawResponse);
+ return responseWrapper;
+ }
+ };
+ return transformer;
+ }
+}
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/internal/http/ChangeLocalPeeringGatewayCompartmentConverter.java b/bmc-core/src/main/java/com/oracle/bmc/core/internal/http/ChangeLocalPeeringGatewayCompartmentConverter.java
new file mode 100644
index 00000000000..09b49c4569c
--- /dev/null
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/internal/http/ChangeLocalPeeringGatewayCompartmentConverter.java
@@ -0,0 +1,117 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+package com.oracle.bmc.core.internal.http;
+
+import com.oracle.bmc.http.internal.ResponseHelper;
+import com.oracle.bmc.core.model.*;
+import com.oracle.bmc.core.requests.*;
+import com.oracle.bmc.core.responses.*;
+import org.apache.commons.lang3.Validate;
+
+@javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918")
+@lombok.extern.slf4j.Slf4j
+public class ChangeLocalPeeringGatewayCompartmentConverter {
+ private static final com.oracle.bmc.http.internal.ResponseConversionFunctionFactory
+ RESPONSE_CONVERSION_FACTORY =
+ new com.oracle.bmc.http.internal.ResponseConversionFunctionFactory();
+
+ public static ChangeLocalPeeringGatewayCompartmentRequest interceptRequest(
+ ChangeLocalPeeringGatewayCompartmentRequest request) {
+
+ return request;
+ }
+
+ public static com.oracle.bmc.http.internal.WrappedInvocationBuilder fromRequest(
+ com.oracle.bmc.http.internal.RestClient client,
+ ChangeLocalPeeringGatewayCompartmentRequest request) {
+ Validate.notNull(request, "request instance is required");
+ Validate.notBlank(
+ request.getLocalPeeringGatewayId(), "localPeeringGatewayId must not be blank");
+ Validate.notNull(
+ request.getChangeLocalPeeringGatewayCompartmentDetails(),
+ "changeLocalPeeringGatewayCompartmentDetails is required");
+
+ com.oracle.bmc.http.internal.WrappedWebTarget target =
+ client.getBaseTarget()
+ .path("/20160918")
+ .path("localPeeringGateways")
+ .path(
+ com.oracle.bmc.util.internal.HttpUtils.encodePathSegment(
+ request.getLocalPeeringGatewayId()))
+ .path("actions")
+ .path("changeCompartment");
+
+ com.oracle.bmc.http.internal.WrappedInvocationBuilder ib = target.request();
+
+ ib.accept(javax.ws.rs.core.MediaType.APPLICATION_JSON);
+
+ if (request.getOpcRequestId() != null) {
+ ib.header("opc-request-id", request.getOpcRequestId());
+ }
+
+ if (request.getOpcRetryToken() != null) {
+ ib.header("opc-retry-token", request.getOpcRetryToken());
+ }
+
+ return ib;
+ }
+
+ public static com.google.common.base.Function<
+ javax.ws.rs.core.Response, ChangeLocalPeeringGatewayCompartmentResponse>
+ fromResponse() {
+ final com.google.common.base.Function<
+ javax.ws.rs.core.Response, ChangeLocalPeeringGatewayCompartmentResponse>
+ transformer =
+ new com.google.common.base.Function<
+ javax.ws.rs.core.Response,
+ ChangeLocalPeeringGatewayCompartmentResponse>() {
+ @Override
+ public ChangeLocalPeeringGatewayCompartmentResponse apply(
+ javax.ws.rs.core.Response rawResponse) {
+ LOG.trace(
+ "Transform function invoked for ChangeLocalPeeringGatewayCompartmentResponse");
+ com.google.common.base.Function<
+ javax.ws.rs.core.Response,
+ com.oracle.bmc.http.internal.WithHeaders>
+ responseFn = RESPONSE_CONVERSION_FACTORY.create();
+
+ com.oracle.bmc.http.internal.WithHeaders response =
+ responseFn.apply(rawResponse);
+ javax.ws.rs.core.MultivaluedMap headers =
+ response.getHeaders();
+
+ ChangeLocalPeeringGatewayCompartmentResponse.Builder builder =
+ ChangeLocalPeeringGatewayCompartmentResponse.builder();
+
+ com.google.common.base.Optional> etagHeader =
+ com.oracle.bmc.http.internal.HeaderUtils.get(
+ headers, "etag");
+ if (etagHeader.isPresent()) {
+ builder.etag(
+ com.oracle.bmc.http.internal.HeaderUtils.toValue(
+ "etag", etagHeader.get().get(0), String.class));
+ }
+
+ com.google.common.base.Optional>
+ opcRequestIdHeader =
+ com.oracle.bmc.http.internal.HeaderUtils.get(
+ headers, "opc-request-id");
+ if (opcRequestIdHeader.isPresent()) {
+ builder.opcRequestId(
+ com.oracle.bmc.http.internal.HeaderUtils.toValue(
+ "opc-request-id",
+ opcRequestIdHeader.get().get(0),
+ String.class));
+ }
+
+ ChangeLocalPeeringGatewayCompartmentResponse responseWrapper =
+ builder.build();
+
+ ResponseHelper.closeResponseSilentlyIfNotBuffered(rawResponse);
+ return responseWrapper;
+ }
+ };
+ return transformer;
+ }
+}
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/internal/http/ChangeNetworkSecurityGroupCompartmentConverter.java b/bmc-core/src/main/java/com/oracle/bmc/core/internal/http/ChangeNetworkSecurityGroupCompartmentConverter.java
new file mode 100644
index 00000000000..c7d4f585c7e
--- /dev/null
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/internal/http/ChangeNetworkSecurityGroupCompartmentConverter.java
@@ -0,0 +1,117 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+package com.oracle.bmc.core.internal.http;
+
+import com.oracle.bmc.http.internal.ResponseHelper;
+import com.oracle.bmc.core.model.*;
+import com.oracle.bmc.core.requests.*;
+import com.oracle.bmc.core.responses.*;
+import org.apache.commons.lang3.Validate;
+
+@javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918")
+@lombok.extern.slf4j.Slf4j
+public class ChangeNetworkSecurityGroupCompartmentConverter {
+ private static final com.oracle.bmc.http.internal.ResponseConversionFunctionFactory
+ RESPONSE_CONVERSION_FACTORY =
+ new com.oracle.bmc.http.internal.ResponseConversionFunctionFactory();
+
+ public static ChangeNetworkSecurityGroupCompartmentRequest interceptRequest(
+ ChangeNetworkSecurityGroupCompartmentRequest request) {
+
+ return request;
+ }
+
+ public static com.oracle.bmc.http.internal.WrappedInvocationBuilder fromRequest(
+ com.oracle.bmc.http.internal.RestClient client,
+ ChangeNetworkSecurityGroupCompartmentRequest request) {
+ Validate.notNull(request, "request instance is required");
+ Validate.notBlank(
+ request.getNetworkSecurityGroupId(), "networkSecurityGroupId must not be blank");
+ Validate.notNull(
+ request.getChangeNetworkSecurityGroupCompartmentDetails(),
+ "changeNetworkSecurityGroupCompartmentDetails is required");
+
+ com.oracle.bmc.http.internal.WrappedWebTarget target =
+ client.getBaseTarget()
+ .path("/20160918")
+ .path("networkSecurityGroups")
+ .path(
+ com.oracle.bmc.util.internal.HttpUtils.encodePathSegment(
+ request.getNetworkSecurityGroupId()))
+ .path("actions")
+ .path("changeCompartment");
+
+ com.oracle.bmc.http.internal.WrappedInvocationBuilder ib = target.request();
+
+ ib.accept(javax.ws.rs.core.MediaType.APPLICATION_JSON);
+
+ if (request.getOpcRequestId() != null) {
+ ib.header("opc-request-id", request.getOpcRequestId());
+ }
+
+ if (request.getOpcRetryToken() != null) {
+ ib.header("opc-retry-token", request.getOpcRetryToken());
+ }
+
+ return ib;
+ }
+
+ public static com.google.common.base.Function<
+ javax.ws.rs.core.Response, ChangeNetworkSecurityGroupCompartmentResponse>
+ fromResponse() {
+ final com.google.common.base.Function<
+ javax.ws.rs.core.Response, ChangeNetworkSecurityGroupCompartmentResponse>
+ transformer =
+ new com.google.common.base.Function<
+ javax.ws.rs.core.Response,
+ ChangeNetworkSecurityGroupCompartmentResponse>() {
+ @Override
+ public ChangeNetworkSecurityGroupCompartmentResponse apply(
+ javax.ws.rs.core.Response rawResponse) {
+ LOG.trace(
+ "Transform function invoked for ChangeNetworkSecurityGroupCompartmentResponse");
+ com.google.common.base.Function<
+ javax.ws.rs.core.Response,
+ com.oracle.bmc.http.internal.WithHeaders>
+ responseFn = RESPONSE_CONVERSION_FACTORY.create();
+
+ com.oracle.bmc.http.internal.WithHeaders response =
+ responseFn.apply(rawResponse);
+ javax.ws.rs.core.MultivaluedMap headers =
+ response.getHeaders();
+
+ ChangeNetworkSecurityGroupCompartmentResponse.Builder builder =
+ ChangeNetworkSecurityGroupCompartmentResponse.builder();
+
+ com.google.common.base.Optional> etagHeader =
+ com.oracle.bmc.http.internal.HeaderUtils.get(
+ headers, "etag");
+ if (etagHeader.isPresent()) {
+ builder.etag(
+ com.oracle.bmc.http.internal.HeaderUtils.toValue(
+ "etag", etagHeader.get().get(0), String.class));
+ }
+
+ com.google.common.base.Optional>
+ opcRequestIdHeader =
+ com.oracle.bmc.http.internal.HeaderUtils.get(
+ headers, "opc-request-id");
+ if (opcRequestIdHeader.isPresent()) {
+ builder.opcRequestId(
+ com.oracle.bmc.http.internal.HeaderUtils.toValue(
+ "opc-request-id",
+ opcRequestIdHeader.get().get(0),
+ String.class));
+ }
+
+ ChangeNetworkSecurityGroupCompartmentResponse responseWrapper =
+ builder.build();
+
+ ResponseHelper.closeResponseSilentlyIfNotBuffered(rawResponse);
+ return responseWrapper;
+ }
+ };
+ return transformer;
+ }
+}
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/internal/http/ChangePublicIpCompartmentConverter.java b/bmc-core/src/main/java/com/oracle/bmc/core/internal/http/ChangePublicIpCompartmentConverter.java
new file mode 100644
index 00000000000..bcc0ffe5c51
--- /dev/null
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/internal/http/ChangePublicIpCompartmentConverter.java
@@ -0,0 +1,114 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+package com.oracle.bmc.core.internal.http;
+
+import com.oracle.bmc.http.internal.ResponseHelper;
+import com.oracle.bmc.core.model.*;
+import com.oracle.bmc.core.requests.*;
+import com.oracle.bmc.core.responses.*;
+import org.apache.commons.lang3.Validate;
+
+@javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918")
+@lombok.extern.slf4j.Slf4j
+public class ChangePublicIpCompartmentConverter {
+ private static final com.oracle.bmc.http.internal.ResponseConversionFunctionFactory
+ RESPONSE_CONVERSION_FACTORY =
+ new com.oracle.bmc.http.internal.ResponseConversionFunctionFactory();
+
+ public static ChangePublicIpCompartmentRequest interceptRequest(
+ ChangePublicIpCompartmentRequest request) {
+
+ return request;
+ }
+
+ public static com.oracle.bmc.http.internal.WrappedInvocationBuilder fromRequest(
+ com.oracle.bmc.http.internal.RestClient client,
+ ChangePublicIpCompartmentRequest request) {
+ Validate.notNull(request, "request instance is required");
+ Validate.notBlank(request.getPublicIpId(), "publicIpId must not be blank");
+ Validate.notNull(
+ request.getChangePublicIpCompartmentDetails(),
+ "changePublicIpCompartmentDetails is required");
+
+ com.oracle.bmc.http.internal.WrappedWebTarget target =
+ client.getBaseTarget()
+ .path("/20160918")
+ .path("publicIps")
+ .path(
+ com.oracle.bmc.util.internal.HttpUtils.encodePathSegment(
+ request.getPublicIpId()))
+ .path("actions")
+ .path("changeCompartment");
+
+ com.oracle.bmc.http.internal.WrappedInvocationBuilder ib = target.request();
+
+ ib.accept(javax.ws.rs.core.MediaType.APPLICATION_JSON);
+
+ if (request.getOpcRequestId() != null) {
+ ib.header("opc-request-id", request.getOpcRequestId());
+ }
+
+ if (request.getOpcRetryToken() != null) {
+ ib.header("opc-retry-token", request.getOpcRetryToken());
+ }
+
+ return ib;
+ }
+
+ public static com.google.common.base.Function<
+ javax.ws.rs.core.Response, ChangePublicIpCompartmentResponse>
+ fromResponse() {
+ final com.google.common.base.Function<
+ javax.ws.rs.core.Response, ChangePublicIpCompartmentResponse>
+ transformer =
+ new com.google.common.base.Function<
+ javax.ws.rs.core.Response, ChangePublicIpCompartmentResponse>() {
+ @Override
+ public ChangePublicIpCompartmentResponse apply(
+ javax.ws.rs.core.Response rawResponse) {
+ LOG.trace(
+ "Transform function invoked for ChangePublicIpCompartmentResponse");
+ com.google.common.base.Function<
+ javax.ws.rs.core.Response,
+ com.oracle.bmc.http.internal.WithHeaders>
+ responseFn = RESPONSE_CONVERSION_FACTORY.create();
+
+ com.oracle.bmc.http.internal.WithHeaders response =
+ responseFn.apply(rawResponse);
+ javax.ws.rs.core.MultivaluedMap headers =
+ response.getHeaders();
+
+ ChangePublicIpCompartmentResponse.Builder builder =
+ ChangePublicIpCompartmentResponse.builder();
+
+ com.google.common.base.Optional> etagHeader =
+ com.oracle.bmc.http.internal.HeaderUtils.get(
+ headers, "etag");
+ if (etagHeader.isPresent()) {
+ builder.etag(
+ com.oracle.bmc.http.internal.HeaderUtils.toValue(
+ "etag", etagHeader.get().get(0), String.class));
+ }
+
+ com.google.common.base.Optional>
+ opcRequestIdHeader =
+ com.oracle.bmc.http.internal.HeaderUtils.get(
+ headers, "opc-request-id");
+ if (opcRequestIdHeader.isPresent()) {
+ builder.opcRequestId(
+ com.oracle.bmc.http.internal.HeaderUtils.toValue(
+ "opc-request-id",
+ opcRequestIdHeader.get().get(0),
+ String.class));
+ }
+
+ ChangePublicIpCompartmentResponse responseWrapper = builder.build();
+
+ ResponseHelper.closeResponseSilentlyIfNotBuffered(rawResponse);
+ return responseWrapper;
+ }
+ };
+ return transformer;
+ }
+}
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/AddSecurityRuleDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/AddSecurityRuleDetails.java
index b32060af886..a3d3a842fb3 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/AddSecurityRuleDetails.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/AddSecurityRuleDetails.java
@@ -172,7 +172,7 @@ public static Builder builder() {
}
/**
- * An optional description of your choice for the rule.
+ * An optional description of your choice for the rule. Avoid entering confidential information.
*
**/
@com.fasterxml.jackson.annotation.JsonProperty("description")
@@ -185,6 +185,7 @@ public static Builder builder() {
* Allowed values:
*
* An IP address range in CIDR notation. For example: `192.168.1.0/24` or `2001:0db8:0123:45::/56`
+ * Note that IPv6 addressing is currently supported only in the Government Cloud.
*
* The `cidrBlock` value for a {@link Service}, if you're
* setting up a security rule for traffic destined for a particular `Service` through
@@ -347,6 +348,7 @@ public static Direction create(String key) {
* Allowed values:
*
* An IP address range in CIDR notation. For example: `192.168.1.0/24` or `2001:0db8:0123:45::/56`
+ * Note that IPv6 addressing is currently supported only in the Government Cloud.
*
* The `cidrBlock` value for a {@link Service}, if you're
* setting up a security rule for traffic coming from a particular `Service` through
@@ -368,7 +370,7 @@ public static Direction create(String key) {
* {@link Service} (the rule is for traffic coming from a
* particular `Service` through a service gateway).
*
- * `NETWORK_SECURITY_GROUP`: If the rule's `destination` is the OCID of a
+ * `NETWORK_SECURITY_GROUP`: If the rule's `source` is the OCID of a
* {@link NetworkSecurityGroup}.
*
**/
@@ -414,7 +416,7 @@ public static SourceType create(String key) {
* {@link Service} (the rule is for traffic coming from a
* particular `Service` through a service gateway).
*
- * `NETWORK_SECURITY_GROUP`: If the rule's `destination` is the OCID of a
+ * `NETWORK_SECURITY_GROUP`: If the rule's `source` is the OCID of a
* {@link NetworkSecurityGroup}.
*
**/
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/AttachVnicDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/AttachVnicDetails.java
index 353b96658fd..9a7c2f95c34 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/AttachVnicDetails.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/AttachVnicDetails.java
@@ -99,6 +99,7 @@ public static Builder builder() {
/**
* A user-friendly name for the attachment. Does not have to be unique, and it cannot be changed.
+ * Avoid entering confidential information.
*
**/
@com.fasterxml.jackson.annotation.JsonProperty("displayName")
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/CaptureConsoleHistoryDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/CaptureConsoleHistoryDetails.java
index 57433890286..d2a7879f03f 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/CaptureConsoleHistoryDetails.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/CaptureConsoleHistoryDetails.java
@@ -104,6 +104,7 @@ public static Builder builder() {
/**
* A user-friendly name. Does not have to be unique, and it's changeable.
+ * Avoid entering confidential information.
*
**/
@com.fasterxml.jackson.annotation.JsonProperty("displayName")
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/ChangeDhcpOptionsCompartmentDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/ChangeDhcpOptionsCompartmentDetails.java
new file mode 100644
index 00000000000..b4216b994b3
--- /dev/null
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/ChangeDhcpOptionsCompartmentDetails.java
@@ -0,0 +1,72 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+package com.oracle.bmc.core.model;
+
+/**
+ * The configuration details for the move operation.
+ *
+ * Note: Objects should always be created or deserialized using the {@link Builder}. This model distinguishes fields
+ * that are {@code null} because they are unset from fields that are explicitly set to {@code null}. This is done in
+ * the setter methods of the {@link Builder}, which maintain a set of all explicitly set fields called
+ * {@link #__explicitlySet__}. The {@link #hashCode()} and {@link #equals(Object)} methods are implemented to take
+ * {@link #__explicitlySet__} into account. The constructor, on the other hand, does not set {@link #__explicitlySet__}
+ * (since the constructor cannot distinguish explicit {@code null} from unset {@code null}).
+ **/
+@javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918")
+@lombok.AllArgsConstructor(onConstructor = @__({@Deprecated}))
+@lombok.Value
+@com.fasterxml.jackson.databind.annotation.JsonDeserialize(
+ builder = ChangeDhcpOptionsCompartmentDetails.Builder.class
+)
+@com.fasterxml.jackson.annotation.JsonFilter(com.oracle.bmc.http.internal.ExplicitlySetFilter.NAME)
+public class ChangeDhcpOptionsCompartmentDetails {
+ @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "")
+ @lombok.experimental.Accessors(fluent = true)
+ public static class Builder {
+ @com.fasterxml.jackson.annotation.JsonProperty("compartmentId")
+ private String compartmentId;
+
+ public Builder compartmentId(String compartmentId) {
+ this.compartmentId = compartmentId;
+ this.__explicitlySet__.add("compartmentId");
+ return this;
+ }
+
+ @com.fasterxml.jackson.annotation.JsonIgnore
+ private final java.util.Set __explicitlySet__ = new java.util.HashSet();
+
+ public ChangeDhcpOptionsCompartmentDetails build() {
+ ChangeDhcpOptionsCompartmentDetails __instance__ =
+ new ChangeDhcpOptionsCompartmentDetails(compartmentId);
+ __instance__.__explicitlySet__.addAll(__explicitlySet__);
+ return __instance__;
+ }
+
+ @com.fasterxml.jackson.annotation.JsonIgnore
+ public Builder copy(ChangeDhcpOptionsCompartmentDetails o) {
+ Builder copiedBuilder = compartmentId(o.getCompartmentId());
+
+ copiedBuilder.__explicitlySet__.retainAll(o.__explicitlySet__);
+ return copiedBuilder;
+ }
+ }
+
+ /**
+ * Create a new builder.
+ */
+ public static Builder builder() {
+ return new Builder();
+ }
+
+ /**
+ * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the compartment to move the
+ * set of DHCP options to.
+ *
+ **/
+ @com.fasterxml.jackson.annotation.JsonProperty("compartmentId")
+ String compartmentId;
+
+ @com.fasterxml.jackson.annotation.JsonIgnore
+ private final java.util.Set __explicitlySet__ = new java.util.HashSet();
+}
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/ChangeInternetGatewayCompartmentDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/ChangeInternetGatewayCompartmentDetails.java
new file mode 100644
index 00000000000..e95da306aa8
--- /dev/null
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/ChangeInternetGatewayCompartmentDetails.java
@@ -0,0 +1,72 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+package com.oracle.bmc.core.model;
+
+/**
+ * The configuration details for the move operation.
+ *
+ * Note: Objects should always be created or deserialized using the {@link Builder}. This model distinguishes fields
+ * that are {@code null} because they are unset from fields that are explicitly set to {@code null}. This is done in
+ * the setter methods of the {@link Builder}, which maintain a set of all explicitly set fields called
+ * {@link #__explicitlySet__}. The {@link #hashCode()} and {@link #equals(Object)} methods are implemented to take
+ * {@link #__explicitlySet__} into account. The constructor, on the other hand, does not set {@link #__explicitlySet__}
+ * (since the constructor cannot distinguish explicit {@code null} from unset {@code null}).
+ **/
+@javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918")
+@lombok.AllArgsConstructor(onConstructor = @__({@Deprecated}))
+@lombok.Value
+@com.fasterxml.jackson.databind.annotation.JsonDeserialize(
+ builder = ChangeInternetGatewayCompartmentDetails.Builder.class
+)
+@com.fasterxml.jackson.annotation.JsonFilter(com.oracle.bmc.http.internal.ExplicitlySetFilter.NAME)
+public class ChangeInternetGatewayCompartmentDetails {
+ @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "")
+ @lombok.experimental.Accessors(fluent = true)
+ public static class Builder {
+ @com.fasterxml.jackson.annotation.JsonProperty("compartmentId")
+ private String compartmentId;
+
+ public Builder compartmentId(String compartmentId) {
+ this.compartmentId = compartmentId;
+ this.__explicitlySet__.add("compartmentId");
+ return this;
+ }
+
+ @com.fasterxml.jackson.annotation.JsonIgnore
+ private final java.util.Set __explicitlySet__ = new java.util.HashSet();
+
+ public ChangeInternetGatewayCompartmentDetails build() {
+ ChangeInternetGatewayCompartmentDetails __instance__ =
+ new ChangeInternetGatewayCompartmentDetails(compartmentId);
+ __instance__.__explicitlySet__.addAll(__explicitlySet__);
+ return __instance__;
+ }
+
+ @com.fasterxml.jackson.annotation.JsonIgnore
+ public Builder copy(ChangeInternetGatewayCompartmentDetails o) {
+ Builder copiedBuilder = compartmentId(o.getCompartmentId());
+
+ copiedBuilder.__explicitlySet__.retainAll(o.__explicitlySet__);
+ return copiedBuilder;
+ }
+ }
+
+ /**
+ * Create a new builder.
+ */
+ public static Builder builder() {
+ return new Builder();
+ }
+
+ /**
+ * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the compartment to move the
+ * internet gateway to.
+ *
+ **/
+ @com.fasterxml.jackson.annotation.JsonProperty("compartmentId")
+ String compartmentId;
+
+ @com.fasterxml.jackson.annotation.JsonIgnore
+ private final java.util.Set __explicitlySet__ = new java.util.HashSet();
+}
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/ChangeLocalPeeringGatewayCompartmentDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/ChangeLocalPeeringGatewayCompartmentDetails.java
new file mode 100644
index 00000000000..ca23793d021
--- /dev/null
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/ChangeLocalPeeringGatewayCompartmentDetails.java
@@ -0,0 +1,72 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+package com.oracle.bmc.core.model;
+
+/**
+ * The configuration details for the move operation.
+ *
+ * Note: Objects should always be created or deserialized using the {@link Builder}. This model distinguishes fields
+ * that are {@code null} because they are unset from fields that are explicitly set to {@code null}. This is done in
+ * the setter methods of the {@link Builder}, which maintain a set of all explicitly set fields called
+ * {@link #__explicitlySet__}. The {@link #hashCode()} and {@link #equals(Object)} methods are implemented to take
+ * {@link #__explicitlySet__} into account. The constructor, on the other hand, does not set {@link #__explicitlySet__}
+ * (since the constructor cannot distinguish explicit {@code null} from unset {@code null}).
+ **/
+@javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918")
+@lombok.AllArgsConstructor(onConstructor = @__({@Deprecated}))
+@lombok.Value
+@com.fasterxml.jackson.databind.annotation.JsonDeserialize(
+ builder = ChangeLocalPeeringGatewayCompartmentDetails.Builder.class
+)
+@com.fasterxml.jackson.annotation.JsonFilter(com.oracle.bmc.http.internal.ExplicitlySetFilter.NAME)
+public class ChangeLocalPeeringGatewayCompartmentDetails {
+ @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "")
+ @lombok.experimental.Accessors(fluent = true)
+ public static class Builder {
+ @com.fasterxml.jackson.annotation.JsonProperty("compartmentId")
+ private String compartmentId;
+
+ public Builder compartmentId(String compartmentId) {
+ this.compartmentId = compartmentId;
+ this.__explicitlySet__.add("compartmentId");
+ return this;
+ }
+
+ @com.fasterxml.jackson.annotation.JsonIgnore
+ private final java.util.Set __explicitlySet__ = new java.util.HashSet();
+
+ public ChangeLocalPeeringGatewayCompartmentDetails build() {
+ ChangeLocalPeeringGatewayCompartmentDetails __instance__ =
+ new ChangeLocalPeeringGatewayCompartmentDetails(compartmentId);
+ __instance__.__explicitlySet__.addAll(__explicitlySet__);
+ return __instance__;
+ }
+
+ @com.fasterxml.jackson.annotation.JsonIgnore
+ public Builder copy(ChangeLocalPeeringGatewayCompartmentDetails o) {
+ Builder copiedBuilder = compartmentId(o.getCompartmentId());
+
+ copiedBuilder.__explicitlySet__.retainAll(o.__explicitlySet__);
+ return copiedBuilder;
+ }
+ }
+
+ /**
+ * Create a new builder.
+ */
+ public static Builder builder() {
+ return new Builder();
+ }
+
+ /**
+ * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the compartment to move the
+ * local peering gateway to.
+ *
+ **/
+ @com.fasterxml.jackson.annotation.JsonProperty("compartmentId")
+ String compartmentId;
+
+ @com.fasterxml.jackson.annotation.JsonIgnore
+ private final java.util.Set __explicitlySet__ = new java.util.HashSet();
+}
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/ChangeNetworkSecurityGroupCompartmentDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/ChangeNetworkSecurityGroupCompartmentDetails.java
new file mode 100644
index 00000000000..94c01edff74
--- /dev/null
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/ChangeNetworkSecurityGroupCompartmentDetails.java
@@ -0,0 +1,72 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+package com.oracle.bmc.core.model;
+
+/**
+ *
+ *
+ * Note: Objects should always be created or deserialized using the {@link Builder}. This model distinguishes fields
+ * that are {@code null} because they are unset from fields that are explicitly set to {@code null}. This is done in
+ * the setter methods of the {@link Builder}, which maintain a set of all explicitly set fields called
+ * {@link #__explicitlySet__}. The {@link #hashCode()} and {@link #equals(Object)} methods are implemented to take
+ * {@link #__explicitlySet__} into account. The constructor, on the other hand, does not set {@link #__explicitlySet__}
+ * (since the constructor cannot distinguish explicit {@code null} from unset {@code null}).
+ **/
+@javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918")
+@lombok.AllArgsConstructor(onConstructor = @__({@Deprecated}))
+@lombok.Value
+@com.fasterxml.jackson.databind.annotation.JsonDeserialize(
+ builder = ChangeNetworkSecurityGroupCompartmentDetails.Builder.class
+)
+@com.fasterxml.jackson.annotation.JsonFilter(com.oracle.bmc.http.internal.ExplicitlySetFilter.NAME)
+public class ChangeNetworkSecurityGroupCompartmentDetails {
+ @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "")
+ @lombok.experimental.Accessors(fluent = true)
+ public static class Builder {
+ @com.fasterxml.jackson.annotation.JsonProperty("compartmentId")
+ private String compartmentId;
+
+ public Builder compartmentId(String compartmentId) {
+ this.compartmentId = compartmentId;
+ this.__explicitlySet__.add("compartmentId");
+ return this;
+ }
+
+ @com.fasterxml.jackson.annotation.JsonIgnore
+ private final java.util.Set __explicitlySet__ = new java.util.HashSet();
+
+ public ChangeNetworkSecurityGroupCompartmentDetails build() {
+ ChangeNetworkSecurityGroupCompartmentDetails __instance__ =
+ new ChangeNetworkSecurityGroupCompartmentDetails(compartmentId);
+ __instance__.__explicitlySet__.addAll(__explicitlySet__);
+ return __instance__;
+ }
+
+ @com.fasterxml.jackson.annotation.JsonIgnore
+ public Builder copy(ChangeNetworkSecurityGroupCompartmentDetails o) {
+ Builder copiedBuilder = compartmentId(o.getCompartmentId());
+
+ copiedBuilder.__explicitlySet__.retainAll(o.__explicitlySet__);
+ return copiedBuilder;
+ }
+ }
+
+ /**
+ * Create a new builder.
+ */
+ public static Builder builder() {
+ return new Builder();
+ }
+
+ /**
+ * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the compartment to move the network
+ * security group to.
+ *
+ **/
+ @com.fasterxml.jackson.annotation.JsonProperty("compartmentId")
+ String compartmentId;
+
+ @com.fasterxml.jackson.annotation.JsonIgnore
+ private final java.util.Set __explicitlySet__ = new java.util.HashSet();
+}
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/ChangePublicIpCompartmentDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/ChangePublicIpCompartmentDetails.java
new file mode 100644
index 00000000000..247c4f0d225
--- /dev/null
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/ChangePublicIpCompartmentDetails.java
@@ -0,0 +1,72 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+package com.oracle.bmc.core.model;
+
+/**
+ * The configuration details for the move operation.
+ *
+ * Note: Objects should always be created or deserialized using the {@link Builder}. This model distinguishes fields
+ * that are {@code null} because they are unset from fields that are explicitly set to {@code null}. This is done in
+ * the setter methods of the {@link Builder}, which maintain a set of all explicitly set fields called
+ * {@link #__explicitlySet__}. The {@link #hashCode()} and {@link #equals(Object)} methods are implemented to take
+ * {@link #__explicitlySet__} into account. The constructor, on the other hand, does not set {@link #__explicitlySet__}
+ * (since the constructor cannot distinguish explicit {@code null} from unset {@code null}).
+ **/
+@javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918")
+@lombok.AllArgsConstructor(onConstructor = @__({@Deprecated}))
+@lombok.Value
+@com.fasterxml.jackson.databind.annotation.JsonDeserialize(
+ builder = ChangePublicIpCompartmentDetails.Builder.class
+)
+@com.fasterxml.jackson.annotation.JsonFilter(com.oracle.bmc.http.internal.ExplicitlySetFilter.NAME)
+public class ChangePublicIpCompartmentDetails {
+ @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "")
+ @lombok.experimental.Accessors(fluent = true)
+ public static class Builder {
+ @com.fasterxml.jackson.annotation.JsonProperty("compartmentId")
+ private String compartmentId;
+
+ public Builder compartmentId(String compartmentId) {
+ this.compartmentId = compartmentId;
+ this.__explicitlySet__.add("compartmentId");
+ return this;
+ }
+
+ @com.fasterxml.jackson.annotation.JsonIgnore
+ private final java.util.Set __explicitlySet__ = new java.util.HashSet();
+
+ public ChangePublicIpCompartmentDetails build() {
+ ChangePublicIpCompartmentDetails __instance__ =
+ new ChangePublicIpCompartmentDetails(compartmentId);
+ __instance__.__explicitlySet__.addAll(__explicitlySet__);
+ return __instance__;
+ }
+
+ @com.fasterxml.jackson.annotation.JsonIgnore
+ public Builder copy(ChangePublicIpCompartmentDetails o) {
+ Builder copiedBuilder = compartmentId(o.getCompartmentId());
+
+ copiedBuilder.__explicitlySet__.retainAll(o.__explicitlySet__);
+ return copiedBuilder;
+ }
+ }
+
+ /**
+ * Create a new builder.
+ */
+ public static Builder builder() {
+ return new Builder();
+ }
+
+ /**
+ * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the compartment to move the
+ * public IP to.
+ *
+ **/
+ @com.fasterxml.jackson.annotation.JsonProperty("compartmentId")
+ String compartmentId;
+
+ @com.fasterxml.jackson.annotation.JsonIgnore
+ private final java.util.Set __explicitlySet__ = new java.util.HashSet();
+}
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateDrgAttachmentDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateDrgAttachmentDetails.java
index 53cef77acbd..292514948fb 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateDrgAttachmentDetails.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateDrgAttachmentDetails.java
@@ -109,8 +109,10 @@ public static Builder builder() {
* table. The Networking service does NOT automatically associate the attached VCN's default route table
* with the DRG attachment.
*
- * For information about why you would associate a route table with a DRG attachment, see
- * [Advanced Scenario: Transit Routing](https://docs.cloud.oracle.com/Content/Network/Tasks/transitrouting.htm).
+ * For information about why you would associate a route table with a DRG attachment, see:
+ *
+ * [Transit Routing: Access to Multiple VCNs in Same Region](https://docs.cloud.oracle.com/Content/Network/Tasks/transitrouting.htm)
+ * * [Transit Routing: Private Access to Oracle Services](https://docs.cloud.oracle.com/Content/Network/Tasks/transitroutingoracleservices.htm)
*
**/
@com.fasterxml.jackson.annotation.JsonProperty("routeTableId")
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateImageDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateImageDetails.java
index 35a3b4092ce..1616055683b 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateImageDetails.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateImageDetails.java
@@ -129,7 +129,7 @@ public static Builder builder() {
}
/**
- * The OCID of the compartment containing the instance you want to use as the basis for the image.
+ * The OCID of the compartment you want the image to be created in.
**/
@com.fasterxml.jackson.annotation.JsonProperty("compartmentId")
String compartmentId;
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateInstanceConfigurationBase.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateInstanceConfigurationBase.java
index d28a46ead14..c080e4ef910 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateInstanceConfigurationBase.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateInstanceConfigurationBase.java
@@ -4,7 +4,7 @@
package com.oracle.bmc.core.model;
/**
- * An instance configuration that can be used to launch
+ * Creation details for an instance configuration.
*
*
* Note: Objects should always be created or deserialized using the {@link Builder}. This model distinguishes fields
@@ -41,7 +41,8 @@
public class CreateInstanceConfigurationBase {
/**
- * The OCID of the compartment containing the instance configuration.
+ * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment
+ * containing the instance configuration.
*
**/
@com.fasterxml.jackson.annotation.JsonProperty("compartmentId")
@@ -58,7 +59,8 @@ public class CreateInstanceConfigurationBase {
java.util.Map> definedTags;
/**
- * A user-friendly name for the instance configuration
+ * A user-friendly name for the instance configuration. Does not have to be unique,
+ * and it's changeable. Avoid entering confidential information.
*
**/
@com.fasterxml.jackson.annotation.JsonProperty("displayName")
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateInstanceConfigurationDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateInstanceConfigurationDetails.java
index 028d99e7790..c5872b8f364 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateInstanceConfigurationDetails.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateInstanceConfigurationDetails.java
@@ -4,7 +4,7 @@
package com.oracle.bmc.core.model;
/**
- * Create an instance configuration from API input.
+ * Details for creating an instance configuration by providing a list of configuration settings.
*
*
* Note: Objects should always be created or deserialized using the {@link Builder}. This model distinguishes fields
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateInstanceConfigurationFromInstanceDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateInstanceConfigurationFromInstanceDetails.java
index 060c8c3d2c7..de077190ffa 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateInstanceConfigurationFromInstanceDetails.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateInstanceConfigurationFromInstanceDetails.java
@@ -4,7 +4,7 @@
package com.oracle.bmc.core.model;
/**
- * Create an instance configuration from an existing instance.
+ * Details for creating an instance configuration using an existing instance as a template.
*
*
* Note: Objects should always be created or deserialized using the {@link Builder}. This model distinguishes fields
@@ -122,7 +122,8 @@ public CreateInstanceConfigurationFromInstanceDetails(
}
/**
- * The ID of the instance that will be used to create instance configuration.
+ * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the instance to use to create the
+ * instance configuration.
*
**/
@com.fasterxml.jackson.annotation.JsonProperty("instanceId")
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateInstancePoolDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateInstancePoolDetails.java
index 3cbf6a640e1..b6e249ee7ea 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateInstancePoolDetails.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateInstancePoolDetails.java
@@ -159,7 +159,9 @@ public static Builder builder() {
java.util.Map> definedTags;
/**
- * The user-friendly name. Does not have to be unique.
+ * A user-friendly name for the instance pool. Does not have to be unique, and it's
+ * changeable. Avoid entering confidential information.
+ *
**/
@com.fasterxml.jackson.annotation.JsonProperty("displayName")
String displayName;
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateLocalPeeringGatewayDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateLocalPeeringGatewayDetails.java
index b5b9c5ee5f9..00e814fa0d8 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateLocalPeeringGatewayDetails.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateLocalPeeringGatewayDetails.java
@@ -159,7 +159,7 @@ public static Builder builder() {
* with the LPG.
*
* For information about why you would associate a route table with an LPG, see
- * [Advanced Scenario: Transit Routing](https://docs.cloud.oracle.com/Content/Network/Tasks/transitrouting.htm).
+ * [Transit Routing: Access to Multiple VCNs in Same Region](https://docs.cloud.oracle.com/Content/Network/Tasks/transitrouting.htm).
*
**/
@com.fasterxml.jackson.annotation.JsonProperty("routeTableId")
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateServiceGatewayDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateServiceGatewayDetails.java
index 3ead7ef0807..4de7d7a218a 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateServiceGatewayDetails.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateServiceGatewayDetails.java
@@ -171,7 +171,7 @@ public static Builder builder() {
* with the service gateway.
*
* For information about why you would associate a route table with a service gateway, see
- * [Transit Routing: Private Access to Oracle Services Network](https://docs.cloud.oracle.com/Content/Network/Tasks/transitroutingoracleservices.htm).
+ * [Transit Routing: Private Access to Oracle Services](https://docs.cloud.oracle.com/Content/Network/Tasks/transitroutingoracleservices.htm).
*
**/
@com.fasterxml.jackson.annotation.JsonProperty("routeTableId")
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateVolumeGroupBackupDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateVolumeGroupBackupDetails.java
index 13a2f2c3f21..f8955602506 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateVolumeGroupBackupDetails.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateVolumeGroupBackupDetails.java
@@ -134,7 +134,9 @@ public static Builder builder() {
java.util.Map> definedTags;
/**
- * A user-friendly name for the volume group backup. Does not have to be unique and it's changeable.
+ * A user-friendly name for the volume group backup. Does not have
+ * to be unique and it's changeable. Avoid entering confidential information.
+ *
**/
@com.fasterxml.jackson.annotation.JsonProperty("displayName")
String displayName;
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateVolumeGroupDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateVolumeGroupDetails.java
index af5dd096d7c..9d7a11cdf94 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateVolumeGroupDetails.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/CreateVolumeGroupDetails.java
@@ -140,7 +140,7 @@ public static Builder builder() {
java.util.Map> definedTags;
/**
- * A user-friendly name for the volume group. Does not have to be unique, and it's changeable.
+ * A user-friendly name for the volume group. Does not have to be unique, and it's changeable. Avoid entering confidential information.
**/
@com.fasterxml.jackson.annotation.JsonProperty("displayName")
String displayName;
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/CrossConnectMapping.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/CrossConnectMapping.java
index 2dceea033a3..568d3f4f06c 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/CrossConnectMapping.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/CrossConnectMapping.java
@@ -214,6 +214,8 @@ public static Builder builder() {
*
* There's one exception: for a public virtual circuit, Oracle specifies the BGP IPv6 addresses.
*
+ * Note that IPv6 addressing is currently supported only in the Government Cloud.
+ *
* Example: `2001:db8::1/64`
*
**/
@@ -228,6 +230,8 @@ public static Builder builder() {
*
* There's one exception: for a public virtual circuit, Oracle specifies the BGP IPv6 addresses.
*
+ * Note that IPv6 addressing is currently supported only in the Government Cloud.
+ *
* Example: `2001:db8::2/64`
*
**/
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/DrgAttachment.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/DrgAttachment.java
index f7dcf37ee3a..4a716225539 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/DrgAttachment.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/DrgAttachment.java
@@ -221,9 +221,12 @@ public static LifecycleState create(String key) {
LifecycleState lifecycleState;
/**
- * The OCID of the route table the DRG attachment is using. For information about why you
- * would associate a route table with a DRG attachment, see
- * [Advanced Scenario: Transit Routing](https://docs.cloud.oracle.com/Content/Network/Tasks/transitrouting.htm).
+ * The OCID of the route table the DRG attachment is using.
+ *
+ * For information about why you would associate a route table with a DRG attachment, see:
+ *
+ * [Transit Routing: Access to Multiple VCNs in Same Region](https://docs.cloud.oracle.com/Content/Network/Tasks/transitrouting.htm)
+ * * [Transit Routing: Private Access to Oracle Services](https://docs.cloud.oracle.com/Content/Network/Tasks/transitroutingoracleservices.htm)
*
**/
@com.fasterxml.jackson.annotation.JsonProperty("routeTableId")
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/EgressSecurityRule.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/EgressSecurityRule.java
index 23c0f936479..6c36f46bd25 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/EgressSecurityRule.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/EgressSecurityRule.java
@@ -134,6 +134,7 @@ public static Builder builder() {
* Allowed values:
*
* IP address range in CIDR notation. For example: `192.168.1.0/24` or `2001:0db8:0123:45::/56`
+ * Note that IPv6 addressing is currently supported only in the Government Cloud.
*
* The `cidrBlock` value for a {@link Service}, if you're
* setting up a security list rule for traffic destined for a particular `Service` through
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/Image.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/Image.java
index e8e03f309e2..ae7f1e005a5 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/Image.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/Image.java
@@ -239,6 +239,7 @@ public static Builder builder() {
/**
* Whether instances launched with this image can be used to create new images.
* For example, you cannot create an image of an Oracle Database instance.
+ *
* Example: `true`
*
**/
@@ -258,6 +259,7 @@ public static Builder builder() {
/**
* A user-friendly name for the image. It does not have to be unique, and it's changeable.
* Avoid entering confidential information.
+ *
* You cannot use an Oracle-provided image name as a custom image name.
*
* Example: `My custom Oracle Linux image`
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/IngressSecurityRule.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/IngressSecurityRule.java
index b9f0ac99661..c5d889a7952 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/IngressSecurityRule.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/IngressSecurityRule.java
@@ -171,7 +171,8 @@ public static Builder builder() {
*
* Allowed values:
*
- * IP address range in CIDR notation. For example: `192.168.1.0/24` or `2001:0db8:0123:45::/56`
+ * IP address range in CIDR notation. For example: `192.168.1.0/24` or `2001:0db8:0123:45::/56`.
+ * Note that IPv6 addressing is currently supported only in the Government Cloud.
*
* The `cidrBlock` value for a {@link Service}, if you're
* setting up a security list rule for traffic coming from a particular `Service` through
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/InstanceConfiguration.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/InstanceConfiguration.java
index 9c5c6e9386e..1e2d4030c8d 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/InstanceConfiguration.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/InstanceConfiguration.java
@@ -4,8 +4,8 @@
package com.oracle.bmc.core.model;
/**
- * An instance configuration is a template that defines the settings to use when creating Compute instances
- * as part of an instance pool. For more information about instance pools and instance configurations, see
+ * An instance configuration is a template that defines the settings to use when creating Compute instances.
+ * For more information about instance configurations, see
* [Managing Compute Instances](https://docs.cloud.oracle.com/Content/Compute/Concepts/instancemanagement.htm).
*
*
@@ -143,7 +143,8 @@ public static Builder builder() {
}
/**
- * The OCID of the compartment containing the instance configuration.
+ * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment
+ * containing the instance configuration.
*
**/
@com.fasterxml.jackson.annotation.JsonProperty("compartmentId")
@@ -160,7 +161,7 @@ public static Builder builder() {
java.util.Map> definedTags;
/**
- * A user-friendly name for the instance configuration
+ * A user-friendly name for the instance configuration.
*
**/
@com.fasterxml.jackson.annotation.JsonProperty("displayName")
@@ -177,7 +178,7 @@ public static Builder builder() {
java.util.Map freeformTags;
/**
- * The OCID of the instance configuration
+ * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the instance configuration.
**/
@com.fasterxml.jackson.annotation.JsonProperty("id")
String id;
@@ -186,8 +187,9 @@ public static Builder builder() {
InstanceConfigurationInstanceDetails instanceDetails;
/**
- * The required details when using the {@link #launchInstanceConfiguration(LaunchInstanceConfigurationRequest) launchInstanceConfiguration} operation.
- * These attributes are optional when using the {@link #createInstanceConfiguration(CreateInstanceConfigurationRequest) createInstanceConfiguration} operation.
+ * Parameters that were not specified when the instance configuration was created, but that
+ * are required to launch an instance from the instance configuration. See the
+ * {@link #launchInstanceConfiguration(LaunchInstanceConfigurationRequest) launchInstanceConfiguration} operation.
*
**/
@com.fasterxml.jackson.annotation.JsonProperty("deferredFields")
@@ -195,6 +197,7 @@ public static Builder builder() {
/**
* The date and time the instance configuration was created, in the format defined by RFC3339.
+ *
* Example: `2016-08-25T21:10:29.600Z`
*
**/
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/Ipv6.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/Ipv6.java
index e1ff4ceb47c..666ba317594 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/Ipv6.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/Ipv6.java
@@ -10,6 +10,8 @@
* You can create and assign an IPv6 to any VNIC that is in an IPv6-enabled subnet in an
* IPv6-enabled VCN.
*
+ **Note:** IPv6 addressing is currently supported only in the Government Cloud.
+ *
* For important details about IPv6 addressing in a VCN, see [IPv6 Addresses](https://docs.cloud.oracle.com/Content/Network/Concepts/ipv6.htm).
*
*
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/LaunchOptions.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/LaunchOptions.java
index bf0a6e645cd..a3dc7430dde 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/LaunchOptions.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/LaunchOptions.java
@@ -248,9 +248,10 @@ public static Firmware create(String key) {
@com.fasterxml.jackson.annotation.JsonProperty("firmware")
Firmware firmware;
/**
- * Emulation type for NIC.
+ * Emulation type for the physical network interface card (NIC).
* * `E1000` - Emulated Gigabit ethernet controller. Compatible with Linux e1000 network driver.
- * * `VFIO` - Direct attached Virtual Function network controller. Default for Oracle provided images.
+ * * `VFIO` - Direct attached Virtual Function network controller. This is the networking type
+ * when you launch an instance using hardware-assisted (SR-IOV) networking.
* * `PARAVIRTUALIZED` - VM instances launch with paravirtualized devices using virtio drivers.
*
**/
@@ -299,9 +300,10 @@ public static NetworkType create(String key) {
}
};
/**
- * Emulation type for NIC.
+ * Emulation type for the physical network interface card (NIC).
* * `E1000` - Emulated Gigabit ethernet controller. Compatible with Linux e1000 network driver.
- * * `VFIO` - Direct attached Virtual Function network controller. Default for Oracle provided images.
+ * * `VFIO` - Direct attached Virtual Function network controller. This is the networking type
+ * when you launch an instance using hardware-assisted (SR-IOV) networking.
* * `PARAVIRTUALIZED` - VM instances launch with paravirtualized devices using virtio drivers.
*
**/
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/LocalPeeringGateway.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/LocalPeeringGateway.java
index 48678d4725d..1c74ba62d5a 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/LocalPeeringGateway.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/LocalPeeringGateway.java
@@ -409,9 +409,10 @@ public static PeeringStatus create(String key) {
String peeringStatusDetails;
/**
- * The OCID of the route table the LPG is using. For information about why you
- * would associate a route table with an LPG, see
- * [Advanced Scenario: Transit Routing](https://docs.cloud.oracle.com/Content/Network/Tasks/transitrouting.htm).
+ * The OCID of the route table the LPG is using.
+ *
+ * For information about why you would associate a route table with an LPG, see
+ * [Transit Routing: Access to Multiple VCNs in Same Region](https://docs.cloud.oracle.com/Content/Network/Tasks/transitrouting.htm).
*
**/
@com.fasterxml.jackson.annotation.JsonProperty("routeTableId")
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/RouteRule.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/RouteRule.java
index 09ea669c604..4b312e1bf8a 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/RouteRule.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/RouteRule.java
@@ -113,7 +113,8 @@ public static Builder builder() {
*
* IP address range in CIDR notation. Can be an IPv4 or IPv6 CIDR. For example: `192.168.1.0/24`
* or `2001:0db8:0123:45::/56`. If you set this to an IPv6 CIDR, the route rule's target
- * can only be a DRG or internet gateway.
+ * can only be a DRG or internet gateway. Note that IPv6 addressing is currently supported only
+ * in the Government Cloud.
*
* The `cidrBlock` value for a {@link Service}, if you're
* setting up a route rule for traffic destined for a particular `Service` through
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/SecurityRule.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/SecurityRule.java
index a44bd3b462b..fbf5d8d01b1 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/SecurityRule.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/SecurityRule.java
@@ -219,6 +219,7 @@ public static Builder builder() {
* Allowed values:
*
* An IP address range in CIDR notation. For example: `192.168.1.0/24` or `2001:0db8:0123:45::/56`
+ * Note that IPv6 addressing is currently supported only in the Government Cloud.
*
* The `cidrBlock` value for a {@link Service}, if you're
* setting up a security rule for traffic destined for a particular `Service` through
@@ -422,6 +423,7 @@ public static Direction create(String key) {
* Allowed values:
*
* An IP address range in CIDR notation. For example: `192.168.1.0/24` or `2001:0db8:0123:45::/56`
+ * Note that IPv6 addressing is currently supported only in the Government Cloud.
*
* The `cidrBlock` value for a {@link Service}, if you're
* setting up a security rule for traffic coming from a particular `Service` through
@@ -443,7 +445,7 @@ public static Direction create(String key) {
* {@link Service} (the rule is for traffic coming from a
* particular `Service` through a service gateway).
*
- * `NETWORK_SECURITY_GROUP`: If the rule's `destination` is the OCID of a
+ * `NETWORK_SECURITY_GROUP`: If the rule's `source` is the OCID of a
* {@link NetworkSecurityGroup}.
*
**/
@@ -500,7 +502,7 @@ public static SourceType create(String key) {
* {@link Service} (the rule is for traffic coming from a
* particular `Service` through a service gateway).
*
- * `NETWORK_SECURITY_GROUP`: If the rule's `destination` is the OCID of a
+ * `NETWORK_SECURITY_GROUP`: If the rule's `source` is the OCID of a
* {@link NetworkSecurityGroup}.
*
**/
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/ServiceGateway.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/ServiceGateway.java
index 2f47aa65543..77fafb3d459 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/ServiceGateway.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/ServiceGateway.java
@@ -291,9 +291,10 @@ public static LifecycleState create(String key) {
LifecycleState lifecycleState;
/**
- * The OCID of the route table the service gateway is using. For information about why you
- * would associate a route table with a service gateway, see
- * [Transit Routing: Private Access to Oracle Services Network](https://docs.cloud.oracle.com/Content/Network/Tasks/transitroutingoracleservices.htm).
+ * The OCID of the route table the service gateway is using.
+ *
+ * For information about why you would associate a route table with a service gateway, see
+ * [Transit Routing: Private Access to Oracle Services](https://docs.cloud.oracle.com/Content/Network/Tasks/transitroutingoracleservices.htm).
*
**/
@com.fasterxml.jackson.annotation.JsonProperty("routeTableId")
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/Subnet.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/Subnet.java
index 4038d604aa9..8291507fdbb 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/Subnet.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/Subnet.java
@@ -379,7 +379,8 @@ public static Builder builder() {
/**
* For an IPv6-enabled subnet, this is the IPv6 CIDR block for the subnet's private IP address
- * space. The subnet size is always /64.
+ * space. The subnet size is always /64. Note that IPv6 addressing is currently supported only
+ * in the Government Cloud.
*
* Example: `2001:0db8:0123:1111::/64`
*
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateConsoleHistoryDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateConsoleHistoryDetails.java
index 6f249930a6b..38f871742ec 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateConsoleHistoryDetails.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateConsoleHistoryDetails.java
@@ -93,6 +93,7 @@ public static Builder builder() {
/**
* A user-friendly name. Does not have to be unique, and it's changeable.
+ * Avoid entering confidential information.
*
**/
@com.fasterxml.jackson.annotation.JsonProperty("displayName")
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateDrgAttachmentDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateDrgAttachmentDetails.java
index 2413a16857d..796a2399483 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateDrgAttachmentDetails.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateDrgAttachmentDetails.java
@@ -78,9 +78,12 @@ public static Builder builder() {
String displayName;
/**
- * The OCID of the route table the DRG attachment will use. For information about why you
- * would associate a route table with a DRG attachment, see
- * [Advanced Scenario: Transit Routing](https://docs.cloud.oracle.com/Content/Network/Tasks/transitrouting.htm).
+ * The OCID of the route table the DRG attachment will use.
+ *
+ * For information about why you would associate a route table with a DRG attachment, see:
+ *
+ * [Transit Routing: Access to Multiple VCNs in Same Region](https://docs.cloud.oracle.com/Content/Network/Tasks/transitrouting.htm)
+ * * [Transit Routing: Private Access to Oracle Services](https://docs.cloud.oracle.com/Content/Network/Tasks/transitroutingoracleservices.htm)
*
**/
@com.fasterxml.jackson.annotation.JsonProperty("routeTableId")
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateInstancePoolDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateInstancePoolDetails.java
index 482c07322ca..e74f242d5da 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateInstancePoolDetails.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateInstancePoolDetails.java
@@ -131,7 +131,9 @@ public static Builder builder() {
java.util.Map> definedTags;
/**
- * The user-friendly name. Does not have to be unique.
+ * A user-friendly name for the instance pool. Does not have to be unique, and it's
+ * changeable. Avoid entering confidential information.
+ *
**/
@com.fasterxml.jackson.annotation.JsonProperty("displayName")
String displayName;
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateLocalPeeringGatewayDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateLocalPeeringGatewayDetails.java
index d590b51750e..b0cf295ec0a 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateLocalPeeringGatewayDetails.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateLocalPeeringGatewayDetails.java
@@ -121,9 +121,10 @@ public static Builder builder() {
java.util.Map freeformTags;
/**
- * The OCID of the route table the LPG will use. For information about why you
- * would associate a route table with an LPG, see
- * [Advanced Scenario: Transit Routing](https://docs.cloud.oracle.com/Content/Network/Tasks/transitrouting.htm).
+ * The OCID of the route table the LPG will use.
+ *
+ * For information about why you would associate a route table with an LPG, see
+ * [Transit Routing: Access to Multiple VCNs in Same Region](https://docs.cloud.oracle.com/Content/Network/Tasks/transitrouting.htm).
*
**/
@com.fasterxml.jackson.annotation.JsonProperty("routeTableId")
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateNetworkSecurityGroupDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateNetworkSecurityGroupDetails.java
index d8dab6fea5b..fd29cb5b8ae 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateNetworkSecurityGroupDetails.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateNetworkSecurityGroupDetails.java
@@ -93,6 +93,8 @@ public static Builder builder() {
/**
* A user-friendly name. Does not have to be unique, and it's changeable.
+ * Avoid entering confidential information.
+ *
**/
@com.fasterxml.jackson.annotation.JsonProperty("displayName")
String displayName;
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateSecurityRuleDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateSecurityRuleDetails.java
index a7af52c5621..30eefb60ad6 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateSecurityRuleDetails.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateSecurityRuleDetails.java
@@ -184,7 +184,7 @@ public static Builder builder() {
}
/**
- * An optional description of your choice for the rule.
+ * An optional description of your choice for the rule. Avoid entering confidential information.
*
**/
@com.fasterxml.jackson.annotation.JsonProperty("description")
@@ -197,6 +197,7 @@ public static Builder builder() {
* Allowed values:
*
* An IP address range in CIDR notation. For example: `192.168.1.0/24` or `2001:0db8:0123:45::/56`
+ * Note that IPv6 addressing is currently supported only in the Government Cloud.
*
* The `cidrBlock` value for a {@link Service}, if you're
* setting up a security rule for traffic destined for a particular `Service` through
@@ -372,6 +373,7 @@ public static Direction create(String key) {
* Allowed values:
*
* An IP address range in CIDR notation. For example: `192.168.1.0/24` or `2001:0db8:0123:45::/56`
+ * Note that IPv6 addressing is currently supported only in the Government Cloud.
*
* The `cidrBlock` value for a {@link Service}, if you're
* setting up a security rule for traffic coming from a particular `Service` through
@@ -393,7 +395,7 @@ public static Direction create(String key) {
* {@link Service} (the rule is for traffic coming from a
* particular `Service` through a service gateway).
*
- * `NETWORK_SECURITY_GROUP`: If the rule's `destination` is the OCID of a
+ * `NETWORK_SECURITY_GROUP`: If the rule's `source` is the OCID of a
* {@link NetworkSecurityGroup}.
*
**/
@@ -439,7 +441,7 @@ public static SourceType create(String key) {
* {@link Service} (the rule is for traffic coming from a
* particular `Service` through a service gateway).
*
- * `NETWORK_SECURITY_GROUP`: If the rule's `destination` is the OCID of a
+ * `NETWORK_SECURITY_GROUP`: If the rule's `source` is the OCID of a
* {@link NetworkSecurityGroup}.
*
**/
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateServiceGatewayDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateServiceGatewayDetails.java
index a11fd899382..c09f6e555b2 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateServiceGatewayDetails.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateServiceGatewayDetails.java
@@ -156,9 +156,10 @@ public static Builder builder() {
java.util.Map freeformTags;
/**
- * The OCID of the route table the service gateway will use. For information about why you
- * would associate a route table with a service gateway, see
- * [Transit Routing: Private Access to Oracle Services Network](https://docs.cloud.oracle.com/Content/Network/Tasks/transitroutingoracleservices.htm).
+ * The OCID of the route table the service gateway will use.
+ *
+ * For information about why you would associate a route table with a service gateway, see
+ * [Transit Routing: Private Access to Oracle Services](https://docs.cloud.oracle.com/Content/Network/Tasks/transitroutingoracleservices.htm).
*
**/
@com.fasterxml.jackson.annotation.JsonProperty("routeTableId")
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateVnicDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateVnicDetails.java
index b53ea09b388..20fd0387abe 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateVnicDetails.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateVnicDetails.java
@@ -129,6 +129,8 @@ public static Builder builder() {
/**
* A user-friendly name. Does not have to be unique, and it's changeable.
+ * Avoid entering confidential information.
+ *
**/
@com.fasterxml.jackson.annotation.JsonProperty("displayName")
String displayName;
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateVolumeBackupDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateVolumeBackupDetails.java
index 86899d2a972..1ab04a2266f 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateVolumeBackupDetails.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateVolumeBackupDetails.java
@@ -92,7 +92,7 @@ public static Builder builder() {
java.util.Map> definedTags;
/**
- * A friendly user-specified name for the volume backup.
+ * A user-friendly name for the volume backup.
* Avoid entering confidential information.
*
**/
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateVolumeGroupBackupDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateVolumeGroupBackupDetails.java
index aa24d137734..9c93ace64ea 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateVolumeGroupBackupDetails.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateVolumeGroupBackupDetails.java
@@ -92,7 +92,8 @@ public static Builder builder() {
java.util.Map> definedTags;
/**
- * A friendly user-specified name for the volume group backup.
+ * A user-friendly name for the volume group backup. Avoid entering confidential information.
+ *
**/
@com.fasterxml.jackson.annotation.JsonProperty("displayName")
String displayName;
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateVolumeGroupDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateVolumeGroupDetails.java
index e4164a31cf6..314530237b2 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateVolumeGroupDetails.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateVolumeGroupDetails.java
@@ -102,7 +102,8 @@ public static Builder builder() {
java.util.Map> definedTags;
/**
- * A user-friendly name for the volume group.
+ * A user-friendly name for the volume group. Avoid entering confidential information.
+ *
**/
@com.fasterxml.jackson.annotation.JsonProperty("displayName")
String displayName;
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/Vcn.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/Vcn.java
index 49aab2e2629..c6271f98150 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/model/Vcn.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/Vcn.java
@@ -314,7 +314,8 @@ public static Builder builder() {
* For an IPv6-enabled VCN, this is the IPv6 CIDR block for the VCN's private IP address space.
* The VCN size is always /48. If you don't provide a value when creating the VCN, Oracle
* provides one and uses that *same* CIDR for the `ipv6PublicCidrBlock`. If you do provide a
- * value, Oracle provides a *different* CIDR for the `ipv6PublicCidrBlock`.
+ * value, Oracle provides a *different* CIDR for the `ipv6PublicCidrBlock`. Note that IPv6
+ * addressing is currently supported only in the Government Cloud.
*
* Example: `2001:0db8:0123::/48`
*
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/requests/ChangeDhcpOptionsCompartmentRequest.java b/bmc-core/src/main/java/com/oracle/bmc/core/requests/ChangeDhcpOptionsCompartmentRequest.java
new file mode 100644
index 00000000000..f6119145f2e
--- /dev/null
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/requests/ChangeDhcpOptionsCompartmentRequest.java
@@ -0,0 +1,99 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+package com.oracle.bmc.core.requests;
+
+import com.oracle.bmc.core.model.*;
+
+@javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918")
+@lombok.Builder(builderClassName = "Builder", buildMethodName = "buildWithoutInvocationCallback")
+@lombok.Getter
+public class ChangeDhcpOptionsCompartmentRequest extends com.oracle.bmc.requests.BmcRequest {
+
+ /**
+ * The OCID for the set of DHCP options.
+ */
+ private String dhcpId;
+
+ /**
+ * Request to change the compartment of a set of DHCP Options.
+ */
+ private ChangeDhcpOptionsCompartmentDetails changeDhcpOptionsCompartmentDetails;
+
+ /**
+ * Unique identifier for the request.
+ * If you need to contact Oracle about a particular request, please provide the request ID.
+ *
+ */
+ private String opcRequestId;
+
+ /**
+ * A token that uniquely identifies a request so it can be retried in case of a timeout or
+ * server error without risk of executing that same action again. Retry tokens expire after 24
+ * hours, but can be invalidated before then due to conflicting operations (for example, if a resource
+ * has been deleted and purged from the system, then a retry of the original creation request
+ * may be rejected).
+ *
+ */
+ private String opcRetryToken;
+
+ public static class Builder {
+ private com.oracle.bmc.util.internal.Consumer
+ invocationCallback = null;
+ private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null;
+
+ /**
+ * Set the invocation callback for the request to be built.
+ * @param invocationCallback the invocation callback to be set for the request
+ * @return this builder instance
+ */
+ public Builder invocationCallback(
+ com.oracle.bmc.util.internal.Consumer
+ invocationCallback) {
+ this.invocationCallback = invocationCallback;
+ return this;
+ }
+
+ /**
+ * Set the retry configuration for the request to be built.
+ * @param retryConfiguration the retry configuration to be used for the request
+ * @return this builder instance
+ */
+ public Builder retryConfiguration(
+ com.oracle.bmc.retrier.RetryConfiguration retryConfiguration) {
+ this.retryConfiguration = retryConfiguration;
+ return this;
+ }
+
+ /**
+ * Copy method to populate the builder with values from the given instance.
+ * @return this builder instance
+ */
+ public Builder copy(ChangeDhcpOptionsCompartmentRequest o) {
+ dhcpId(o.getDhcpId());
+ changeDhcpOptionsCompartmentDetails(o.getChangeDhcpOptionsCompartmentDetails());
+ opcRequestId(o.getOpcRequestId());
+ opcRetryToken(o.getOpcRetryToken());
+ invocationCallback(o.getInvocationCallback());
+ retryConfiguration(o.getRetryConfiguration());
+ return this;
+ }
+
+ /**
+ * Build the instance of ChangeDhcpOptionsCompartmentRequest as configured by this builder
+ *
+ * Note that this method takes calls to {@link Builder#invocationCallback(com.oracle.bmc.util.internal.Consumer)} into account,
+ * while the method {@link Builder#buildWithoutInvocationCallback} does not.
+ *
+ * This is the preferred method to build an instance.
+ *
+ * @return instance of ChangeDhcpOptionsCompartmentRequest
+ */
+ public ChangeDhcpOptionsCompartmentRequest build() {
+ ChangeDhcpOptionsCompartmentRequest request = buildWithoutInvocationCallback();
+ request.setInvocationCallback(invocationCallback);
+ request.setRetryConfiguration(retryConfiguration);
+ return request;
+ }
+ }
+}
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/requests/ChangeInternetGatewayCompartmentRequest.java b/bmc-core/src/main/java/com/oracle/bmc/core/requests/ChangeInternetGatewayCompartmentRequest.java
new file mode 100644
index 00000000000..ce572233b89
--- /dev/null
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/requests/ChangeInternetGatewayCompartmentRequest.java
@@ -0,0 +1,99 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+package com.oracle.bmc.core.requests;
+
+import com.oracle.bmc.core.model.*;
+
+@javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918")
+@lombok.Builder(builderClassName = "Builder", buildMethodName = "buildWithoutInvocationCallback")
+@lombok.Getter
+public class ChangeInternetGatewayCompartmentRequest extends com.oracle.bmc.requests.BmcRequest {
+
+ /**
+ * The OCID of the internet gateway.
+ */
+ private String igId;
+
+ /**
+ * Request to change the compartment of an internet gateway.
+ */
+ private ChangeInternetGatewayCompartmentDetails changeInternetGatewayCompartmentDetails;
+
+ /**
+ * Unique identifier for the request.
+ * If you need to contact Oracle about a particular request, please provide the request ID.
+ *
+ */
+ private String opcRequestId;
+
+ /**
+ * A token that uniquely identifies a request so it can be retried in case of a timeout or
+ * server error without risk of executing that same action again. Retry tokens expire after 24
+ * hours, but can be invalidated before then due to conflicting operations (for example, if a resource
+ * has been deleted and purged from the system, then a retry of the original creation request
+ * may be rejected).
+ *
+ */
+ private String opcRetryToken;
+
+ public static class Builder {
+ private com.oracle.bmc.util.internal.Consumer
+ invocationCallback = null;
+ private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null;
+
+ /**
+ * Set the invocation callback for the request to be built.
+ * @param invocationCallback the invocation callback to be set for the request
+ * @return this builder instance
+ */
+ public Builder invocationCallback(
+ com.oracle.bmc.util.internal.Consumer
+ invocationCallback) {
+ this.invocationCallback = invocationCallback;
+ return this;
+ }
+
+ /**
+ * Set the retry configuration for the request to be built.
+ * @param retryConfiguration the retry configuration to be used for the request
+ * @return this builder instance
+ */
+ public Builder retryConfiguration(
+ com.oracle.bmc.retrier.RetryConfiguration retryConfiguration) {
+ this.retryConfiguration = retryConfiguration;
+ return this;
+ }
+
+ /**
+ * Copy method to populate the builder with values from the given instance.
+ * @return this builder instance
+ */
+ public Builder copy(ChangeInternetGatewayCompartmentRequest o) {
+ igId(o.getIgId());
+ changeInternetGatewayCompartmentDetails(o.getChangeInternetGatewayCompartmentDetails());
+ opcRequestId(o.getOpcRequestId());
+ opcRetryToken(o.getOpcRetryToken());
+ invocationCallback(o.getInvocationCallback());
+ retryConfiguration(o.getRetryConfiguration());
+ return this;
+ }
+
+ /**
+ * Build the instance of ChangeInternetGatewayCompartmentRequest as configured by this builder
+ *
+ * Note that this method takes calls to {@link Builder#invocationCallback(com.oracle.bmc.util.internal.Consumer)} into account,
+ * while the method {@link Builder#buildWithoutInvocationCallback} does not.
+ *
+ * This is the preferred method to build an instance.
+ *
+ * @return instance of ChangeInternetGatewayCompartmentRequest
+ */
+ public ChangeInternetGatewayCompartmentRequest build() {
+ ChangeInternetGatewayCompartmentRequest request = buildWithoutInvocationCallback();
+ request.setInvocationCallback(invocationCallback);
+ request.setRetryConfiguration(retryConfiguration);
+ return request;
+ }
+ }
+}
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/requests/ChangeLocalPeeringGatewayCompartmentRequest.java b/bmc-core/src/main/java/com/oracle/bmc/core/requests/ChangeLocalPeeringGatewayCompartmentRequest.java
new file mode 100644
index 00000000000..47e4b4eaf8f
--- /dev/null
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/requests/ChangeLocalPeeringGatewayCompartmentRequest.java
@@ -0,0 +1,101 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+package com.oracle.bmc.core.requests;
+
+import com.oracle.bmc.core.model.*;
+
+@javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918")
+@lombok.Builder(builderClassName = "Builder", buildMethodName = "buildWithoutInvocationCallback")
+@lombok.Getter
+public class ChangeLocalPeeringGatewayCompartmentRequest
+ extends com.oracle.bmc.requests.BmcRequest {
+
+ /**
+ * The OCID of the local peering gateway.
+ */
+ private String localPeeringGatewayId;
+
+ /**
+ * Request to change the compartment of a given local peering gateway.
+ */
+ private ChangeLocalPeeringGatewayCompartmentDetails changeLocalPeeringGatewayCompartmentDetails;
+
+ /**
+ * Unique identifier for the request.
+ * If you need to contact Oracle about a particular request, please provide the request ID.
+ *
+ */
+ private String opcRequestId;
+
+ /**
+ * A token that uniquely identifies a request so it can be retried in case of a timeout or
+ * server error without risk of executing that same action again. Retry tokens expire after 24
+ * hours, but can be invalidated before then due to conflicting operations (for example, if a resource
+ * has been deleted and purged from the system, then a retry of the original creation request
+ * may be rejected).
+ *
+ */
+ private String opcRetryToken;
+
+ public static class Builder {
+ private com.oracle.bmc.util.internal.Consumer
+ invocationCallback = null;
+ private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null;
+
+ /**
+ * Set the invocation callback for the request to be built.
+ * @param invocationCallback the invocation callback to be set for the request
+ * @return this builder instance
+ */
+ public Builder invocationCallback(
+ com.oracle.bmc.util.internal.Consumer
+ invocationCallback) {
+ this.invocationCallback = invocationCallback;
+ return this;
+ }
+
+ /**
+ * Set the retry configuration for the request to be built.
+ * @param retryConfiguration the retry configuration to be used for the request
+ * @return this builder instance
+ */
+ public Builder retryConfiguration(
+ com.oracle.bmc.retrier.RetryConfiguration retryConfiguration) {
+ this.retryConfiguration = retryConfiguration;
+ return this;
+ }
+
+ /**
+ * Copy method to populate the builder with values from the given instance.
+ * @return this builder instance
+ */
+ public Builder copy(ChangeLocalPeeringGatewayCompartmentRequest o) {
+ localPeeringGatewayId(o.getLocalPeeringGatewayId());
+ changeLocalPeeringGatewayCompartmentDetails(
+ o.getChangeLocalPeeringGatewayCompartmentDetails());
+ opcRequestId(o.getOpcRequestId());
+ opcRetryToken(o.getOpcRetryToken());
+ invocationCallback(o.getInvocationCallback());
+ retryConfiguration(o.getRetryConfiguration());
+ return this;
+ }
+
+ /**
+ * Build the instance of ChangeLocalPeeringGatewayCompartmentRequest as configured by this builder
+ *
+ * Note that this method takes calls to {@link Builder#invocationCallback(com.oracle.bmc.util.internal.Consumer)} into account,
+ * while the method {@link Builder#buildWithoutInvocationCallback} does not.
+ *
+ * This is the preferred method to build an instance.
+ *
+ * @return instance of ChangeLocalPeeringGatewayCompartmentRequest
+ */
+ public ChangeLocalPeeringGatewayCompartmentRequest build() {
+ ChangeLocalPeeringGatewayCompartmentRequest request = buildWithoutInvocationCallback();
+ request.setInvocationCallback(invocationCallback);
+ request.setRetryConfiguration(retryConfiguration);
+ return request;
+ }
+ }
+}
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/requests/ChangeNetworkSecurityGroupCompartmentRequest.java b/bmc-core/src/main/java/com/oracle/bmc/core/requests/ChangeNetworkSecurityGroupCompartmentRequest.java
new file mode 100644
index 00000000000..8e6cfc56ae0
--- /dev/null
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/requests/ChangeNetworkSecurityGroupCompartmentRequest.java
@@ -0,0 +1,102 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+package com.oracle.bmc.core.requests;
+
+import com.oracle.bmc.core.model.*;
+
+@javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918")
+@lombok.Builder(builderClassName = "Builder", buildMethodName = "buildWithoutInvocationCallback")
+@lombok.Getter
+public class ChangeNetworkSecurityGroupCompartmentRequest
+ extends com.oracle.bmc.requests.BmcRequest {
+
+ /**
+ * The [OCID](https://docs.cloud.oracle.com/Content/General/Concepts/identifiers.htm) of the network security group.
+ */
+ private String networkSecurityGroupId;
+
+ /**
+ * Request to change the compartment of a network security group.
+ */
+ private ChangeNetworkSecurityGroupCompartmentDetails
+ changeNetworkSecurityGroupCompartmentDetails;
+
+ /**
+ * Unique identifier for the request.
+ * If you need to contact Oracle about a particular request, please provide the request ID.
+ *
+ */
+ private String opcRequestId;
+
+ /**
+ * A token that uniquely identifies a request so it can be retried in case of a timeout or
+ * server error without risk of executing that same action again. Retry tokens expire after 24
+ * hours, but can be invalidated before then due to conflicting operations (for example, if a resource
+ * has been deleted and purged from the system, then a retry of the original creation request
+ * may be rejected).
+ *
+ */
+ private String opcRetryToken;
+
+ public static class Builder {
+ private com.oracle.bmc.util.internal.Consumer
+ invocationCallback = null;
+ private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null;
+
+ /**
+ * Set the invocation callback for the request to be built.
+ * @param invocationCallback the invocation callback to be set for the request
+ * @return this builder instance
+ */
+ public Builder invocationCallback(
+ com.oracle.bmc.util.internal.Consumer
+ invocationCallback) {
+ this.invocationCallback = invocationCallback;
+ return this;
+ }
+
+ /**
+ * Set the retry configuration for the request to be built.
+ * @param retryConfiguration the retry configuration to be used for the request
+ * @return this builder instance
+ */
+ public Builder retryConfiguration(
+ com.oracle.bmc.retrier.RetryConfiguration retryConfiguration) {
+ this.retryConfiguration = retryConfiguration;
+ return this;
+ }
+
+ /**
+ * Copy method to populate the builder with values from the given instance.
+ * @return this builder instance
+ */
+ public Builder copy(ChangeNetworkSecurityGroupCompartmentRequest o) {
+ networkSecurityGroupId(o.getNetworkSecurityGroupId());
+ changeNetworkSecurityGroupCompartmentDetails(
+ o.getChangeNetworkSecurityGroupCompartmentDetails());
+ opcRequestId(o.getOpcRequestId());
+ opcRetryToken(o.getOpcRetryToken());
+ invocationCallback(o.getInvocationCallback());
+ retryConfiguration(o.getRetryConfiguration());
+ return this;
+ }
+
+ /**
+ * Build the instance of ChangeNetworkSecurityGroupCompartmentRequest as configured by this builder
+ *
+ * Note that this method takes calls to {@link Builder#invocationCallback(com.oracle.bmc.util.internal.Consumer)} into account,
+ * while the method {@link Builder#buildWithoutInvocationCallback} does not.
+ *
+ * This is the preferred method to build an instance.
+ *
+ * @return instance of ChangeNetworkSecurityGroupCompartmentRequest
+ */
+ public ChangeNetworkSecurityGroupCompartmentRequest build() {
+ ChangeNetworkSecurityGroupCompartmentRequest request = buildWithoutInvocationCallback();
+ request.setInvocationCallback(invocationCallback);
+ request.setRetryConfiguration(retryConfiguration);
+ return request;
+ }
+ }
+}
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/requests/ChangePublicIpCompartmentRequest.java b/bmc-core/src/main/java/com/oracle/bmc/core/requests/ChangePublicIpCompartmentRequest.java
new file mode 100644
index 00000000000..cba6c20f00b
--- /dev/null
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/requests/ChangePublicIpCompartmentRequest.java
@@ -0,0 +1,99 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+package com.oracle.bmc.core.requests;
+
+import com.oracle.bmc.core.model.*;
+
+@javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918")
+@lombok.Builder(builderClassName = "Builder", buildMethodName = "buildWithoutInvocationCallback")
+@lombok.Getter
+public class ChangePublicIpCompartmentRequest extends com.oracle.bmc.requests.BmcRequest {
+
+ /**
+ * The OCID of the public IP.
+ */
+ private String publicIpId;
+
+ /**
+ * Request to change the compartment of a Public IP.
+ */
+ private ChangePublicIpCompartmentDetails changePublicIpCompartmentDetails;
+
+ /**
+ * Unique identifier for the request.
+ * If you need to contact Oracle about a particular request, please provide the request ID.
+ *
+ */
+ private String opcRequestId;
+
+ /**
+ * A token that uniquely identifies a request so it can be retried in case of a timeout or
+ * server error without risk of executing that same action again. Retry tokens expire after 24
+ * hours, but can be invalidated before then due to conflicting operations (for example, if a resource
+ * has been deleted and purged from the system, then a retry of the original creation request
+ * may be rejected).
+ *
+ */
+ private String opcRetryToken;
+
+ public static class Builder {
+ private com.oracle.bmc.util.internal.Consumer
+ invocationCallback = null;
+ private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null;
+
+ /**
+ * Set the invocation callback for the request to be built.
+ * @param invocationCallback the invocation callback to be set for the request
+ * @return this builder instance
+ */
+ public Builder invocationCallback(
+ com.oracle.bmc.util.internal.Consumer
+ invocationCallback) {
+ this.invocationCallback = invocationCallback;
+ return this;
+ }
+
+ /**
+ * Set the retry configuration for the request to be built.
+ * @param retryConfiguration the retry configuration to be used for the request
+ * @return this builder instance
+ */
+ public Builder retryConfiguration(
+ com.oracle.bmc.retrier.RetryConfiguration retryConfiguration) {
+ this.retryConfiguration = retryConfiguration;
+ return this;
+ }
+
+ /**
+ * Copy method to populate the builder with values from the given instance.
+ * @return this builder instance
+ */
+ public Builder copy(ChangePublicIpCompartmentRequest o) {
+ publicIpId(o.getPublicIpId());
+ changePublicIpCompartmentDetails(o.getChangePublicIpCompartmentDetails());
+ opcRequestId(o.getOpcRequestId());
+ opcRetryToken(o.getOpcRetryToken());
+ invocationCallback(o.getInvocationCallback());
+ retryConfiguration(o.getRetryConfiguration());
+ return this;
+ }
+
+ /**
+ * Build the instance of ChangePublicIpCompartmentRequest as configured by this builder
+ *
+ * Note that this method takes calls to {@link Builder#invocationCallback(com.oracle.bmc.util.internal.Consumer)} into account,
+ * while the method {@link Builder#buildWithoutInvocationCallback} does not.
+ *
+ * This is the preferred method to build an instance.
+ *
+ * @return instance of ChangePublicIpCompartmentRequest
+ */
+ public ChangePublicIpCompartmentRequest build() {
+ ChangePublicIpCompartmentRequest request = buildWithoutInvocationCallback();
+ request.setInvocationCallback(invocationCallback);
+ request.setRetryConfiguration(retryConfiguration);
+ return request;
+ }
+ }
+}
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangeDhcpOptionsCompartmentResponse.java b/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangeDhcpOptionsCompartmentResponse.java
new file mode 100644
index 00000000000..6f19fc4cf0e
--- /dev/null
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangeDhcpOptionsCompartmentResponse.java
@@ -0,0 +1,38 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+package com.oracle.bmc.core.responses;
+
+import com.oracle.bmc.core.model.*;
+
+@javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918")
+@lombok.Builder(builderClassName = "Builder")
+@lombok.Getter
+public class ChangeDhcpOptionsCompartmentResponse {
+
+ /**
+ * For optimistic concurrency control. See `if-match`.
+ *
+ */
+ private String etag;
+
+ /**
+ * Unique Oracle-assigned identifier for the request. If you need to contact
+ * Oracle about a particular request, please provide the request ID.
+ *
+ */
+ private String opcRequestId;
+
+ public static class Builder {
+ /**
+ * Copy method to populate the builder with values from the given instance.
+ * @return this builder instance
+ */
+ public Builder copy(ChangeDhcpOptionsCompartmentResponse o) {
+ etag(o.getEtag());
+ opcRequestId(o.getOpcRequestId());
+
+ return this;
+ }
+ }
+}
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangeInstanceCompartmentResponse.java b/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangeInstanceCompartmentResponse.java
index 123a8b29cd3..b8980cc8ace 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangeInstanceCompartmentResponse.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangeInstanceCompartmentResponse.java
@@ -24,7 +24,7 @@ public class ChangeInstanceCompartmentResponse {
private String opcRequestId;
/**
- * The OCID of the work request. Use {@link #getWorkRequest(GetWorkRequestRequest) getWorkRequest}
+ * The OCID of the work request. Use [GetWorkRequest](https://docs.cloud.oracle.com/api/#/en/workrequests/20160918/WorkRequest/GetWorkRequest)
* with this ID to track the status of the request.
*
*/
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangeInternetGatewayCompartmentResponse.java b/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangeInternetGatewayCompartmentResponse.java
new file mode 100644
index 00000000000..dd9491fbb95
--- /dev/null
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangeInternetGatewayCompartmentResponse.java
@@ -0,0 +1,38 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+package com.oracle.bmc.core.responses;
+
+import com.oracle.bmc.core.model.*;
+
+@javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918")
+@lombok.Builder(builderClassName = "Builder")
+@lombok.Getter
+public class ChangeInternetGatewayCompartmentResponse {
+
+ /**
+ * For optimistic concurrency control. See `if-match`.
+ *
+ */
+ private String etag;
+
+ /**
+ * Unique Oracle-assigned identifier for the request. If you need to contact
+ * Oracle about a particular request, please provide the request ID.
+ *
+ */
+ private String opcRequestId;
+
+ public static class Builder {
+ /**
+ * Copy method to populate the builder with values from the given instance.
+ * @return this builder instance
+ */
+ public Builder copy(ChangeInternetGatewayCompartmentResponse o) {
+ etag(o.getEtag());
+ opcRequestId(o.getOpcRequestId());
+
+ return this;
+ }
+ }
+}
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangeLocalPeeringGatewayCompartmentResponse.java b/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangeLocalPeeringGatewayCompartmentResponse.java
new file mode 100644
index 00000000000..dc092aa906f
--- /dev/null
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangeLocalPeeringGatewayCompartmentResponse.java
@@ -0,0 +1,38 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+package com.oracle.bmc.core.responses;
+
+import com.oracle.bmc.core.model.*;
+
+@javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918")
+@lombok.Builder(builderClassName = "Builder")
+@lombok.Getter
+public class ChangeLocalPeeringGatewayCompartmentResponse {
+
+ /**
+ * For optimistic concurrency control. See `if-match`.
+ *
+ */
+ private String etag;
+
+ /**
+ * Unique Oracle-assigned identifier for the request. If you need to contact
+ * Oracle about a particular request, please provide the request ID.
+ *
+ */
+ private String opcRequestId;
+
+ public static class Builder {
+ /**
+ * Copy method to populate the builder with values from the given instance.
+ * @return this builder instance
+ */
+ public Builder copy(ChangeLocalPeeringGatewayCompartmentResponse o) {
+ etag(o.getEtag());
+ opcRequestId(o.getOpcRequestId());
+
+ return this;
+ }
+ }
+}
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangeNetworkSecurityGroupCompartmentResponse.java b/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangeNetworkSecurityGroupCompartmentResponse.java
new file mode 100644
index 00000000000..20158d951fc
--- /dev/null
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangeNetworkSecurityGroupCompartmentResponse.java
@@ -0,0 +1,38 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+package com.oracle.bmc.core.responses;
+
+import com.oracle.bmc.core.model.*;
+
+@javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918")
+@lombok.Builder(builderClassName = "Builder")
+@lombok.Getter
+public class ChangeNetworkSecurityGroupCompartmentResponse {
+
+ /**
+ * For optimistic concurrency control. See `if-match`.
+ *
+ */
+ private String etag;
+
+ /**
+ * Unique Oracle-assigned identifier for the request. If you need to contact
+ * Oracle about a particular request, please provide the request ID.
+ *
+ */
+ private String opcRequestId;
+
+ public static class Builder {
+ /**
+ * Copy method to populate the builder with values from the given instance.
+ * @return this builder instance
+ */
+ public Builder copy(ChangeNetworkSecurityGroupCompartmentResponse o) {
+ etag(o.getEtag());
+ opcRequestId(o.getOpcRequestId());
+
+ return this;
+ }
+ }
+}
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangePublicIpCompartmentResponse.java b/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangePublicIpCompartmentResponse.java
new file mode 100644
index 00000000000..0f58555f209
--- /dev/null
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangePublicIpCompartmentResponse.java
@@ -0,0 +1,38 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+package com.oracle.bmc.core.responses;
+
+import com.oracle.bmc.core.model.*;
+
+@javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918")
+@lombok.Builder(builderClassName = "Builder")
+@lombok.Getter
+public class ChangePublicIpCompartmentResponse {
+
+ /**
+ * For optimistic concurrency control. See `if-match`.
+ *
+ */
+ private String etag;
+
+ /**
+ * Unique Oracle-assigned identifier for the request. If you need to contact
+ * Oracle about a particular request, please provide the request ID.
+ *
+ */
+ private String opcRequestId;
+
+ public static class Builder {
+ /**
+ * Copy method to populate the builder with values from the given instance.
+ * @return this builder instance
+ */
+ public Builder copy(ChangePublicIpCompartmentResponse o) {
+ etag(o.getEtag());
+ opcRequestId(o.getOpcRequestId());
+
+ return this;
+ }
+ }
+}
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangeSubnetCompartmentResponse.java b/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangeSubnetCompartmentResponse.java
index 06fc5748bb4..9a4208da654 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangeSubnetCompartmentResponse.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangeSubnetCompartmentResponse.java
@@ -24,7 +24,7 @@ public class ChangeSubnetCompartmentResponse {
private String opcRequestId;
/**
- * The OCID of the work request. Use {@link #getWorkRequest(GetWorkRequestRequest) getWorkRequest}
+ * The OCID of the work request. Use [GetWorkRequest](https://docs.cloud.oracle.com/api/#/en/workrequests/20160918/WorkRequest/GetWorkRequest)
* with this ID to track the status of the request.
*
*/
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangeVcnCompartmentResponse.java b/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangeVcnCompartmentResponse.java
index 9037b9cbde6..20f940de273 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangeVcnCompartmentResponse.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/responses/ChangeVcnCompartmentResponse.java
@@ -24,7 +24,7 @@ public class ChangeVcnCompartmentResponse {
private String opcRequestId;
/**
- * The OCID of the work request. Use {@link #getWorkRequest(GetWorkRequestRequest) getWorkRequest}
+ * The OCID of the work request. Use [GetWorkRequest](https://docs.cloud.oracle.com/api/#/en/workrequests/20160918/WorkRequest/GetWorkRequest)
* with this ID to track the status of the request.
*
*/
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/responses/CreateImageResponse.java b/bmc-core/src/main/java/com/oracle/bmc/core/responses/CreateImageResponse.java
index da6c3dbc5f9..4d5d87835c3 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/responses/CreateImageResponse.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/responses/CreateImageResponse.java
@@ -24,7 +24,7 @@ public class CreateImageResponse {
private String opcRequestId;
/**
- * The OCID of the work request. Use {@link #getWorkRequest(GetWorkRequestRequest) getWorkRequest}
+ * The OCID of the work request. Use [GetWorkRequest](https://docs.cloud.oracle.com/api/#/en/workrequests/20160918/WorkRequest/GetWorkRequest)
* with this ID to track the status of the request.
*
*/
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/responses/ExportImageResponse.java b/bmc-core/src/main/java/com/oracle/bmc/core/responses/ExportImageResponse.java
index b71b2a38f48..d17ebc42b5e 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/responses/ExportImageResponse.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/responses/ExportImageResponse.java
@@ -24,7 +24,7 @@ public class ExportImageResponse {
private String opcRequestId;
/**
- * The OCID of the work request. Use {@link #getWorkRequest(GetWorkRequestRequest) getWorkRequest}
+ * The OCID of the work request. Use [GetWorkRequest](https://docs.cloud.oracle.com/api/#/en/workrequests/20160918/WorkRequest/GetWorkRequest)
* with this ID to track the status of the request.
*
*/
diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/responses/LaunchInstanceResponse.java b/bmc-core/src/main/java/com/oracle/bmc/core/responses/LaunchInstanceResponse.java
index 177b19e5407..0b1918ff074 100644
--- a/bmc-core/src/main/java/com/oracle/bmc/core/responses/LaunchInstanceResponse.java
+++ b/bmc-core/src/main/java/com/oracle/bmc/core/responses/LaunchInstanceResponse.java
@@ -24,7 +24,7 @@ public class LaunchInstanceResponse {
private String opcRequestId;
/**
- * The OCID of the work request. Use {@link #getWorkRequest(GetWorkRequestRequest) getWorkRequest}
+ * The OCID of the work request. Use [GetWorkRequest](https://docs.cloud.oracle.com/api/#/en/workrequests/20160918/WorkRequest/GetWorkRequest)
* with this ID to track the status of the request.
*
*/
diff --git a/bmc-database/pom.xml b/bmc-database/pom.xml
index e3559162724..c9fe3054cb7 100644
--- a/bmc-database/pom.xml
+++ b/bmc-database/pom.xml
@@ -5,7 +5,7 @@
com.oracle.oci.sdk
oci-java-sdk
- 1.6.0
+ 1.6.1
../pom.xml
@@ -19,7 +19,7 @@
com.oracle.oci.sdk
oci-java-sdk-common
- 1.6.0
+ 1.6.1
diff --git a/bmc-dns/pom.xml b/bmc-dns/pom.xml
index 0968ec97ae4..4aa26c52b3f 100644
--- a/bmc-dns/pom.xml
+++ b/bmc-dns/pom.xml
@@ -5,7 +5,7 @@
com.oracle.oci.sdk
oci-java-sdk
- 1.6.0
+ 1.6.1
../pom.xml
@@ -19,7 +19,7 @@
com.oracle.oci.sdk
oci-java-sdk-common
- 1.6.0
+ 1.6.1
diff --git a/bmc-dts/pom.xml b/bmc-dts/pom.xml
index 9bcfe737e90..a088105e2ea 100644
--- a/bmc-dts/pom.xml
+++ b/bmc-dts/pom.xml
@@ -4,7 +4,7 @@
com.oracle.oci.sdk
oci-java-sdk
- 1.6.0
+ 1.6.1
../pom.xml
oci-java-sdk-dts
@@ -15,7 +15,7 @@
com.oracle.oci.sdk
oci-java-sdk-common
- 1.6.0
+ 1.6.1
\ No newline at end of file
diff --git a/bmc-email/pom.xml b/bmc-email/pom.xml
index 5f459ea686a..88c67304de0 100644
--- a/bmc-email/pom.xml
+++ b/bmc-email/pom.xml
@@ -5,7 +5,7 @@
com.oracle.oci.sdk
oci-java-sdk
- 1.6.0
+ 1.6.1
../pom.xml
@@ -18,7 +18,7 @@
com.oracle.oci.sdk
oci-java-sdk-common
- 1.6.0
+ 1.6.1
diff --git a/bmc-events/pom.xml b/bmc-events/pom.xml
index 97ec882dc41..215d92aaf30 100644
--- a/bmc-events/pom.xml
+++ b/bmc-events/pom.xml
@@ -4,7 +4,7 @@
com.oracle.oci.sdk
oci-java-sdk
- 1.6.0
+ 1.6.1
../pom.xml
oci-java-sdk-events
@@ -15,7 +15,7 @@
com.oracle.oci.sdk
oci-java-sdk-common
- 1.6.0
+ 1.6.1
\ No newline at end of file
diff --git a/bmc-examples/pom.xml b/bmc-examples/pom.xml
index 64ed01c235c..85f389b5765 100644
--- a/bmc-examples/pom.xml
+++ b/bmc-examples/pom.xml
@@ -4,7 +4,7 @@
com.oracle.oci.sdk
oci-java-sdk
- 1.6.0
+ 1.6.1
../pom.xml
oci-java-sdk-examples
@@ -17,7 +17,7 @@
com.oracle.oci.sdk
oci-java-sdk-bom
- 1.6.0
+ 1.6.1
pom
import
diff --git a/bmc-examples/src/main/java/BudgetExample.java b/bmc-examples/src/main/java/BudgetExample.java
index 5c3f3609abe..4f19b496f0b 100644
--- a/bmc-examples/src/main/java/BudgetExample.java
+++ b/bmc-examples/src/main/java/BudgetExample.java
@@ -33,7 +33,6 @@
import com.oracle.bmc.budget.responses.UpdateAlertRuleResponse;
import com.oracle.bmc.budget.responses.UpdateBudgetResponse;
-import com.oracle.bmc.http.ResteasyClientConfigurator;
import org.apache.commons.lang3.StringUtils;
import java.math.BigDecimal;
@@ -112,7 +111,6 @@ public static void main(String[] args) throws Exception {
final BudgetClient budgetClient =
BudgetClient.builder()
- .additionalClientConfigurator(new ResteasyClientConfigurator())
.build(
new ConfigFileAuthenticationDetailsProvider(
CONFIG_LOCATION, CONFIG_PROFILE));
diff --git a/bmc-examples/src/main/java/InstancePrincipalsAuthenticationDetailsProviderWithResteasyClientExample.java b/bmc-examples/src/main/java/InstancePrincipalsAuthenticationDetailsProviderWithResteasyClientExample.java
index 087e749102e..eedab84c7a7 100644
--- a/bmc-examples/src/main/java/InstancePrincipalsAuthenticationDetailsProviderWithResteasyClientExample.java
+++ b/bmc-examples/src/main/java/InstancePrincipalsAuthenticationDetailsProviderWithResteasyClientExample.java
@@ -23,10 +23,10 @@
*/
public class InstancePrincipalsAuthenticationDetailsProviderWithResteasyClientExample {
- public static void main(String[] args) throws Exception {
- // The following line is only necessary for this example because we the configuration in
- // resources/META-INF/services/javax.ws.rs.client.ClientBuilder. If you are using Resteasy by default, this line
- // is not necessary
+ public static void main(String[] args) {
+ // The following line is only necessary for this example because of our configuration in
+ // resources/META-INF/services/javax.ws.rs.client.ClientBuilder
+ // which enables Jersey by default. If you are using Resteasy by default, this line is not necessary
System.setProperty(
ClientBuilder.JAXRS_DEFAULT_CLIENT_BUILDER_PROPERTY,
"org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder");
diff --git a/bmc-examples/src/main/java/MoveCompartmentExample.java b/bmc-examples/src/main/java/MoveCompartmentExample.java
index 9aefa3a2def..24f580688b0 100644
--- a/bmc-examples/src/main/java/MoveCompartmentExample.java
+++ b/bmc-examples/src/main/java/MoveCompartmentExample.java
@@ -3,7 +3,6 @@
*/
import com.oracle.bmc.auth.AuthenticationDetailsProvider;
import com.oracle.bmc.auth.ConfigFileAuthenticationDetailsProvider;
-import com.oracle.bmc.http.ResteasyClientConfigurator;
import com.oracle.bmc.identity.Identity;
import com.oracle.bmc.identity.IdentityClient;
import com.oracle.bmc.identity.model.Compartment;
diff --git a/bmc-examples/src/main/java/ResteasyClientExample.java b/bmc-examples/src/main/java/ResteasyClientExample.java
index 2a2b276d63a..e18efe7639f 100644
--- a/bmc-examples/src/main/java/ResteasyClientExample.java
+++ b/bmc-examples/src/main/java/ResteasyClientExample.java
@@ -43,9 +43,9 @@ public static void main(String[] args) throws Exception {
final AuthenticationDetailsProvider provider =
new ConfigFileAuthenticationDetailsProvider(configFile);
- // The following line is only necessary for this example because we the configuration in
- // resources/META-INF/services/javax.ws.rs.client.ClientBuilder. If you are using Resteasy by default, this line
- // is not necessary
+ // The following line is only necessary for this example because of our configuration in
+ // resources/META-INF/services/javax.ws.rs.client.ClientBuilder
+ // which enables Jersey by default. If you are using Resteasy by default, this line is not necessary
System.setProperty(
ClientBuilder.JAXRS_DEFAULT_CLIENT_BUILDER_PROPERTY,
"org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder");
diff --git a/bmc-examples/src/main/java/ResteasyClientWithObjectStorageExample.java b/bmc-examples/src/main/java/ResteasyClientWithObjectStorageExample.java
index 2d2512a2565..8a393d2901b 100644
--- a/bmc-examples/src/main/java/ResteasyClientWithObjectStorageExample.java
+++ b/bmc-examples/src/main/java/ResteasyClientWithObjectStorageExample.java
@@ -6,39 +6,21 @@
import com.oracle.bmc.auth.AuthenticationDetailsProvider;
import com.oracle.bmc.auth.ConfigFileAuthenticationDetailsProvider;
import com.oracle.bmc.http.ResteasyClientConfigurator;
-import com.oracle.bmc.identity.IdentityAsyncClient;
-import com.oracle.bmc.identity.IdentityClient;
-import com.oracle.bmc.identity.model.AvailabilityDomain;
-import com.oracle.bmc.identity.model.CreateUserDetails;
-import com.oracle.bmc.identity.model.UpdateUserDetails;
-import com.oracle.bmc.identity.requests.CreateUserRequest;
-import com.oracle.bmc.identity.requests.DeleteUserRequest;
-import com.oracle.bmc.identity.requests.GetUserRequest;
-import com.oracle.bmc.identity.requests.ListAvailabilityDomainsRequest;
-import com.oracle.bmc.identity.requests.UpdateUserRequest;
-import com.oracle.bmc.identity.responses.CreateUserResponse;
-import com.oracle.bmc.identity.responses.GetUserResponse;
-import com.oracle.bmc.identity.responses.ListAvailabilityDomainsResponse;
-import com.oracle.bmc.identity.responses.UpdateUserResponse;
import com.oracle.bmc.objectstorage.ObjectStorage;
-import com.oracle.bmc.objectstorage.ObjectStorageAsync;
import com.oracle.bmc.objectstorage.ObjectStorageAsyncClient;
import com.oracle.bmc.objectstorage.ObjectStorageClient;
-import com.oracle.bmc.objectstorage.model.BucketSummary;
import com.oracle.bmc.objectstorage.model.CreateBucketDetails;
import com.oracle.bmc.objectstorage.requests.CreateBucketRequest;
import com.oracle.bmc.objectstorage.requests.DeleteBucketRequest;
import com.oracle.bmc.objectstorage.requests.DeleteObjectRequest;
import com.oracle.bmc.objectstorage.requests.GetNamespaceRequest;
import com.oracle.bmc.objectstorage.requests.GetObjectRequest;
-import com.oracle.bmc.objectstorage.requests.ListBucketsRequest;
import com.oracle.bmc.objectstorage.requests.PutObjectRequest;
import com.oracle.bmc.objectstorage.responses.CreateBucketResponse;
import com.oracle.bmc.objectstorage.responses.DeleteBucketResponse;
import com.oracle.bmc.objectstorage.responses.DeleteObjectResponse;
import com.oracle.bmc.objectstorage.responses.GetNamespaceResponse;
import com.oracle.bmc.objectstorage.responses.GetObjectResponse;
-import com.oracle.bmc.objectstorage.responses.ListBucketsResponse;
import com.oracle.bmc.objectstorage.responses.PutObjectResponse;
import com.oracle.bmc.responses.AsyncHandler;
import lombok.extern.slf4j.Slf4j;
@@ -51,6 +33,10 @@
/**
* An example to demonstrate how to use resteasy client with JavaSDK.
+ *
+ * When running this example, comment out the following line in the bmc-examples/pom.xml file:
+ *
+ * provided
*/
@Slf4j
public class ResteasyClientWithObjectStorageExample {
@@ -66,9 +52,9 @@ public static void main(String[] args) throws Exception {
final AuthenticationDetailsProvider provider =
new ConfigFileAuthenticationDetailsProvider(configFile);
- // The following line is only necessary for this example because we the configuration in
- // resources/META-INF/services/javax.ws.rs.client.ClientBuilder. If you are using Resteasy by default, this line
- // is not necessary
+ // The following line is only necessary for this example because of our configuration in
+ // resources/META-INF/services/javax.ws.rs.client.ClientBuilder
+ // which enables Jersey by default. If you are using Resteasy by default, this line is not necessary
System.setProperty(
ClientBuilder.JAXRS_DEFAULT_CLIENT_BUILDER_PROPERTY,
"org.jboss.resteasy.client.jaxrs.ResteasyClientBuilder");
diff --git a/bmc-examples/src/main/java/WaasAddressListExample.java b/bmc-examples/src/main/java/WaasAddressListExample.java
new file mode 100644
index 00000000000..d2e116ed64a
--- /dev/null
+++ b/bmc-examples/src/main/java/WaasAddressListExample.java
@@ -0,0 +1,205 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+import com.oracle.bmc.ConfigFileReader;
+import com.oracle.bmc.auth.AuthenticationDetailsProvider;
+import com.oracle.bmc.auth.ConfigFileAuthenticationDetailsProvider;
+import com.oracle.bmc.identity.IdentityClient;
+import com.oracle.bmc.waas.WaasClient;
+import com.oracle.bmc.waas.model.*;
+import com.oracle.bmc.waas.requests.*;
+import com.oracle.bmc.waas.responses.ChangeAddressListCompartmentResponse;
+import com.oracle.bmc.waas.responses.CreateAddressListResponse;
+import com.oracle.bmc.waas.responses.GetAddressListResponse;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class WaasAddressListExample {
+
+ /**
+ * Configuration for the example, replace these with your own values.
+ */
+ private static final String CONFIG_LOCATION = "~/.oci/config";
+ private static final String CONFIG_PROFILE = "DEFAULT";
+ private static final String COMPARTMENT_ID = "ocid1.compartment.oc1...aaaaaa";
+ private static final String TARGET_COMPARTMENT_ID = "ocid1.compartment.oc1...xxxxxx";
+
+ /**
+ * The entry point for the example.
+ *
+ * @param args Arguments to provide to the example. The following arguments are expected:
+ *
+ *
+ * The request flow should look like the following:
+ * User -> `domain` -> OCI Web Application Firewall -> `origin`
+ */
+ public static void main(String[] args) throws Exception {
+ final ConfigFileReader.ConfigFile configFile =
+ ConfigFileReader.parse(CONFIG_LOCATION, CONFIG_PROFILE);
+ final AuthenticationDetailsProvider provider =
+ new ConfigFileAuthenticationDetailsProvider(configFile);
+ final WaasClient waasClient = new WaasClient(provider);
+ final IdentityClient identityClient = new IdentityClient(provider);
+
+ AddressList addressList = null;
+ try {
+ addressList = createAddressList(waasClient, COMPARTMENT_ID, "BlockedAddresses");
+
+ listAddressLists(waasClient, COMPARTMENT_ID);
+
+ changeAddressListCompartment(waasClient, addressList.getId(), TARGET_COMPARTMENT_ID);
+
+ getAddressList(waasClient, addressList.getId());
+
+ deleteAddressList(waasClient, addressList.getId());
+
+ } finally {
+
+ waasClient.close();
+ identityClient.close();
+ }
+ }
+
+ /**
+ * Creates a new Address List
+ *
+ * @param waasClient the client used to communicate with the WAAS service
+ * @param compartmentId the OCID of the compartment that owns the Address List
+ * @param name text used as a displayName in the created resource
+ *
+ * @return the created Address List
+ */
+ private static AddressList createAddressList(
+ final WaasClient waasClient, final String compartmentId, final String name) {
+
+ final List addresses = new ArrayList();
+ addresses.add("127.0.0.1");
+
+ System.out.println("Creating Address List");
+ System.out.println("=======================");
+
+ CreateAddressListDetails.Builder addressListDetails =
+ CreateAddressListDetails.builder()
+ .compartmentId(compartmentId)
+ .displayName(name)
+ .addresses(addresses);
+
+ final CreateAddressListResponse addressListResponse =
+ waasClient.createAddressList(
+ CreateAddressListRequest.builder()
+ .createAddressListDetails(addressListDetails.build())
+ .build());
+
+ System.out.println("Address List has been created " + addressListResponse.toString());
+ System.out.println();
+
+ return addressListResponse.getAddressList();
+ }
+
+ /**
+ * Deletes a WAAS policy and waits for it to be deleted
+ *
+ * @param waasClient the client used to communicate with the WAAS service
+ * @param addressListId the custom protection rule OCID to delete
+ */
+ private static void deleteAddressList(final WaasClient waasClient, final String addressListId)
+ throws Exception {
+
+ waasClient.deleteAddressList(
+ DeleteAddressListRequest.builder().addressListId(addressListId).build());
+
+ waasClient
+ .getWaiters()
+ .forAddressList(
+ GetAddressListRequest.builder().addressListId(addressListId).build(),
+ LifecycleStates.Deleted)
+ .execute();
+
+ System.out.println("Address List deleted");
+ }
+
+ /**
+ * Lists Address Lists.
+ *
+ * @param waasClient the client used to communicate with the WAAS service
+ * @param compartmentId the OCID of the compartment to list resources in
+ */
+ private static void listAddressLists(WaasClient waasClient, final String compartmentId) {
+
+ System.out.println("Listing Address Lists");
+ System.out.println("=====================");
+
+ ListAddressListsRequest listAddressListsRequest =
+ ListAddressListsRequest.builder().compartmentId(compartmentId).build();
+
+ Iterable addressListIterator =
+ waasClient.getPaginators().listAddressListsRecordIterator(listAddressListsRequest);
+
+ for (AddressListSummary summary : addressListIterator) {
+ System.out.println("Address List name: " + summary.getDisplayName());
+ }
+ }
+
+ /**
+ * Changes the compartment for an existing Address List
+ *
+ * @param waasClient client used to communicate with the service
+ * @param addressListId ID of the Address List to be updated
+ * @param targetCompartmentId target compartment to which the Address List will be moved
+ */
+ private static void changeAddressListCompartment(
+ WaasClient waasClient, final String addressListId, final String targetCompartmentId) {
+ ChangeAddressListCompartmentResponse response =
+ waasClient.changeAddressListCompartment(
+ ChangeAddressListCompartmentRequest.builder()
+ .addressListId(addressListId)
+ .changeAddressListCompartmentDetails(
+ ChangeAddressListCompartmentDetails.builder()
+ .compartmentId(targetCompartmentId)
+ .build())
+ .build());
+
+ System.out.println("Moved Address List " + response.toString());
+ }
+
+ /**
+ * Gets Address List.
+ *
+ * @param waasClient the client used to communicate with the WAAS service
+ * @param addressListId the OCID of the Address List
+ */
+ private static AddressList getAddressList(WaasClient waasClient, final String addressListId) {
+
+ GetAddressListResponse addressListResponse =
+ waasClient.getAddressList(
+ GetAddressListRequest.builder().addressListId(addressListId).build());
+
+ System.out.println(
+ "Found address list: " + addressListResponse.getAddressList().getDisplayName());
+ return addressListResponse.getAddressList();
+ }
+}
diff --git a/bmc-examples/src/main/java/WaasCustomProtectionRuleExample.java b/bmc-examples/src/main/java/WaasCustomProtectionRuleExample.java
new file mode 100644
index 00000000000..b3b73591720
--- /dev/null
+++ b/bmc-examples/src/main/java/WaasCustomProtectionRuleExample.java
@@ -0,0 +1,224 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+import com.oracle.bmc.ConfigFileReader;
+import com.oracle.bmc.auth.AuthenticationDetailsProvider;
+import com.oracle.bmc.auth.ConfigFileAuthenticationDetailsProvider;
+import com.oracle.bmc.identity.IdentityClient;
+import com.oracle.bmc.waas.WaasClient;
+import com.oracle.bmc.waas.model.*;
+import com.oracle.bmc.waas.requests.*;
+import com.oracle.bmc.waas.responses.*;
+
+import java.nio.charset.StandardCharsets;
+import java.nio.file.Files;
+import java.nio.file.Paths;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+public class WaasCustomProtectionRuleExample {
+
+ /**
+ * Configuration for the example, replace these with your own values.
+ */
+ private static final String CONFIG_LOCATION = "~/.oci/config";
+ private static final String CONFIG_PROFILE = "DEFAULT";
+ private static final String CUSTOM_PROTECTION_RULE_TEMPLATE_LOCATION = "~/.oci/template";
+ private static final String COMPARTMENT_ID = "ocid1.compartment.oc1...aaaaaa";
+ private static final String TARGET_COMPARTMENT_ID = "ocid1.compartment.oc1...xxxxxx";
+
+ /**
+ * The entry point for the example.
+ *
+ * @param args Arguments to provide to the example. The following arguments are expected:
+ *
+ *
+ * The request flow should look like the following:
+ * User -> `domain` -> OCI Web Application Firewall -> `origin`
+ */
+ public static void main(String[] args) throws Exception {
+ final ConfigFileReader.ConfigFile configFile =
+ ConfigFileReader.parse(CONFIG_LOCATION, CONFIG_PROFILE);
+ final AuthenticationDetailsProvider provider =
+ new ConfigFileAuthenticationDetailsProvider(configFile);
+ final WaasClient waasClient = new WaasClient(provider);
+ final IdentityClient identityClient = new IdentityClient(provider);
+
+ String customProtectionRuleTemplate =
+ new String(
+ Files.readAllBytes(Paths.get(CUSTOM_PROTECTION_RULE_TEMPLATE_LOCATION)),
+ StandardCharsets.UTF_8);
+
+ CustomProtectionRule customProtectionRule = null;
+ try {
+ customProtectionRule =
+ createCustomProtectionRule(
+ waasClient, COMPARTMENT_ID, "CustomRule", customProtectionRuleTemplate);
+
+ listCustomProtectionRules(waasClient, COMPARTMENT_ID);
+
+ changeCustomProtectionRuleCompartment(
+ waasClient, customProtectionRule.getId(), TARGET_COMPARTMENT_ID);
+
+ getCustomProtectionRule(waasClient, customProtectionRule.getId());
+
+ deleteCustomProtectionRule(waasClient, customProtectionRule.getId());
+
+ } finally {
+
+ waasClient.close();
+ identityClient.close();
+ }
+ }
+
+ /**
+ * Creates a new Custom Protection Rule
+ *
+ * @param waasClient the client used to communicate with the WAAS service
+ * @param compartmentId the OCID of the compartment that owns the Address List
+ * @param name text used as a displayName in the created resource
+ * @param template protection rule template
+ *
+ * @return the created Custom Protection Rule
+ */
+ private static CustomProtectionRule createCustomProtectionRule(
+ WaasClient waasClient,
+ final String compartmentId,
+ final String name,
+ final String template) {
+
+ System.out.println("Creating new custom protection rule");
+ System.out.println("===================================");
+
+ CreateCustomProtectionRuleDetails customProtectionRuleDetails =
+ CreateCustomProtectionRuleDetails.builder()
+ .compartmentId(compartmentId)
+ .displayName(name)
+ .template(template)
+ .build();
+
+ final CreateCustomProtectionRuleResponse customProtectionRuleResponse =
+ waasClient.createCustomProtectionRule(
+ CreateCustomProtectionRuleRequest.builder()
+ .createCustomProtectionRuleDetails(customProtectionRuleDetails)
+ .build());
+
+ System.out.println("New custom protection rule has been created");
+ return customProtectionRuleResponse.getCustomProtectionRule();
+ }
+
+ /**
+ * Deletes a WAAS policy and waits for it to be deleted
+ *
+ * @param waasClient the client used to communicate with the WAAS service
+ * @param customProtectionRuleId the custom protection rule OCID to delete
+ */
+ private static void deleteCustomProtectionRule(
+ WaasClient waasClient, final String customProtectionRuleId) {
+ waasClient.deleteCustomProtectionRule(
+ DeleteCustomProtectionRuleRequest.builder()
+ .customProtectionRuleId(customProtectionRuleId)
+ .build());
+
+ waasClient
+ .getWaiters()
+ .forCustomProtectionRule(
+ GetCustomProtectionRuleRequest.builder()
+ .customProtectionRuleId(customProtectionRuleId)
+ .build(),
+ LifecycleStates.Deleted);
+
+ System.out.println("Custom protection rule deleted");
+ }
+
+ /**
+ * Gets Custom Protection Rule.
+ *
+ * @param waasClient the client used to communicate with the WAAS service
+ * @param customProtectionRuleId the OCID of the Custom Protection Rule
+ */
+ private static CustomProtectionRule getCustomProtectionRule(
+ WaasClient waasClient, final String customProtectionRuleId) {
+
+ GetCustomProtectionRuleResponse customProtectionRuleResponse =
+ waasClient.getCustomProtectionRule(
+ GetCustomProtectionRuleRequest.builder()
+ .customProtectionRuleId(customProtectionRuleId)
+ .build());
+
+ return customProtectionRuleResponse.getCustomProtectionRule();
+ }
+
+ /**
+ * Lists Custom Protection Rules of the compartment.
+ *
+ * @param waasClient the client used to communicate with the WAAS service
+ * @param compartmentId the OCID of the compartments to list resources to
+ */
+ private static void listCustomProtectionRules(
+ WaasClient waasClient, final String compartmentId) {
+
+ System.out.println("Listing Custom Protection rules");
+ System.out.println("===============================");
+
+ ListCustomProtectionRulesRequest listCustomProtectionRulesRequest =
+ ListCustomProtectionRulesRequest.builder().compartmentId(compartmentId).build();
+
+ Iterable customProtectionRuleIterator =
+ waasClient
+ .getPaginators()
+ .listCustomProtectionRulesRecordIterator(listCustomProtectionRulesRequest);
+
+ for (CustomProtectionRuleSummary summary : customProtectionRuleIterator) {
+ System.out.println("Custom protection rule: " + summary.getDisplayName());
+ }
+ }
+
+ /**
+ * Changes the compartment for an existing Custom Protection Rule
+ *
+ * @param waasClient client used to communicate with the service
+ * @param customProtectionRuleId ID of the Custom Protection Rule to be updated
+ * @param targetCompartmentId target compartment to which the Custom Protection Rule will be moved
+ */
+ private static void changeCustomProtectionRuleCompartment(
+ WaasClient waasClient,
+ final String customProtectionRuleId,
+ final String targetCompartmentId) {
+ ChangeCustomProtectionRuleCompartmentResponse response =
+ waasClient.changeCustomProtectionRuleCompartment(
+ ChangeCustomProtectionRuleCompartmentRequest.builder()
+ .customProtectionRuleId(customProtectionRuleId)
+ .changeCustomProtectionRuleCompartmentDetails(
+ ChangeCustomProtectionRuleCompartmentDetails.builder()
+ .compartmentId(targetCompartmentId)
+ .build())
+ .build());
+
+ System.out.println("Moved Custom Protection rule " + response.toString());
+ }
+}
diff --git a/bmc-examples/src/main/java/WaasServiceExample.java b/bmc-examples/src/main/java/WaasServiceExample.java
index d186069628d..76db5098319 100644
--- a/bmc-examples/src/main/java/WaasServiceExample.java
+++ b/bmc-examples/src/main/java/WaasServiceExample.java
@@ -1,7 +1,6 @@
/**
* Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
*/
-import com.oracle.bmc.Region;
import com.oracle.bmc.ConfigFileReader;
import com.oracle.bmc.ConfigFileReader.ConfigFile;
import com.oracle.bmc.auth.AuthenticationDetailsProvider;
@@ -9,45 +8,21 @@
import com.oracle.bmc.identity.IdentityClient;
import com.oracle.bmc.waas.WaasClient;
import com.oracle.bmc.waas.WaasPaginators;
-import com.oracle.bmc.waas.model.Captcha;
-import com.oracle.bmc.waas.model.Certificate;
-import com.oracle.bmc.waas.model.CreateCertificateDetails;
-import com.oracle.bmc.waas.model.CreateWaasPolicyDetails;
-import com.oracle.bmc.waas.model.LifecycleStates;
-import com.oracle.bmc.waas.model.Origin;
-import com.oracle.bmc.waas.model.PolicyConfig;
-import com.oracle.bmc.waas.model.WaasPolicy;
-import com.oracle.bmc.waas.model.WaasPolicySummary;
-import com.oracle.bmc.waas.requests.CreateCertificateRequest;
-import com.oracle.bmc.waas.requests.CreateWaasPolicyRequest;
-import com.oracle.bmc.waas.requests.DeleteCertificateRequest;
-import com.oracle.bmc.waas.requests.DeleteWaasPolicyRequest;
-import com.oracle.bmc.waas.requests.GetCertificateRequest;
-import com.oracle.bmc.waas.requests.GetWaasPolicyRequest;
-import com.oracle.bmc.waas.requests.GetWorkRequestRequest;
-import com.oracle.bmc.waas.requests.ListCaptchasRequest;
-import com.oracle.bmc.waas.requests.ListWaasPoliciesRequest;
-import com.oracle.bmc.waas.requests.UpdateCaptchasRequest;
-import com.oracle.bmc.waas.responses.CreateCertificateResponse;
-import com.oracle.bmc.waas.responses.CreateWaasPolicyResponse;
-import com.oracle.bmc.waas.responses.GetWaasPolicyResponse;
-import com.oracle.bmc.waas.responses.GetWorkRequestResponse;
-import com.oracle.bmc.waas.responses.ListCaptchasResponse;
+import com.oracle.bmc.waas.model.*;
+import com.oracle.bmc.waas.requests.*;
+import com.oracle.bmc.waas.responses.*;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Paths;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
/**
* This class demonstrates how to use the WAAS service in the Java SDK. This will cover:
*
*
- * - Creating, retrieving, listing, and deleting WAAS policies
- * - Uploading, retrieving, listing, and deleting SSL certificates
+ * - Creating, retrieving, listing, moving and deleting WAAS policies
+ * - Uploading, retrieving, listing, moving and deleting SSL certificates
* - Creating and updating WAF protection rules
* - Updating challenges (CAPTCHAs, device fingerprints, etc.)
*
@@ -72,6 +47,7 @@ public class WaasServiceExample {
private static final String CONFIG_LOCATION = "~/.oci/config";
private static final String CONFIG_PROFILE = "DEFAULT";
private static final String COMPARTMENT_ID = "ocid1.compartment.oc1...aaaaaa";
+ private static final String TARGET_COMPARTMENT_ID = "ocid1.compartment.oc1...xxxxxx";
private static final String DOMAIN = "www.mydomain.test";
private static final String ORIGIN = "192.168.2.1";
private static final String KEY_PATH = "path/to/rsa_key";
@@ -141,6 +117,15 @@ public static void main(String[] args) throws Exception {
listPolicies(waasClient, COMPARTMENT_ID, DOMAIN);
+ changePolicyCompartment(waasClient, policy.getId(), TARGET_COMPARTMENT_ID);
+
+ listCachingRules(waasClient, policy.getId());
+
+ updateCachingRule(
+ waasClient, policy.getId(), "CacheRule", CachingRule.Action.BypassCache);
+
+ changeCertificateCompartment(waasClient, certificate.getId(), TARGET_COMPARTMENT_ID);
+
addCaptcha(
waasClient,
policy.getId(),
@@ -198,6 +183,30 @@ private static Certificate uploadCertificate(
return createResponse.getCertificate();
}
+ /**
+ * Changes the compartment for an existing SSL Certificate
+ *
+ * @param waasClient client used to communicate with the service
+ * @param certificateId ID of the waasPolicy to be updated
+ * @param targetCompartment target compartment to which the LoadBalancer will be moved
+ */
+ private static void changeCertificateCompartment(
+ final WaasClient waasClient,
+ final String certificateId,
+ final String targetCompartment) {
+ ChangeCertificateCompartmentResponse response =
+ waasClient.changeCertificateCompartment(
+ ChangeCertificateCompartmentRequest.builder()
+ .certificateId(certificateId)
+ .changeCertificateCompartmentDetails(
+ ChangeCertificateCompartmentDetails.builder()
+ .compartmentId(targetCompartment)
+ .build())
+ .build());
+ System.out.println("Moved SSL Certificate " + response.toString());
+ System.out.println();
+ }
+
/**
* Creates a WAAS policy and waits for it to be come available.
*
@@ -221,9 +230,12 @@ private static WaasPolicy createPolicy(
Map origins = new HashMap<>();
origins.put(origin, Origin.builder().uri(origin).httpPort(80).httpsPort(443).build());
+ WafConfigDetails wafConfigDetails = WafConfigDetails.builder().origin(origin).build();
+
CreateWaasPolicyDetails.Builder policyDetails =
CreateWaasPolicyDetails.builder()
.compartmentId(compartmentId)
+ .wafConfig(wafConfigDetails)
.domain(domain)
.origins(origins);
@@ -293,6 +305,30 @@ private static void listPolicies(
}
}
+ /**
+ * Changes the compartment for an existing WAAS Policy
+ *
+ * @param waasClient client used to communicate with the service
+ * @param waasPolicyId ID of the waasPolicy to be updated
+ * @param targetCompartment target compartment to which the WAAS Policy will be moved
+ */
+ private static void changePolicyCompartment(
+ final WaasClient waasClient,
+ final String waasPolicyId,
+ final String targetCompartment) {
+ ChangeWaasPolicyCompartmentResponse response =
+ waasClient.changeWaasPolicyCompartment(
+ ChangeWaasPolicyCompartmentRequest.builder()
+ .waasPolicyId(waasPolicyId)
+ .changeWaasPolicyCompartmentDetails(
+ ChangeWaasPolicyCompartmentDetails.builder()
+ .compartmentId(targetCompartment)
+ .build())
+ .build());
+ System.out.println("Moved WAAS Policy " + response.toString());
+ System.out.println();
+ }
+
/**
* Deletes a WAAS policy and waits for it to be deleted
*
@@ -395,4 +431,73 @@ private static void listCaptchas(final WaasClient waasClient, final String polic
System.out.println(captcha);
}
}
+ /**
+ * Update Caching Rule of the WAAS policy.
+ *
+ * @param waasClient the client used to communicate with the WAAS service
+ * @param waasPolicyId the OCID of the WAAS Policy to list resources of
+ * @param name text used as a name of the Caching Rule
+ * @param action the action to take on matched caching rules
+ */
+ private static void updateCachingRule(
+ WaasClient waasClient,
+ final String waasPolicyId,
+ final String name,
+ final CachingRule.Action action) {
+
+ ListCachingRulesRequest listCachingRulesRequest =
+ ListCachingRulesRequest.builder().waasPolicyId(waasPolicyId).build();
+
+ Iterable cachingRuleIterator =
+ waasClient.getPaginators().listCachingRulesRecordIterator(listCachingRulesRequest);
+
+ for (CachingRuleSummary summary : cachingRuleIterator) {
+ if (summary.getName() == name) {
+ CachingRule cachingRule =
+ new CachingRule(
+ summary.getKey(),
+ summary.getName(),
+ action,
+ summary.getCachingDuration(),
+ summary.getIsClientCachingEnabled(),
+ summary.getCachingDuration(),
+ summary.getCriteria());
+ UpdateCachingRulesRequest updateCachingRulesRequest =
+ UpdateCachingRulesRequest.builder()
+ .waasPolicyId(waasPolicyId)
+ .cachingRulesDetails(Arrays.asList(cachingRule))
+ .build();
+ }
+ }
+ }
+
+ /**
+ * Lists Caching Rules of the WAAS policy.
+ *
+ * @param waasClient the client used to communicate with the WAAS service
+ * @param waasPolicyId the OCID of the WAAS Policy to list resources of
+ */
+ private static void listCachingRules(WaasClient waasClient, final String waasPolicyId) {
+
+ ListCachingRulesRequest listCachingRulesRequest =
+ ListCachingRulesRequest.builder().waasPolicyId(waasPolicyId).build();
+
+ Iterable cachingRuleIterator =
+ waasClient.getPaginators().listCachingRulesRecordIterator(listCachingRulesRequest);
+
+ for (CachingRuleSummary summary : cachingRuleIterator) {
+ System.out.println("Caching rule: " + summary.getName());
+ }
+ }
+
+ /**
+ * Purge cache of the WAAS policy.
+ *
+ * @param waasClient the client used to communicate with the WAAS service
+ * @param waasPolicyId the OCID of the WAAS Policy to list resources of
+ */
+ private static void purgeWaasPolicyCache(WaasClient waasClient, final String waasPolicyId) {
+
+ waasClient.purgeCache(PurgeCacheRequest.builder().waasPolicyId(waasPolicyId).build());
+ }
}
diff --git a/bmc-filestorage/pom.xml b/bmc-filestorage/pom.xml
index 80745ab193d..a266c889325 100644
--- a/bmc-filestorage/pom.xml
+++ b/bmc-filestorage/pom.xml
@@ -5,7 +5,7 @@
com.oracle.oci.sdk
oci-java-sdk
- 1.6.0
+ 1.6.1
../pom.xml
@@ -19,7 +19,7 @@
com.oracle.oci.sdk
oci-java-sdk-common
- 1.6.0
+ 1.6.1
diff --git a/bmc-filestorage/src/main/java/com/oracle/bmc/filestorage/model/CreateFileSystemDetails.java b/bmc-filestorage/src/main/java/com/oracle/bmc/filestorage/model/CreateFileSystemDetails.java
index 127ac16510c..c280faaf4c7 100644
--- a/bmc-filestorage/src/main/java/com/oracle/bmc/filestorage/model/CreateFileSystemDetails.java
+++ b/bmc-filestorage/src/main/java/com/oracle/bmc/filestorage/model/CreateFileSystemDetails.java
@@ -70,6 +70,15 @@ public Builder definedTags(
return this;
}
+ @com.fasterxml.jackson.annotation.JsonProperty("kmsKeyId")
+ private String kmsKeyId;
+
+ public Builder kmsKeyId(String kmsKeyId) {
+ this.kmsKeyId = kmsKeyId;
+ this.__explicitlySet__.add("kmsKeyId");
+ return this;
+ }
+
@com.fasterxml.jackson.annotation.JsonIgnore
private final java.util.Set __explicitlySet__ = new java.util.HashSet();
@@ -80,7 +89,8 @@ public CreateFileSystemDetails build() {
compartmentId,
displayName,
freeformTags,
- definedTags);
+ definedTags,
+ kmsKeyId);
__instance__.__explicitlySet__.addAll(__explicitlySet__);
return __instance__;
}
@@ -92,7 +102,8 @@ public Builder copy(CreateFileSystemDetails o) {
.compartmentId(o.getCompartmentId())
.displayName(o.getDisplayName())
.freeformTags(o.getFreeformTags())
- .definedTags(o.getDefinedTags());
+ .definedTags(o.getDefinedTags())
+ .kmsKeyId(o.getKmsKeyId());
copiedBuilder.__explicitlySet__.retainAll(o.__explicitlySet__);
return copiedBuilder;
@@ -150,6 +161,13 @@ public static Builder builder() {
@com.fasterxml.jackson.annotation.JsonProperty("definedTags")
java.util.Map> definedTags;
+ /**
+ * The OCID of KMS key used to encrypt the encryption keys associated with this file system.
+ *
+ **/
+ @com.fasterxml.jackson.annotation.JsonProperty("kmsKeyId")
+ String kmsKeyId;
+
@com.fasterxml.jackson.annotation.JsonIgnore
private final java.util.Set __explicitlySet__ = new java.util.HashSet();
}
diff --git a/bmc-filestorage/src/main/java/com/oracle/bmc/filestorage/model/FileSystem.java b/bmc-filestorage/src/main/java/com/oracle/bmc/filestorage/model/FileSystem.java
index 2cbb469477f..7933c107a2e 100644
--- a/bmc-filestorage/src/main/java/com/oracle/bmc/filestorage/model/FileSystem.java
+++ b/bmc-filestorage/src/main/java/com/oracle/bmc/filestorage/model/FileSystem.java
@@ -116,6 +116,15 @@ public Builder definedTags(
return this;
}
+ @com.fasterxml.jackson.annotation.JsonProperty("kmsKeyId")
+ private String kmsKeyId;
+
+ public Builder kmsKeyId(String kmsKeyId) {
+ this.kmsKeyId = kmsKeyId;
+ this.__explicitlySet__.add("kmsKeyId");
+ return this;
+ }
+
@com.fasterxml.jackson.annotation.JsonIgnore
private final java.util.Set __explicitlySet__ = new java.util.HashSet();
@@ -130,7 +139,8 @@ public FileSystem build() {
lifecycleState,
timeCreated,
freeformTags,
- definedTags);
+ definedTags,
+ kmsKeyId);
__instance__.__explicitlySet__.addAll(__explicitlySet__);
return __instance__;
}
@@ -146,7 +156,8 @@ public Builder copy(FileSystem o) {
.lifecycleState(o.getLifecycleState())
.timeCreated(o.getTimeCreated())
.freeformTags(o.getFreeformTags())
- .definedTags(o.getDefinedTags());
+ .definedTags(o.getDefinedTags())
+ .kmsKeyId(o.getKmsKeyId());
copiedBuilder.__explicitlySet__.retainAll(o.__explicitlySet__);
return copiedBuilder;
@@ -284,6 +295,13 @@ public static LifecycleState create(String key) {
@com.fasterxml.jackson.annotation.JsonProperty("definedTags")
java.util.Map> definedTags;
+ /**
+ * The OCID of KMS key used to encrypt the encryption keys associated with this file system.
+ *
+ **/
+ @com.fasterxml.jackson.annotation.JsonProperty("kmsKeyId")
+ String kmsKeyId;
+
@com.fasterxml.jackson.annotation.JsonIgnore
private final java.util.Set __explicitlySet__ = new java.util.HashSet();
}
diff --git a/bmc-filestorage/src/main/java/com/oracle/bmc/filestorage/model/FileSystemSummary.java b/bmc-filestorage/src/main/java/com/oracle/bmc/filestorage/model/FileSystemSummary.java
index 848f17862bb..3cffc30006e 100644
--- a/bmc-filestorage/src/main/java/com/oracle/bmc/filestorage/model/FileSystemSummary.java
+++ b/bmc-filestorage/src/main/java/com/oracle/bmc/filestorage/model/FileSystemSummary.java
@@ -107,6 +107,15 @@ public Builder definedTags(
return this;
}
+ @com.fasterxml.jackson.annotation.JsonProperty("kmsKeyId")
+ private String kmsKeyId;
+
+ public Builder kmsKeyId(String kmsKeyId) {
+ this.kmsKeyId = kmsKeyId;
+ this.__explicitlySet__.add("kmsKeyId");
+ return this;
+ }
+
@com.fasterxml.jackson.annotation.JsonIgnore
private final java.util.Set __explicitlySet__ = new java.util.HashSet();
@@ -121,7 +130,8 @@ public FileSystemSummary build() {
lifecycleState,
timeCreated,
freeformTags,
- definedTags);
+ definedTags,
+ kmsKeyId);
__instance__.__explicitlySet__.addAll(__explicitlySet__);
return __instance__;
}
@@ -137,7 +147,8 @@ public Builder copy(FileSystemSummary o) {
.lifecycleState(o.getLifecycleState())
.timeCreated(o.getTimeCreated())
.freeformTags(o.getFreeformTags())
- .definedTags(o.getDefinedTags());
+ .definedTags(o.getDefinedTags())
+ .kmsKeyId(o.getKmsKeyId());
copiedBuilder.__explicitlySet__.retainAll(o.__explicitlySet__);
return copiedBuilder;
@@ -275,6 +286,13 @@ public static LifecycleState create(String key) {
@com.fasterxml.jackson.annotation.JsonProperty("definedTags")
java.util.Map> definedTags;
+ /**
+ * The OCID of KMS key used to encrypt the encryption keys associated with this file system.
+ *
+ **/
+ @com.fasterxml.jackson.annotation.JsonProperty("kmsKeyId")
+ String kmsKeyId;
+
@com.fasterxml.jackson.annotation.JsonIgnore
private final java.util.Set __explicitlySet__ = new java.util.HashSet();
}
diff --git a/bmc-filestorage/src/main/java/com/oracle/bmc/filestorage/model/UpdateFileSystemDetails.java b/bmc-filestorage/src/main/java/com/oracle/bmc/filestorage/model/UpdateFileSystemDetails.java
index 91573a7a8b8..23a084bb987 100644
--- a/bmc-filestorage/src/main/java/com/oracle/bmc/filestorage/model/UpdateFileSystemDetails.java
+++ b/bmc-filestorage/src/main/java/com/oracle/bmc/filestorage/model/UpdateFileSystemDetails.java
@@ -52,12 +52,21 @@ public Builder definedTags(
return this;
}
+ @com.fasterxml.jackson.annotation.JsonProperty("kmsKeyId")
+ private String kmsKeyId;
+
+ public Builder kmsKeyId(String kmsKeyId) {
+ this.kmsKeyId = kmsKeyId;
+ this.__explicitlySet__.add("kmsKeyId");
+ return this;
+ }
+
@com.fasterxml.jackson.annotation.JsonIgnore
private final java.util.Set __explicitlySet__ = new java.util.HashSet();
public UpdateFileSystemDetails build() {
UpdateFileSystemDetails __instance__ =
- new UpdateFileSystemDetails(displayName, freeformTags, definedTags);
+ new UpdateFileSystemDetails(displayName, freeformTags, definedTags, kmsKeyId);
__instance__.__explicitlySet__.addAll(__explicitlySet__);
return __instance__;
}
@@ -67,7 +76,8 @@ public Builder copy(UpdateFileSystemDetails o) {
Builder copiedBuilder =
displayName(o.getDisplayName())
.freeformTags(o.getFreeformTags())
- .definedTags(o.getDefinedTags());
+ .definedTags(o.getDefinedTags())
+ .kmsKeyId(o.getKmsKeyId());
copiedBuilder.__explicitlySet__.retainAll(o.__explicitlySet__);
return copiedBuilder;
@@ -110,6 +120,16 @@ public static Builder builder() {
@com.fasterxml.jackson.annotation.JsonProperty("definedTags")
java.util.Map> definedTags;
+ /**
+ * A KMS key OCID that will be associated with the given file system. If it is empty the Update operation will
+ * actually remove the KMS key, if there is one, from the given file system. Note that the old KMS key should
+ * still be enabled in KMS otherwise all the files in the file system encrypted with the old KMS key will no
+ * longer be accessible.
+ *
+ **/
+ @com.fasterxml.jackson.annotation.JsonProperty("kmsKeyId")
+ String kmsKeyId;
+
@com.fasterxml.jackson.annotation.JsonIgnore
private final java.util.Set __explicitlySet__ = new java.util.HashSet();
}
diff --git a/bmc-full/pom.xml b/bmc-full/pom.xml
index 2ffc191bce1..fbb875ce597 100644
--- a/bmc-full/pom.xml
+++ b/bmc-full/pom.xml
@@ -4,7 +4,7 @@
com.oracle.oci.sdk
oci-java-sdk
- 1.6.0
+ 1.6.1
../pom.xml
oci-java-sdk-full
@@ -16,7 +16,7 @@
com.oracle.oci.sdk
oci-java-sdk-bom
- 1.6.0
+ 1.6.1
pom
import
diff --git a/bmc-functions/pom.xml b/bmc-functions/pom.xml
index c0fa8c59c56..508244525e7 100644
--- a/bmc-functions/pom.xml
+++ b/bmc-functions/pom.xml
@@ -4,7 +4,7 @@
com.oracle.oci.sdk
oci-java-sdk
- 1.6.0
+ 1.6.1
../pom.xml
oci-java-sdk-functions
@@ -15,7 +15,7 @@
com.oracle.oci.sdk
oci-java-sdk-common
- 1.6.0
+ 1.6.1
\ No newline at end of file
diff --git a/bmc-healthchecks/pom.xml b/bmc-healthchecks/pom.xml
index 580170b5ff2..839dbb8a866 100644
--- a/bmc-healthchecks/pom.xml
+++ b/bmc-healthchecks/pom.xml
@@ -4,7 +4,7 @@
com.oracle.oci.sdk
oci-java-sdk
- 1.6.0
+ 1.6.1
../pom.xml
oci-java-sdk-healthchecks
@@ -17,7 +17,7 @@
com.oracle.oci.sdk
oci-java-sdk-common
- 1.6.0
+ 1.6.1
diff --git a/bmc-identity/pom.xml b/bmc-identity/pom.xml
index 8f3ff083a72..22215ef3e59 100644
--- a/bmc-identity/pom.xml
+++ b/bmc-identity/pom.xml
@@ -5,7 +5,7 @@
com.oracle.oci.sdk
oci-java-sdk
- 1.6.0
+ 1.6.1
../pom.xml
@@ -19,7 +19,7 @@
com.oracle.oci.sdk
oci-java-sdk-common
- 1.6.0
+ 1.6.1
diff --git a/bmc-keymanagement/pom.xml b/bmc-keymanagement/pom.xml
index 735fb5e5489..3e2f99db70a 100644
--- a/bmc-keymanagement/pom.xml
+++ b/bmc-keymanagement/pom.xml
@@ -4,7 +4,7 @@
com.oracle.oci.sdk
oci-java-sdk
- 1.6.0
+ 1.6.1
../pom.xml
oci-java-sdk-keymanagement
@@ -17,7 +17,7 @@
com.oracle.oci.sdk
oci-java-sdk-common
- 1.6.0
+ 1.6.1
diff --git a/bmc-limits/pom.xml b/bmc-limits/pom.xml
index 07bc3f68f21..89673687ede 100644
--- a/bmc-limits/pom.xml
+++ b/bmc-limits/pom.xml
@@ -4,7 +4,7 @@
com.oracle.oci.sdk
oci-java-sdk
- 1.6.0
+ 1.6.1
../pom.xml
oci-java-sdk-limits
@@ -15,7 +15,7 @@
com.oracle.oci.sdk
oci-java-sdk-common
- 1.6.0
+ 1.6.1
\ No newline at end of file
diff --git a/bmc-limits/src/main/java/com/oracle/bmc/limits/Limits.java b/bmc-limits/src/main/java/com/oracle/bmc/limits/Limits.java
new file mode 100644
index 00000000000..3cc1286c47d
--- /dev/null
+++ b/bmc-limits/src/main/java/com/oracle/bmc/limits/Limits.java
@@ -0,0 +1,89 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+package com.oracle.bmc.limits;
+
+import com.oracle.bmc.limits.requests.*;
+import com.oracle.bmc.limits.responses.*;
+
+@javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: ")
+public interface Limits extends AutoCloseable {
+
+ /**
+ * Sets the endpoint to call (ex, https://www.example.com).
+ * @param endpoint The endpoint of the service.
+ */
+ void setEndpoint(String endpoint);
+
+ /**
+ * Sets the region to call (ex, Region.US_PHOENIX_1).
+ *
+ * Note, this will call {@link #setEndpoint(String) setEndpoint} after resolving the endpoint. If the service is not available in this Region, however, an IllegalArgumentException will be raised.
+ * @param region The region of the service.
+ */
+ void setRegion(com.oracle.bmc.Region region);
+
+ /**
+ * Sets the region to call (ex, 'us-phoenix-1').
+ *
+ * Note, this will first try to map the region ID to a known Region and call
+ * {@link #setRegion(Region) setRegion}.
+ *
+ * If no known Region could be determined, it will create an endpoint based on the
+ * default endpoint format ({@link com.oracle.bmc.Region#formatDefaultRegionEndpoint(Service, String)}
+ * and then call {@link #setEndpoint(String) setEndpoint}.
+ * @param regionId The public region ID.
+ */
+ void setRegion(String regionId);
+
+ /**
+ * For a given compartmentId, resource limit name, and scope, returns the following:
+ * - the number of available resources associated with the given limit
+ * - the usage in the selected compartment for the given limit
+ * Note: not all resource limits support this API. If the value is not available, the API will return 404.
+ *
+ * @param request The request object containing the details to send
+ * @return A response object containing details about the completed operation
+ * @throws BmcException when an error occurs.
+ */
+ GetResourceAvailabilityResponse getResourceAvailability(GetResourceAvailabilityRequest request);
+
+ /**
+ * Includes a list of resource limits that are currently supported.
+ * If the 'areQuotasSupported' property is true, you can create quota policies on top of this limit at the
+ * compartment level.
+ *
+ * @param request The request object containing the details to send
+ * @return A response object containing details about the completed operation
+ * @throws BmcException when an error occurs.
+ */
+ ListLimitDefinitionsResponse listLimitDefinitions(ListLimitDefinitionsRequest request);
+
+ /**
+ * Includes a full list of resource limits belonging to a given service.
+ *
+ * @param request The request object containing the details to send
+ * @return A response object containing details about the completed operation
+ * @throws BmcException when an error occurs.
+ */
+ ListLimitValuesResponse listLimitValues(ListLimitValuesRequest request);
+
+ /**
+ * Returns the list of supported services.
+ * This will include the programmatic service name, along with the friendly service name.
+ *
+ * @param request The request object containing the details to send
+ * @return A response object containing details about the completed operation
+ * @throws BmcException when an error occurs.
+ */
+ ListServicesResponse listServices(ListServicesRequest request);
+
+ /**
+ * Gets the pre-configured paginators available for list operations in this service which may return multiple
+ * pages of data. These paginators provide an {@link java.lang.Iterable} interface so that service responses, or
+ * resources/records, can be iterated through without having to manually deal with pagination and page tokens.
+ *
+ * @return The service paginators.
+ */
+ LimitsPaginators getPaginators();
+}
diff --git a/bmc-limits/src/main/java/com/oracle/bmc/limits/LimitsAsync.java b/bmc-limits/src/main/java/com/oracle/bmc/limits/LimitsAsync.java
new file mode 100644
index 00000000000..d6047b5e0c7
--- /dev/null
+++ b/bmc-limits/src/main/java/com/oracle/bmc/limits/LimitsAsync.java
@@ -0,0 +1,110 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+package com.oracle.bmc.limits;
+
+import com.oracle.bmc.limits.requests.*;
+import com.oracle.bmc.limits.responses.*;
+
+@javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: ")
+public interface LimitsAsync extends AutoCloseable {
+
+ /**
+ * Sets the endpoint to call (ex, https://www.example.com).
+ * @param endpoint The endpoint of the serice.
+ */
+ void setEndpoint(String endpoint);
+
+ /**
+ * Sets the region to call (ex, Region.US_PHOENIX_1).
+ *
+ * Note, this will call {@link #setEndpoint(String) setEndpoint} after resolving the endpoint. If the service is not available in this region, however, an IllegalArgumentException will be raised.
+ * @param region The region of the service.
+ */
+ void setRegion(com.oracle.bmc.Region region);
+
+ /**
+ * Sets the region to call (ex, 'us-phoenix-1').
+ *
+ * Note, this will first try to map the region ID to a known Region and call
+ * {@link #setRegion(Region) setRegion}.
+ *
+ * If no known Region could be determined, it will create an endpoint based on the
+ * default endpoint format ({@link com.oracle.bmc.Region#formatDefaultRegionEndpoint(Service, String)}
+ * and then call {@link #setEndpoint(String) setEndpoint}.
+ * @param regionId The public region ID.
+ */
+ void setRegion(String regionId);
+
+ /**
+ * For a given compartmentId, resource limit name, and scope, returns the following:
+ * - the number of available resources associated with the given limit
+ * - the usage in the selected compartment for the given limit
+ * Note: not all resource limits support this API. If the value is not available, the API will return 404.
+ *
+ *
+ * @param request The request object containing the details to send
+ * @param handler The request handler to invoke upon completion, may be null.
+ * @return 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.
+ */
+ java.util.concurrent.Future getResourceAvailability(
+ GetResourceAvailabilityRequest request,
+ com.oracle.bmc.responses.AsyncHandler<
+ GetResourceAvailabilityRequest, GetResourceAvailabilityResponse>
+ handler);
+
+ /**
+ * Includes a list of resource limits that are currently supported.
+ * If the 'areQuotasSupported' property is true, you can create quota policies on top of this limit at the
+ * compartment level.
+ *
+ *
+ * @param request The request object containing the details to send
+ * @param handler The request handler to invoke upon completion, may be null.
+ * @return 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.
+ */
+ java.util.concurrent.Future listLimitDefinitions(
+ ListLimitDefinitionsRequest request,
+ com.oracle.bmc.responses.AsyncHandler<
+ ListLimitDefinitionsRequest, ListLimitDefinitionsResponse>
+ handler);
+
+ /**
+ * Includes a full list of resource limits belonging to a given service.
+ *
+ *
+ * @param request The request object containing the details to send
+ * @param handler The request handler to invoke upon completion, may be null.
+ * @return 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.
+ */
+ java.util.concurrent.Future listLimitValues(
+ ListLimitValuesRequest request,
+ com.oracle.bmc.responses.AsyncHandler
+ handler);
+
+ /**
+ * Returns the list of supported services.
+ * This will include the programmatic service name, along with the friendly service name.
+ *
+ *
+ * @param request The request object containing the details to send
+ * @param handler The request handler to invoke upon completion, may be null.
+ * @return 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.
+ */
+ java.util.concurrent.Future listServices(
+ ListServicesRequest request,
+ com.oracle.bmc.responses.AsyncHandler
+ handler);
+}
diff --git a/bmc-limits/src/main/java/com/oracle/bmc/limits/LimitsAsyncClient.java b/bmc-limits/src/main/java/com/oracle/bmc/limits/LimitsAsyncClient.java
new file mode 100644
index 00000000000..5c0ec27a46d
--- /dev/null
+++ b/bmc-limits/src/main/java/com/oracle/bmc/limits/LimitsAsyncClient.java
@@ -0,0 +1,603 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+package com.oracle.bmc.limits;
+
+import java.util.Locale;
+import com.oracle.bmc.limits.internal.http.*;
+import com.oracle.bmc.limits.requests.*;
+import com.oracle.bmc.limits.responses.*;
+
+/**
+ * Async client implementation for Limits 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: ")
+@lombok.extern.slf4j.Slf4j
+public class LimitsAsyncClient implements LimitsAsync {
+ /**
+ * Service instance for Limits.
+ */
+ public static final com.oracle.bmc.Service SERVICE =
+ com.oracle.bmc.Services.serviceBuilder()
+ .serviceName("LIMITS")
+ .serviceEndpointPrefix("")
+ .serviceEndpointTemplate("https://limits.{region}.oci.{secondLevelDomain}")
+ .build();
+
+ @lombok.Getter(value = lombok.AccessLevel.PACKAGE)
+ private final com.oracle.bmc.http.internal.RestClient client;
+
+ private final com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider
+ authenticationDetailsProvider;
+
+ /**
+ * Creates a new service instance using the given authentication provider.
+ * @param authenticationDetailsProvider The authentication details provider, required.
+ */
+ public LimitsAsyncClient(
+ 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 LimitsAsyncClient(
+ 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 LimitsAsyncClient(
+ 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 LimitsAsyncClient(
+ 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 LimitsAsyncClient(
+ 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 LimitsAsyncClient(
+ 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 LimitsAsyncClient(
+ 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 = authenticationDetailsProvider;
+ com.oracle.bmc.http.internal.RestClientFactory restClientFactory =
+ com.oracle.bmc.http.internal.RestClientFactoryBuilder.builder()
+ .clientConfigurator(clientConfigurator)
+ .additionalClientConfigurators(additionalClientConfigurators)
+ .build();
+ com.oracle.bmc.http.signing.RequestSigner defaultRequestSigner =
+ 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,
+ signingStrategyRequestSignerFactories
+ .get(s)
+ .createRequestSigner(SERVICE, authenticationDetailsProvider));
+ }
+ }
+ this.client = restClientFactory.create(defaultRequestSigner, requestSigners, configuration);
+
+ 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 LimitsAsyncClient build(
+ @lombok.NonNull
+ com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider
+ authenticationDetailsProvider) {
+ return new LimitsAsyncClient(
+ authenticationDetailsProvider,
+ configuration,
+ clientConfigurator,
+ requestSignerFactory,
+ additionalClientConfigurators,
+ endpoint);
+ }
+ }
+
+ @Override
+ public void setEndpoint(String endpoint) {
+ LOG.info("Setting endpoint to {}", endpoint);
+ client.setEndpoint(endpoint);
+ }
+
+ @Override
+ public void setRegion(com.oracle.bmc.Region region) {
+ com.google.common.base.Optional endpoint = 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(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 getResourceAvailability(
+ final GetResourceAvailabilityRequest request,
+ final com.oracle.bmc.responses.AsyncHandler<
+ GetResourceAvailabilityRequest, GetResourceAvailabilityResponse>
+ handler) {
+ LOG.trace("Called async getResourceAvailability");
+ final GetResourceAvailabilityRequest interceptedRequest =
+ GetResourceAvailabilityConverter.interceptRequest(request);
+ final com.oracle.bmc.http.internal.WrappedInvocationBuilder ib =
+ GetResourceAvailabilityConverter.fromRequest(client, interceptedRequest);
+ final com.google.common.base.Function<
+ javax.ws.rs.core.Response, GetResourceAvailabilityResponse>
+ transformer = GetResourceAvailabilityConverter.fromResponse();
+
+ com.oracle.bmc.responses.AsyncHandler<
+ GetResourceAvailabilityRequest, GetResourceAvailabilityResponse>
+ handlerToUse = handler;
+ if (handler != null
+ && this.authenticationDetailsProvider
+ instanceof com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) {
+ handlerToUse =
+ new com.oracle.bmc.util.internal.RefreshAuthTokenWrappingAsyncHandler<
+ GetResourceAvailabilityRequest, GetResourceAvailabilityResponse>(
+ (com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider)
+ this.authenticationDetailsProvider,
+ handler) {
+ @Override
+ public void retryCall() {
+ final com.oracle.bmc.util.internal.Consumer
+ onSuccess =
+ new com.oracle.bmc.http.internal.SuccessConsumer<>(
+ this, transformer, interceptedRequest);
+ final com.oracle.bmc.util.internal.Consumer onError =
+ new com.oracle.bmc.http.internal.ErrorConsumer<>(
+ this, interceptedRequest);
+ client.get(ib, interceptedRequest, onSuccess, onError);
+ }
+ };
+ }
+
+ final com.oracle.bmc.util.internal.Consumer onSuccess =
+ (handler == null)
+ ? null
+ : new com.oracle.bmc.http.internal.SuccessConsumer<>(
+ handlerToUse, transformer, interceptedRequest);
+ final com.oracle.bmc.util.internal.Consumer onError =
+ (handler == null)
+ ? null
+ : new com.oracle.bmc.http.internal.ErrorConsumer<>(
+ handlerToUse, interceptedRequest);
+
+ java.util.concurrent.Future responseFuture =
+ client.get(ib, interceptedRequest, onSuccess, onError);
+
+ if (this.authenticationDetailsProvider
+ instanceof com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) {
+ return new com.oracle.bmc.util.internal.RefreshAuthTokenTransformingFuture<
+ javax.ws.rs.core.Response, GetResourceAvailabilityResponse>(
+ responseFuture,
+ transformer,
+ (com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider)
+ this.authenticationDetailsProvider,
+ new com.google.common.base.Supplier<
+ java.util.concurrent.Future>() {
+ @Override
+ public java.util.concurrent.Future get() {
+ return client.get(ib, interceptedRequest, onSuccess, onError);
+ }
+ });
+ } else {
+ return new com.oracle.bmc.util.internal.TransformingFuture<>(
+ responseFuture, transformer);
+ }
+ }
+
+ @Override
+ public java.util.concurrent.Future listLimitDefinitions(
+ final ListLimitDefinitionsRequest request,
+ final com.oracle.bmc.responses.AsyncHandler<
+ ListLimitDefinitionsRequest, ListLimitDefinitionsResponse>
+ handler) {
+ LOG.trace("Called async listLimitDefinitions");
+ final ListLimitDefinitionsRequest interceptedRequest =
+ ListLimitDefinitionsConverter.interceptRequest(request);
+ final com.oracle.bmc.http.internal.WrappedInvocationBuilder ib =
+ ListLimitDefinitionsConverter.fromRequest(client, interceptedRequest);
+ final com.google.common.base.Function<
+ javax.ws.rs.core.Response, ListLimitDefinitionsResponse>
+ transformer = ListLimitDefinitionsConverter.fromResponse();
+
+ com.oracle.bmc.responses.AsyncHandler<
+ ListLimitDefinitionsRequest, ListLimitDefinitionsResponse>
+ handlerToUse = handler;
+ if (handler != null
+ && this.authenticationDetailsProvider
+ instanceof com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) {
+ handlerToUse =
+ new com.oracle.bmc.util.internal.RefreshAuthTokenWrappingAsyncHandler<
+ ListLimitDefinitionsRequest, ListLimitDefinitionsResponse>(
+ (com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider)
+ this.authenticationDetailsProvider,
+ handler) {
+ @Override
+ public void retryCall() {
+ final com.oracle.bmc.util.internal.Consumer
+ onSuccess =
+ new com.oracle.bmc.http.internal.SuccessConsumer<>(
+ this, transformer, interceptedRequest);
+ final com.oracle.bmc.util.internal.Consumer onError =
+ new com.oracle.bmc.http.internal.ErrorConsumer<>(
+ this, interceptedRequest);
+ client.get(ib, interceptedRequest, onSuccess, onError);
+ }
+ };
+ }
+
+ final com.oracle.bmc.util.internal.Consumer onSuccess =
+ (handler == null)
+ ? null
+ : new com.oracle.bmc.http.internal.SuccessConsumer<>(
+ handlerToUse, transformer, interceptedRequest);
+ final com.oracle.bmc.util.internal.Consumer onError =
+ (handler == null)
+ ? null
+ : new com.oracle.bmc.http.internal.ErrorConsumer<>(
+ handlerToUse, interceptedRequest);
+
+ java.util.concurrent.Future responseFuture =
+ client.get(ib, interceptedRequest, onSuccess, onError);
+
+ if (this.authenticationDetailsProvider
+ instanceof com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) {
+ return new com.oracle.bmc.util.internal.RefreshAuthTokenTransformingFuture<
+ javax.ws.rs.core.Response, ListLimitDefinitionsResponse>(
+ responseFuture,
+ transformer,
+ (com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider)
+ this.authenticationDetailsProvider,
+ new com.google.common.base.Supplier<
+ java.util.concurrent.Future>() {
+ @Override
+ public java.util.concurrent.Future get() {
+ return client.get(ib, interceptedRequest, onSuccess, onError);
+ }
+ });
+ } else {
+ return new com.oracle.bmc.util.internal.TransformingFuture<>(
+ responseFuture, transformer);
+ }
+ }
+
+ @Override
+ public java.util.concurrent.Future listLimitValues(
+ final ListLimitValuesRequest request,
+ final com.oracle.bmc.responses.AsyncHandler<
+ ListLimitValuesRequest, ListLimitValuesResponse>
+ handler) {
+ LOG.trace("Called async listLimitValues");
+ final ListLimitValuesRequest interceptedRequest =
+ ListLimitValuesConverter.interceptRequest(request);
+ final com.oracle.bmc.http.internal.WrappedInvocationBuilder ib =
+ ListLimitValuesConverter.fromRequest(client, interceptedRequest);
+ final com.google.common.base.Function
+ transformer = ListLimitValuesConverter.fromResponse();
+
+ com.oracle.bmc.responses.AsyncHandler
+ handlerToUse = handler;
+ if (handler != null
+ && this.authenticationDetailsProvider
+ instanceof com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) {
+ handlerToUse =
+ new com.oracle.bmc.util.internal.RefreshAuthTokenWrappingAsyncHandler<
+ ListLimitValuesRequest, ListLimitValuesResponse>(
+ (com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider)
+ this.authenticationDetailsProvider,
+ handler) {
+ @Override
+ public void retryCall() {
+ final com.oracle.bmc.util.internal.Consumer
+ onSuccess =
+ new com.oracle.bmc.http.internal.SuccessConsumer<>(
+ this, transformer, interceptedRequest);
+ final com.oracle.bmc.util.internal.Consumer onError =
+ new com.oracle.bmc.http.internal.ErrorConsumer<>(
+ this, interceptedRequest);
+ client.get(ib, interceptedRequest, onSuccess, onError);
+ }
+ };
+ }
+
+ final com.oracle.bmc.util.internal.Consumer onSuccess =
+ (handler == null)
+ ? null
+ : new com.oracle.bmc.http.internal.SuccessConsumer<>(
+ handlerToUse, transformer, interceptedRequest);
+ final com.oracle.bmc.util.internal.Consumer onError =
+ (handler == null)
+ ? null
+ : new com.oracle.bmc.http.internal.ErrorConsumer<>(
+ handlerToUse, interceptedRequest);
+
+ java.util.concurrent.Future responseFuture =
+ client.get(ib, interceptedRequest, onSuccess, onError);
+
+ if (this.authenticationDetailsProvider
+ instanceof com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) {
+ return new com.oracle.bmc.util.internal.RefreshAuthTokenTransformingFuture<
+ javax.ws.rs.core.Response, ListLimitValuesResponse>(
+ responseFuture,
+ transformer,
+ (com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider)
+ this.authenticationDetailsProvider,
+ new com.google.common.base.Supplier<
+ java.util.concurrent.Future>() {
+ @Override
+ public java.util.concurrent.Future get() {
+ return client.get(ib, interceptedRequest, onSuccess, onError);
+ }
+ });
+ } else {
+ return new com.oracle.bmc.util.internal.TransformingFuture<>(
+ responseFuture, transformer);
+ }
+ }
+
+ @Override
+ public java.util.concurrent.Future listServices(
+ final ListServicesRequest request,
+ final com.oracle.bmc.responses.AsyncHandler
+ handler) {
+ LOG.trace("Called async listServices");
+ final ListServicesRequest interceptedRequest =
+ ListServicesConverter.interceptRequest(request);
+ final com.oracle.bmc.http.internal.WrappedInvocationBuilder ib =
+ ListServicesConverter.fromRequest(client, interceptedRequest);
+ final com.google.common.base.Function
+ transformer = ListServicesConverter.fromResponse();
+
+ com.oracle.bmc.responses.AsyncHandler
+ handlerToUse = handler;
+ if (handler != null
+ && this.authenticationDetailsProvider
+ instanceof com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) {
+ handlerToUse =
+ new com.oracle.bmc.util.internal.RefreshAuthTokenWrappingAsyncHandler<
+ ListServicesRequest, ListServicesResponse>(
+ (com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider)
+ this.authenticationDetailsProvider,
+ handler) {
+ @Override
+ public void retryCall() {
+ final com.oracle.bmc.util.internal.Consumer
+ onSuccess =
+ new com.oracle.bmc.http.internal.SuccessConsumer<>(
+ this, transformer, interceptedRequest);
+ final com.oracle.bmc.util.internal.Consumer onError =
+ new com.oracle.bmc.http.internal.ErrorConsumer<>(
+ this, interceptedRequest);
+ client.get(ib, interceptedRequest, onSuccess, onError);
+ }
+ };
+ }
+
+ final com.oracle.bmc.util.internal.Consumer onSuccess =
+ (handler == null)
+ ? null
+ : new com.oracle.bmc.http.internal.SuccessConsumer<>(
+ handlerToUse, transformer, interceptedRequest);
+ final com.oracle.bmc.util.internal.Consumer onError =
+ (handler == null)
+ ? null
+ : new com.oracle.bmc.http.internal.ErrorConsumer<>(
+ handlerToUse, interceptedRequest);
+
+ java.util.concurrent.Future responseFuture =
+ client.get(ib, interceptedRequest, onSuccess, onError);
+
+ if (this.authenticationDetailsProvider
+ instanceof com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider) {
+ return new com.oracle.bmc.util.internal.RefreshAuthTokenTransformingFuture<
+ javax.ws.rs.core.Response, ListServicesResponse>(
+ responseFuture,
+ transformer,
+ (com.oracle.bmc.auth.RefreshableOnNotAuthenticatedProvider)
+ this.authenticationDetailsProvider,
+ new com.google.common.base.Supplier<
+ java.util.concurrent.Future>() {
+ @Override
+ public java.util.concurrent.Future get() {
+ return client.get(ib, interceptedRequest, onSuccess, onError);
+ }
+ });
+ } else {
+ return new com.oracle.bmc.util.internal.TransformingFuture<>(
+ responseFuture, transformer);
+ }
+ }
+}
diff --git a/bmc-limits/src/main/java/com/oracle/bmc/limits/LimitsClient.java b/bmc-limits/src/main/java/com/oracle/bmc/limits/LimitsClient.java
new file mode 100644
index 00000000000..f9bf5cc48fa
--- /dev/null
+++ b/bmc-limits/src/main/java/com/oracle/bmc/limits/LimitsClient.java
@@ -0,0 +1,425 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+package com.oracle.bmc.limits;
+
+import java.util.Locale;
+import com.oracle.bmc.limits.internal.http.*;
+import com.oracle.bmc.limits.requests.*;
+import com.oracle.bmc.limits.responses.*;
+
+@javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: ")
+@lombok.extern.slf4j.Slf4j
+public class LimitsClient implements Limits {
+ /**
+ * Service instance for Limits.
+ */
+ public static final com.oracle.bmc.Service SERVICE =
+ com.oracle.bmc.Services.serviceBuilder()
+ .serviceName("LIMITS")
+ .serviceEndpointPrefix("")
+ .serviceEndpointTemplate("https://limits.{region}.oci.{secondLevelDomain}")
+ .build();
+ // attempt twice if it's instance principals, immediately failures will try to refresh the token
+ private static final int MAX_IMMEDIATE_RETRIES_IF_USING_INSTANCE_PRINCIPALS = 2;
+
+ private final LimitsPaginators paginators;
+
+ @lombok.Getter(value = lombok.AccessLevel.PACKAGE)
+ private final com.oracle.bmc.http.internal.RestClient client;
+
+ private final com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider
+ authenticationDetailsProvider;
+ private final com.oracle.bmc.retrier.RetryConfiguration retryConfiguration;
+
+ /**
+ * Creates a new service instance using the given authentication provider.
+ * @param authenticationDetailsProvider The authentication details provider, required.
+ */
+ public LimitsClient(
+ 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 LimitsClient(
+ 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 LimitsClient(
+ 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 LimitsClient(
+ 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 LimitsClient(
+ 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 LimitsClient(
+ 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 LimitsClient(
+ 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 = authenticationDetailsProvider;
+ com.oracle.bmc.http.internal.RestClientFactory restClientFactory =
+ com.oracle.bmc.http.internal.RestClientFactoryBuilder.builder()
+ .clientConfigurator(clientConfigurator)
+ .additionalClientConfigurators(additionalClientConfigurators)
+ .build();
+ com.oracle.bmc.http.signing.RequestSigner defaultRequestSigner =
+ 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,
+ signingStrategyRequestSignerFactories
+ .get(s)
+ .createRequestSigner(SERVICE, authenticationDetailsProvider));
+ }
+ }
+
+ final com.oracle.bmc.ClientConfiguration clientConfigurationToUse =
+ (configuration != null)
+ ? configuration
+ : com.oracle.bmc.ClientConfiguration.builder().build();
+ this.retryConfiguration = clientConfigurationToUse.getRetryConfiguration();
+ this.client =
+ restClientFactory.create(
+ defaultRequestSigner, requestSigners, clientConfigurationToUse);
+
+ this.paginators = new LimitsPaginators(this);
+
+ 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 LimitsClient build(
+ @lombok.NonNull
+ com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider
+ authenticationDetailsProvider) {
+ return new LimitsClient(
+ authenticationDetailsProvider,
+ configuration,
+ clientConfigurator,
+ requestSignerFactory,
+ signingStrategyRequestSignerFactories,
+ additionalClientConfigurators,
+ endpoint);
+ }
+ }
+
+ @Override
+ public void setEndpoint(String endpoint) {
+ LOG.info("Setting endpoint to {}", endpoint);
+ client.setEndpoint(endpoint);
+ }
+
+ @Override
+ public void setRegion(com.oracle.bmc.Region region) {
+ com.google.common.base.Optional endpoint = 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(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 GetResourceAvailabilityResponse getResourceAvailability(
+ GetResourceAvailabilityRequest request) {
+ LOG.trace("Called getResourceAvailability");
+ final GetResourceAvailabilityRequest interceptedRequest =
+ GetResourceAvailabilityConverter.interceptRequest(request);
+ com.oracle.bmc.http.internal.WrappedInvocationBuilder ib =
+ GetResourceAvailabilityConverter.fromRequest(client, interceptedRequest);
+ com.google.common.base.Function
+ transformer = GetResourceAvailabilityConverter.fromResponse();
+
+ final com.oracle.bmc.retrier.BmcGenericRetrier retrier =
+ com.oracle.bmc.retrier.Retriers.createPreferredRetrier(
+ interceptedRequest.getRetryConfiguration(), retryConfiguration);
+ return retrier.execute(
+ interceptedRequest,
+ retryRequest -> {
+ final com.oracle.bmc.retrier.TokenRefreshRetrier tokenRefreshRetrier =
+ new com.oracle.bmc.retrier.TokenRefreshRetrier(
+ authenticationDetailsProvider);
+ return tokenRefreshRetrier.execute(
+ retryRequest,
+ retriedRequest -> {
+ javax.ws.rs.core.Response response = client.get(ib, retriedRequest);
+ return transformer.apply(response);
+ });
+ });
+ }
+
+ @Override
+ public ListLimitDefinitionsResponse listLimitDefinitions(ListLimitDefinitionsRequest request) {
+ LOG.trace("Called listLimitDefinitions");
+ final ListLimitDefinitionsRequest interceptedRequest =
+ ListLimitDefinitionsConverter.interceptRequest(request);
+ com.oracle.bmc.http.internal.WrappedInvocationBuilder ib =
+ ListLimitDefinitionsConverter.fromRequest(client, interceptedRequest);
+ com.google.common.base.Function
+ transformer = ListLimitDefinitionsConverter.fromResponse();
+
+ final com.oracle.bmc.retrier.BmcGenericRetrier retrier =
+ com.oracle.bmc.retrier.Retriers.createPreferredRetrier(
+ interceptedRequest.getRetryConfiguration(), retryConfiguration);
+ return retrier.execute(
+ interceptedRequest,
+ retryRequest -> {
+ final com.oracle.bmc.retrier.TokenRefreshRetrier tokenRefreshRetrier =
+ new com.oracle.bmc.retrier.TokenRefreshRetrier(
+ authenticationDetailsProvider);
+ return tokenRefreshRetrier.execute(
+ retryRequest,
+ retriedRequest -> {
+ javax.ws.rs.core.Response response = client.get(ib, retriedRequest);
+ return transformer.apply(response);
+ });
+ });
+ }
+
+ @Override
+ public ListLimitValuesResponse listLimitValues(ListLimitValuesRequest request) {
+ LOG.trace("Called listLimitValues");
+ final ListLimitValuesRequest interceptedRequest =
+ ListLimitValuesConverter.interceptRequest(request);
+ com.oracle.bmc.http.internal.WrappedInvocationBuilder ib =
+ ListLimitValuesConverter.fromRequest(client, interceptedRequest);
+ com.google.common.base.Function
+ transformer = ListLimitValuesConverter.fromResponse();
+
+ final com.oracle.bmc.retrier.BmcGenericRetrier retrier =
+ com.oracle.bmc.retrier.Retriers.createPreferredRetrier(
+ interceptedRequest.getRetryConfiguration(), retryConfiguration);
+ return retrier.execute(
+ interceptedRequest,
+ retryRequest -> {
+ final com.oracle.bmc.retrier.TokenRefreshRetrier tokenRefreshRetrier =
+ new com.oracle.bmc.retrier.TokenRefreshRetrier(
+ authenticationDetailsProvider);
+ return tokenRefreshRetrier.execute(
+ retryRequest,
+ retriedRequest -> {
+ javax.ws.rs.core.Response response = client.get(ib, retriedRequest);
+ return transformer.apply(response);
+ });
+ });
+ }
+
+ @Override
+ public ListServicesResponse listServices(ListServicesRequest request) {
+ LOG.trace("Called listServices");
+ final ListServicesRequest interceptedRequest =
+ ListServicesConverter.interceptRequest(request);
+ com.oracle.bmc.http.internal.WrappedInvocationBuilder ib =
+ ListServicesConverter.fromRequest(client, interceptedRequest);
+ com.google.common.base.Function
+ transformer = ListServicesConverter.fromResponse();
+
+ final com.oracle.bmc.retrier.BmcGenericRetrier retrier =
+ com.oracle.bmc.retrier.Retriers.createPreferredRetrier(
+ interceptedRequest.getRetryConfiguration(), retryConfiguration);
+ return retrier.execute(
+ interceptedRequest,
+ retryRequest -> {
+ final com.oracle.bmc.retrier.TokenRefreshRetrier tokenRefreshRetrier =
+ new com.oracle.bmc.retrier.TokenRefreshRetrier(
+ authenticationDetailsProvider);
+ return tokenRefreshRetrier.execute(
+ retryRequest,
+ retriedRequest -> {
+ javax.ws.rs.core.Response response = client.get(ib, retriedRequest);
+ return transformer.apply(response);
+ });
+ });
+ }
+
+ @Override
+ public LimitsPaginators getPaginators() {
+ return paginators;
+ }
+}
diff --git a/bmc-limits/src/main/java/com/oracle/bmc/limits/LimitsPaginators.java b/bmc-limits/src/main/java/com/oracle/bmc/limits/LimitsPaginators.java
new file mode 100644
index 00000000000..057494963cd
--- /dev/null
+++ b/bmc-limits/src/main/java/com/oracle/bmc/limits/LimitsPaginators.java
@@ -0,0 +1,366 @@
+/**
+ * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
+ */
+package com.oracle.bmc.limits;
+
+import com.oracle.bmc.limits.requests.*;
+import com.oracle.bmc.limits.responses.*;
+
+/**
+ * Collection of helper methods that can be used to provide an {@link java.lang.Iterable} interface
+ * to any list operations of Limits where multiple pages of data may be fetched.
+ * Two styles of iteration are supported:
+ *
+ *
+ * - Iterating over the Response objects returned by the list operation. These are referred to as ResponseIterators, and the methods are suffixed with ResponseIterator. For example: listUsersResponseIterator
+ * - Iterating over the resources/records being listed. These are referred to as RecordIterators, and the methods are suffixed with RecordIterator. For example: listUsersRecordIterator
+ *
+ *
+ * These iterables abstract away the need to write code to manually handle pagination via looping and using the page tokens.
+ * They will automatically fetch more data from the service when required.
+ *
+ * As an example, if we were using the ListUsers operation in IdentityService, then the {@link java.lang.Iterable} returned by calling a
+ * ResponseIterator method would iterate over the ListUsersResponse objects returned by each ListUsers call, whereas the {@link java.lang.Iterable}
+ * returned by calling a RecordIterator method would iterate over the User records and we don't have to deal with ListUsersResponse objects at all.
+ * In either case, pagination will be automatically handled so we can iterate until there are no more responses or no more resources/records available.
+ */
+@javax.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: ")
+@lombok.RequiredArgsConstructor
+public class LimitsPaginators {
+ private final Limits client;
+
+ /**
+ * Creates a new iterable which will iterate over the responses received from the listLimitDefinitions operation. This iterable
+ * will fetch more data from the server as needed.
+ *
+ * @param request a request which can be sent to the service operation
+ * @return an {@link java.lang.Iterable} which can be used to iterate over the responses received from the service.
+ */
+ public Iterable listLimitDefinitionsResponseIterator(
+ final ListLimitDefinitionsRequest request) {
+ return new com.oracle.bmc.paginator.internal.ResponseIterable<
+ ListLimitDefinitionsRequest.Builder, ListLimitDefinitionsRequest,
+ ListLimitDefinitionsResponse>(
+ new com.google.common.base.Supplier() {
+ @Override
+ public ListLimitDefinitionsRequest.Builder get() {
+ return ListLimitDefinitionsRequest.builder().copy(request);
+ }
+ },
+ new com.google.common.base.Function() {
+ @Override
+ public String apply(ListLimitDefinitionsResponse response) {
+ return response.getOpcNextPage();
+ }
+ },
+ new com.google.common.base.Function<
+ com.oracle.bmc.paginator.internal.RequestBuilderAndToken<
+ ListLimitDefinitionsRequest.Builder>,
+ ListLimitDefinitionsRequest>() {
+ @Override
+ public ListLimitDefinitionsRequest apply(
+ com.oracle.bmc.paginator.internal.RequestBuilderAndToken<
+ ListLimitDefinitionsRequest.Builder>
+ input) {
+ if (input.getToken() == null) {
+ return input.getRequestBuilder().build();
+ } else {
+ return input.getRequestBuilder()
+ .page(input.getToken().orNull())
+ .build();
+ }
+ }
+ },
+ new com.google.common.base.Function<
+ ListLimitDefinitionsRequest, ListLimitDefinitionsResponse>() {
+ @Override
+ public ListLimitDefinitionsResponse apply(ListLimitDefinitionsRequest request) {
+ return client.listLimitDefinitions(request);
+ }
+ });
+ }
+
+ /**
+ * Creates a new iterable which will iterate over the {@link com.oracle.bmc.limits.model.LimitDefinitionSummary} objects
+ * contained in responses from the listLimitDefinitions operation. This iterable will fetch more data from the
+ * server as needed.
+ *
+ * @param request a request which can be sent to the service operation
+ * @return an {@link java.lang.Iterable} which can be used to iterate over the {@link com.oracle.bmc.limits.model.LimitDefinitionSummary} objects
+ * contained in responses received from the service.
+ */
+ public Iterable
+ listLimitDefinitionsRecordIterator(final ListLimitDefinitionsRequest request) {
+ return new com.oracle.bmc.paginator.internal.ResponseRecordIterable<
+ ListLimitDefinitionsRequest.Builder, ListLimitDefinitionsRequest,
+ ListLimitDefinitionsResponse, com.oracle.bmc.limits.model.LimitDefinitionSummary>(
+ new com.google.common.base.Supplier() {
+ @Override
+ public ListLimitDefinitionsRequest.Builder get() {
+ return ListLimitDefinitionsRequest.builder().copy(request);
+ }
+ },
+ new com.google.common.base.Function() {
+ @Override
+ public String apply(ListLimitDefinitionsResponse response) {
+ return response.getOpcNextPage();
+ }
+ },
+ new com.google.common.base.Function<
+ com.oracle.bmc.paginator.internal.RequestBuilderAndToken<
+ ListLimitDefinitionsRequest.Builder>,
+ ListLimitDefinitionsRequest>() {
+ @Override
+ public ListLimitDefinitionsRequest apply(
+ com.oracle.bmc.paginator.internal.RequestBuilderAndToken<
+ ListLimitDefinitionsRequest.Builder>
+ input) {
+ if (input.getToken() == null) {
+ return input.getRequestBuilder().build();
+ } else {
+ return input.getRequestBuilder()
+ .page(input.getToken().orNull())
+ .build();
+ }
+ }
+ },
+ new com.google.common.base.Function<
+ ListLimitDefinitionsRequest, ListLimitDefinitionsResponse>() {
+ @Override
+ public ListLimitDefinitionsResponse apply(ListLimitDefinitionsRequest request) {
+ return client.listLimitDefinitions(request);
+ }
+ },
+ new com.google.common.base.Function<
+ ListLimitDefinitionsResponse,
+ java.util.List>() {
+ @Override
+ public java.util.List apply(
+ ListLimitDefinitionsResponse response) {
+ return response.getItems();
+ }
+ });
+ }
+
+ /**
+ * Creates a new iterable which will iterate over the responses received from the listLimitValues operation. This iterable
+ * will fetch more data from the server as needed.
+ *
+ * @param request a request which can be sent to the service operation
+ * @return an {@link java.lang.Iterable} which can be used to iterate over the responses received from the service.
+ */
+ public Iterable listLimitValuesResponseIterator(
+ final ListLimitValuesRequest request) {
+ return new com.oracle.bmc.paginator.internal.ResponseIterable<
+ ListLimitValuesRequest.Builder, ListLimitValuesRequest, ListLimitValuesResponse>(
+ new com.google.common.base.Supplier() {
+ @Override
+ public ListLimitValuesRequest.Builder get() {
+ return ListLimitValuesRequest.builder().copy(request);
+ }
+ },
+ new com.google.common.base.Function() {
+ @Override
+ public String apply(ListLimitValuesResponse response) {
+ return response.getOpcNextPage();
+ }
+ },
+ new com.google.common.base.Function<
+ com.oracle.bmc.paginator.internal.RequestBuilderAndToken<
+ ListLimitValuesRequest.Builder>,
+ ListLimitValuesRequest>() {
+ @Override
+ public ListLimitValuesRequest apply(
+ com.oracle.bmc.paginator.internal.RequestBuilderAndToken<
+ ListLimitValuesRequest.Builder>
+ input) {
+ if (input.getToken() == null) {
+ return input.getRequestBuilder().build();
+ } else {
+ return input.getRequestBuilder()
+ .page(input.getToken().orNull())
+ .build();
+ }
+ }
+ },
+ new com.google.common.base.Function<
+ ListLimitValuesRequest, ListLimitValuesResponse>() {
+ @Override
+ public ListLimitValuesResponse apply(ListLimitValuesRequest request) {
+ return client.listLimitValues(request);
+ }
+ });
+ }
+
+ /**
+ * Creates a new iterable which will iterate over the {@link com.oracle.bmc.limits.model.LimitValueSummary} objects
+ * contained in responses from the listLimitValues operation. This iterable will fetch more data from the
+ * server as needed.
+ *
+ * @param request a request which can be sent to the service operation
+ * @return an {@link java.lang.Iterable} which can be used to iterate over the {@link com.oracle.bmc.limits.model.LimitValueSummary} objects
+ * contained in responses received from the service.
+ */
+ public Iterable listLimitValuesRecordIterator(
+ final ListLimitValuesRequest request) {
+ return new com.oracle.bmc.paginator.internal.ResponseRecordIterable<
+ ListLimitValuesRequest.Builder, ListLimitValuesRequest, ListLimitValuesResponse,
+ com.oracle.bmc.limits.model.LimitValueSummary>(
+ new com.google.common.base.Supplier() {
+ @Override
+ public ListLimitValuesRequest.Builder get() {
+ return ListLimitValuesRequest.builder().copy(request);
+ }
+ },
+ new com.google.common.base.Function() {
+ @Override
+ public String apply(ListLimitValuesResponse response) {
+ return response.getOpcNextPage();
+ }
+ },
+ new com.google.common.base.Function<
+ com.oracle.bmc.paginator.internal.RequestBuilderAndToken<
+ ListLimitValuesRequest.Builder>,
+ ListLimitValuesRequest>() {
+ @Override
+ public ListLimitValuesRequest apply(
+ com.oracle.bmc.paginator.internal.RequestBuilderAndToken<
+ ListLimitValuesRequest.Builder>
+ input) {
+ if (input.getToken() == null) {
+ return input.getRequestBuilder().build();
+ } else {
+ return input.getRequestBuilder()
+ .page(input.getToken().orNull())
+ .build();
+ }
+ }
+ },
+ new com.google.common.base.Function<
+ ListLimitValuesRequest, ListLimitValuesResponse>() {
+ @Override
+ public ListLimitValuesResponse apply(ListLimitValuesRequest request) {
+ return client.listLimitValues(request);
+ }
+ },
+ new com.google.common.base.Function<
+ ListLimitValuesResponse,
+ java.util.List