diff --git a/CHANGELOG.md b/CHANGELOG.md index e3ba6c1d57a..4681a561277 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,12 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/). +## 3.97.2 - 2026-10-06 +### Added +- Support for OCI Product Catalog service +- Support for Non-Volatile Memory Express (NVMe) volume attachments, including attachments created during instance launch in the Compute service +- Support for OAuth 2.1 authorization for hosted applications in the Generative AI service + ## 3.97.1 - 2026-09-29 ### Added - Support for data subsetting in the Data Safe service diff --git a/bmc-accessgovernancecp/pom.xml b/bmc-accessgovernancecp/pom.xml index 1a2d6e90ce4..fe9f0f5e021 100644 --- a/bmc-accessgovernancecp/pom.xml +++ b/bmc-accessgovernancecp/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-accessgovernancecp @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-addons/bmc-adk/pom.xml b/bmc-addons/bmc-adk/pom.xml index 6ffeccfb93a..381aad8ec6f 100644 --- a/bmc-addons/bmc-adk/pom.xml +++ b/bmc-addons/bmc-adk/pom.xml @@ -6,7 +6,7 @@ com.oracle.oci.sdk oci-java-sdk-addons - 3.97.1 + 3.97.2 oci-java-sdk-addons-adk @@ -115,7 +115,7 @@ com.fasterxml.jackson.core jackson-databind - ${jackson.version} + ${jackson.databind.version} com.fasterxml.jackson.core diff --git a/bmc-addons/bmc-aispeech-realtime/pom.xml b/bmc-addons/bmc-aispeech-realtime/pom.xml index 0281d1543ae..60ade1ce781 100644 --- a/bmc-addons/bmc-aispeech-realtime/pom.xml +++ b/bmc-addons/bmc-aispeech-realtime/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk-addons - 3.97.1 + 3.97.2 ../pom.xml 4.0.0 @@ -53,12 +53,12 @@ com.oracle.oci.sdk oci-java-sdk-aispeech - 3.97.1 + 3.97.2 com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey - 3.97.1 + 3.97.2 compile diff --git a/bmc-addons/bmc-apache-configurator-jersey-addon/pom.xml b/bmc-addons/bmc-apache-configurator-jersey-addon/pom.xml index 8d323132836..e052588a9ab 100644 --- a/bmc-addons/bmc-apache-configurator-jersey-addon/pom.xml +++ b/bmc-addons/bmc-apache-configurator-jersey-addon/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk-addons - 3.97.1 + 3.97.2 ../pom.xml @@ -17,14 +17,14 @@ com.oracle.oci.sdk oci-java-sdk-bom - 3.97.1 + 3.97.2 pom import com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey - 3.97.1 + 3.97.2 pom import diff --git a/bmc-addons/bmc-apache-configurator-jersey3-addon/pom.xml b/bmc-addons/bmc-apache-configurator-jersey3-addon/pom.xml index 00d78bd94af..04409bfb64b 100644 --- a/bmc-addons/bmc-apache-configurator-jersey3-addon/pom.xml +++ b/bmc-addons/bmc-apache-configurator-jersey3-addon/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk-addons - 3.97.1 + 3.97.2 ../pom.xml @@ -17,14 +17,14 @@ com.oracle.oci.sdk oci-java-sdk-bom - 3.97.1 + 3.97.2 pom import com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey3 - 3.97.1 + 3.97.2 pom import diff --git a/bmc-addons/bmc-apache-connector-provider/pom.xml b/bmc-addons/bmc-apache-connector-provider/pom.xml index 8da1af276fe..0a3f422e4aa 100644 --- a/bmc-addons/bmc-apache-connector-provider/pom.xml +++ b/bmc-addons/bmc-apache-connector-provider/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk-addons - 3.97.1 + 3.97.2 ../pom.xml @@ -18,7 +18,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-addons/bmc-oke-workload-identity/pom.xml b/bmc-addons/bmc-oke-workload-identity/pom.xml index 24fecd41089..dc55fa63539 100644 --- a/bmc-addons/bmc-oke-workload-identity/pom.xml +++ b/bmc-addons/bmc-oke-workload-identity/pom.xml @@ -4,7 +4,7 @@ oci-java-sdk-addons com.oracle.oci.sdk - 3.97.1 + 3.97.2 4.0.0 @@ -38,25 +38,25 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 compile com.oracle.oci.sdk oci-java-sdk-core - 3.97.1 + 3.97.2 test com.oracle.oci.sdk oci-java-sdk-identity - 3.97.1 + 3.97.2 test com.oracle.oci.sdk oci-java-sdk-keymanagement - 3.97.1 + 3.97.2 test diff --git a/bmc-addons/bmc-resteasy-client-configurator/pom.xml b/bmc-addons/bmc-resteasy-client-configurator/pom.xml index d06613bc55e..541e3b1ed0c 100644 --- a/bmc-addons/bmc-resteasy-client-configurator/pom.xml +++ b/bmc-addons/bmc-resteasy-client-configurator/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk-addons - 3.97.1 + 3.97.2 ../pom.xml @@ -23,7 +23,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-addons/bmc-sasl-oke-workload-identity/pom.xml b/bmc-addons/bmc-sasl-oke-workload-identity/pom.xml index 13baa589a34..69c8f554c11 100644 --- a/bmc-addons/bmc-sasl-oke-workload-identity/pom.xml +++ b/bmc-addons/bmc-sasl-oke-workload-identity/pom.xml @@ -4,7 +4,7 @@ oci-java-sdk-addons com.oracle.oci.sdk - 3.97.1 + 3.97.2 ../pom.xml 4.0.0 @@ -39,13 +39,13 @@ com.oracle.oci.sdk oci-java-sdk-addons-sasl - 3.97.1 + 3.97.2 compile com.oracle.oci.sdk oci-java-sdk-addons-oke-workload-identity - 3.97.1 + 3.97.2 compile diff --git a/bmc-addons/bmc-sasl/pom.xml b/bmc-addons/bmc-sasl/pom.xml index 01e55b3bf24..689bed53d7c 100644 --- a/bmc-addons/bmc-sasl/pom.xml +++ b/bmc-addons/bmc-sasl/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk-addons - 3.97.1 + 3.97.2 ../pom.xml @@ -61,7 +61,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 diff --git a/bmc-addons/bmc-sse-support-jersey3/pom.xml b/bmc-addons/bmc-sse-support-jersey3/pom.xml index 3d2c4ad928a..1a0f467ad28 100644 --- a/bmc-addons/bmc-sse-support-jersey3/pom.xml +++ b/bmc-addons/bmc-sse-support-jersey3/pom.xml @@ -5,7 +5,7 @@ oci-java-sdk-addons com.oracle.oci.sdk - 3.97.1 + 3.97.2 ../pom.xml 4.0.0 @@ -150,12 +150,12 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 com.oracle.oci.sdk oci-java-sdk-generativeaiinference - 3.97.1 + 3.97.2 test @@ -164,7 +164,7 @@ but the code in it needs it. --> com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey3 - 3.97.1 + 3.97.2 diff --git a/bmc-addons/bmc-sse-support/pom.xml b/bmc-addons/bmc-sse-support/pom.xml index 5603f5ca968..87b9998a100 100644 --- a/bmc-addons/bmc-sse-support/pom.xml +++ b/bmc-addons/bmc-sse-support/pom.xml @@ -5,7 +5,7 @@ oci-java-sdk-addons com.oracle.oci.sdk - 3.97.1 + 3.97.2 ../pom.xml 4.0.0 @@ -150,12 +150,12 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 com.oracle.oci.sdk oci-java-sdk-generativeaiinference - 3.97.1 + 3.97.2 test @@ -164,7 +164,7 @@ but the code in it needs it. --> com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey - 3.97.1 + 3.97.2 diff --git a/bmc-addons/pom.xml b/bmc-addons/pom.xml index 1d0cd8b6467..00b565aba05 100644 --- a/bmc-addons/pom.xml +++ b/bmc-addons/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml diff --git a/bmc-adm/pom.xml b/bmc-adm/pom.xml index feee564105c..2d77e26e807 100644 --- a/bmc-adm/pom.xml +++ b/bmc-adm/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-adm @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-aidataplatform/pom.xml b/bmc-aidataplatform/pom.xml index 41b0c5cdc40..f0c55d9ec6b 100644 --- a/bmc-aidataplatform/pom.xml +++ b/bmc-aidataplatform/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-aidataplatform @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-aidocument/pom.xml b/bmc-aidocument/pom.xml index e9636a4340d..ab0a19be678 100644 --- a/bmc-aidocument/pom.xml +++ b/bmc-aidocument/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-aidocument @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-ailanguage/pom.xml b/bmc-ailanguage/pom.xml index 4fb09cc960b..7e5e87f9804 100644 --- a/bmc-ailanguage/pom.xml +++ b/bmc-ailanguage/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-ailanguage @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-aispeech/pom.xml b/bmc-aispeech/pom.xml index ca095850136..41ddddf9405 100644 --- a/bmc-aispeech/pom.xml +++ b/bmc-aispeech/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-aispeech @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-aivision/pom.xml b/bmc-aivision/pom.xml index c7af1da07f4..3ebc3f8767a 100644 --- a/bmc-aivision/pom.xml +++ b/bmc-aivision/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-aivision @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-analytics/pom.xml b/bmc-analytics/pom.xml index 1259cc668fb..14167c5b1b2 100644 --- a/bmc-analytics/pom.xml +++ b/bmc-analytics/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-analytics @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-announcementsservice/pom.xml b/bmc-announcementsservice/pom.xml index 48d31386e12..2d5fc588bb6 100644 --- a/bmc-announcementsservice/pom.xml +++ b/bmc-announcementsservice/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-announcementsservice @@ -16,7 +16,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-apiaccesscontrol/pom.xml b/bmc-apiaccesscontrol/pom.xml index cddc318c430..e1dcd98f107 100644 --- a/bmc-apiaccesscontrol/pom.xml +++ b/bmc-apiaccesscontrol/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-apiaccesscontrol @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-apigateway/pom.xml b/bmc-apigateway/pom.xml index dddb8bbef1b..69c4c1e6035 100644 --- a/bmc-apigateway/pom.xml +++ b/bmc-apigateway/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-apigateway @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-apiplatform/pom.xml b/bmc-apiplatform/pom.xml index 2245e96d3b2..3901ed1e4a7 100644 --- a/bmc-apiplatform/pom.xml +++ b/bmc-apiplatform/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-apiplatform @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-apmconfig/pom.xml b/bmc-apmconfig/pom.xml index 2a276a10ebb..d3e5e1a4535 100644 --- a/bmc-apmconfig/pom.xml +++ b/bmc-apmconfig/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-apmconfig @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-apmcontrolplane/pom.xml b/bmc-apmcontrolplane/pom.xml index eca8d3704d4..42c0e517462 100644 --- a/bmc-apmcontrolplane/pom.xml +++ b/bmc-apmcontrolplane/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-apmcontrolplane @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-apmsynthetics/pom.xml b/bmc-apmsynthetics/pom.xml index d61867cf5a5..d75c9916365 100644 --- a/bmc-apmsynthetics/pom.xml +++ b/bmc-apmsynthetics/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-apmsynthetics @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-apmtraces/pom.xml b/bmc-apmtraces/pom.xml index 239582c311f..277517e1b63 100644 --- a/bmc-apmtraces/pom.xml +++ b/bmc-apmtraces/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-apmtraces @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-appmgmtcontrol/pom.xml b/bmc-appmgmtcontrol/pom.xml index 7a5777b3053..11b8c5ff749 100644 --- a/bmc-appmgmtcontrol/pom.xml +++ b/bmc-appmgmtcontrol/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-appmgmtcontrol @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-artifacts/pom.xml b/bmc-artifacts/pom.xml index 1cb9fb5f3ad..9c449618592 100644 --- a/bmc-artifacts/pom.xml +++ b/bmc-artifacts/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-artifacts @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-audit/pom.xml b/bmc-audit/pom.xml index d1add03213c..564a77850a5 100644 --- a/bmc-audit/pom.xml +++ b/bmc-audit/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml @@ -18,7 +18,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 diff --git a/bmc-autoscaling/pom.xml b/bmc-autoscaling/pom.xml index c140a370a74..6aa84589acb 100644 --- a/bmc-autoscaling/pom.xml +++ b/bmc-autoscaling/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-autoscaling @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-bastion/pom.xml b/bmc-bastion/pom.xml index 0c1617e4a6a..a76138aa8e5 100644 --- a/bmc-bastion/pom.xml +++ b/bmc-bastion/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-bastion @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-batch/pom.xml b/bmc-batch/pom.xml index 63e249e0633..4b79d907985 100644 --- a/bmc-batch/pom.xml +++ b/bmc-batch/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-batch @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-bds/pom.xml b/bmc-bds/pom.xml index 4b453e40e36..ad106c60de3 100644 --- a/bmc-bds/pom.xml +++ b/bmc-bds/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-bds @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-blockchain/pom.xml b/bmc-blockchain/pom.xml index a74d731e57a..e4903b6231e 100644 --- a/bmc-blockchain/pom.xml +++ b/bmc-blockchain/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-blockchain @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-bom/pom.xml b/bmc-bom/pom.xml index 61d9d4a83d7..68107c5b861 100644 --- a/bmc-bom/pom.xml +++ b/bmc-bom/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.oracle.oci.sdk - 3.97.1 + 3.97.2 oci-java-sdk-bom pom Oracle Cloud Infrastructure SDK - BOM @@ -38,1129 +38,1135 @@ com.oracle.oci.sdk oci-java-sdk-circuitbreaker - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-common-httpclient - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey3 - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-enforcer-rules - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-shaded-full - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-audit - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-containerengine - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-core - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-database - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-dns - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-email - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-objectstorage-generated - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-objectstorage-extensions - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-filestorage - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-identity - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-loadbalancer - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-objectstorage - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-addons-apache-configurator-jersey - 3.97.1 + 3.97.2 com.oracle.oci.sdk oci-java-sdk-addons-apache-configurator-jersey3 - 3.97.1 + 3.97.2 com.oracle.oci.sdk oci-java-sdk-addons-resteasy-client-configurator - 3.97.1 + 3.97.2 com.oracle.oci.sdk oci-java-sdk-addons-sasl - 3.97.1 + 3.97.2 com.oracle.oci.sdk oci-java-sdk-addons-oke-workload-identity - 3.97.1 + 3.97.2 com.oracle.oci.sdk oci-java-sdk-addons-sasl-oke-workload-identity - 3.97.1 + 3.97.2 com.oracle.oci.sdk oci-java-sdk-addons-aispeech-realtime - 3.97.1 + 3.97.2 com.oracle.oci.sdk oci-java-sdk-resourcesearch - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-addons-apache - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-keymanagement - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-announcementsservice - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-healthchecks - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-waas - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-streaming - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-resourcemanager - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-monitoring - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-ons - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-autoscaling - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-budget - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-workrequests - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-limits - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-functions - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-events - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-oce - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-oda - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-analytics - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-integration - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-marketplace - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-apigateway - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-datacatalog - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-dataflow - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-datascience - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-nosql - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-secrets - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-vault - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-bds - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-encryption - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-cims - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-datasafe - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-mysql - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-dataintegration - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-ocvp - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-usageapi - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-blockchain - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-loggingingestion - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-logging - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-loganalytics - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-managementdashboard - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-sch - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-loggingsearch - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-managementagent - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-cloudguard - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-opsi - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-computeinstanceagent - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-optimizer - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-tenantmanagercontrolplane - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-rover - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-databasemanagement - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-artifacts - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-apmsynthetics - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-goldengate - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-apmcontrolplane - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-apmtraces - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-networkloadbalancer - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-vulnerabilityscanning - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-databasemigration - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-servicecatalog - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-ailanguage - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-operatoraccesscontrol - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-bastion - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-genericartifactscontent - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-jms - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-devops - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-datalabelingservice - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-datalabelingservicedataplane - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-apmconfig - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-waf - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-certificates - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-certificatesmanagement - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-usage - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-databasetools - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-servicemanagerproxy - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-appmgmtcontrol - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-ospgateway - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-identitydataplane - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-visualbuilder - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-osubusage - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-osubsubscription - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-osuborganizationsubscription - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-osubbillingschedule - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-dashboardservice - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-threatintelligence - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-aivision - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-aispeech - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-stackmonitoring - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-adm - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-licensemanager - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-onesubscription - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-governancerulescontrolplane - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-waa - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-networkfirewall - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-vnmonitoring - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-emwarehouse - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-lockbox - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-fusionapps - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-mediaservices - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-opa - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-opensearch - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-cloudmigrations - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-cloudbridge - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-disasterrecovery - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-containerinstances - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-aidocument - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-queue - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-recovery - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-vbsinst - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-identitydomains - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-accessgovernancecp - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-ocicontrolcenter - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-osmanagementhub - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-fleetsoftwareupdate - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-computecloudatcustomer - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-marketplacepublisher - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-redis - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-jmsjavadownloads - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-psql - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-generativeai - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-generativeaiinference - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-capacitymanagement - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-desktops - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-emaildataplane - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-clusterplacementgroups - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-resourcescheduler - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-demandsignal - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-fleetappsmanagement - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-delegateaccesscontrol - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-generativeaiagent - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-generativeaiagentruntime - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-securityattribute - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-zpr - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-dblm - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-mngdmac - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-lustrefilestorage - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-modeldeployment - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-apiaccesscontrol - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-wlms - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-addons-adk - 3.97.1 + 3.97.2 com.oracle.oci.sdk oci-java-sdk-dbmulticloud - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-apiplatform - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-managedkafka - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-aidataplatform - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-multicloud - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-resourceanalytics - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-jmsutils - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-iot - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-psa - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-dif - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-batch - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-marketplaceprivateoffer - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-gdp - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-limitsincrease - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-generativeaidata - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-self - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-containerregistry - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-databasetoolsruntime - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-costad - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-datacc - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-ddfs - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-clusterhealth - 3.97.1 + 3.97.2 false com.oracle.oci.sdk oci-java-sdk-distributeddatabase - 3.97.1 + 3.97.2 + false + + + com.oracle.oci.sdk + oci-java-sdk-ociproductcatalog + 3.97.2 false diff --git a/bmc-budget/pom.xml b/bmc-budget/pom.xml index 36320d41565..7ab89167357 100644 --- a/bmc-budget/pom.xml +++ b/bmc-budget/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-budget @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-capacitymanagement/pom.xml b/bmc-capacitymanagement/pom.xml index f88b0f1c9e8..05c9122fcd3 100644 --- a/bmc-capacitymanagement/pom.xml +++ b/bmc-capacitymanagement/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-capacitymanagement @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-certificates/pom.xml b/bmc-certificates/pom.xml index c5f1cd9fcda..b7c5a171f29 100644 --- a/bmc-certificates/pom.xml +++ b/bmc-certificates/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-certificates @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-certificatesmanagement/pom.xml b/bmc-certificatesmanagement/pom.xml index 1fcb6319254..353908d2b21 100644 --- a/bmc-certificatesmanagement/pom.xml +++ b/bmc-certificatesmanagement/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-certificatesmanagement @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-cims/pom.xml b/bmc-cims/pom.xml index 04fcc0a16d5..f9133fd97e4 100644 --- a/bmc-cims/pom.xml +++ b/bmc-cims/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-cims @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-circuitbreaker/pom.xml b/bmc-circuitbreaker/pom.xml index 38b6ff6f173..7af52677be2 100644 --- a/bmc-circuitbreaker/pom.xml +++ b/bmc-circuitbreaker/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-circuitbreaker diff --git a/bmc-cloudbridge/pom.xml b/bmc-cloudbridge/pom.xml index 844c1773807..9b6118becac 100644 --- a/bmc-cloudbridge/pom.xml +++ b/bmc-cloudbridge/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-cloudbridge @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-cloudguard/pom.xml b/bmc-cloudguard/pom.xml index 42ea8875c4a..1e0a3503554 100644 --- a/bmc-cloudguard/pom.xml +++ b/bmc-cloudguard/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-cloudguard @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-cloudmigrations/pom.xml b/bmc-cloudmigrations/pom.xml index b38721b1dcb..ef51395637a 100644 --- a/bmc-cloudmigrations/pom.xml +++ b/bmc-cloudmigrations/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-cloudmigrations @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-clusterhealth/pom.xml b/bmc-clusterhealth/pom.xml index d23c0039882..6ee4b0aadbc 100644 --- a/bmc-clusterhealth/pom.xml +++ b/bmc-clusterhealth/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-clusterhealth @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-clusterplacementgroups/pom.xml b/bmc-clusterplacementgroups/pom.xml index cd697994fc5..d619d436026 100644 --- a/bmc-clusterplacementgroups/pom.xml +++ b/bmc-clusterplacementgroups/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-clusterplacementgroups @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-common-httpclient-choices/bmc-common-httpclient-jersey/pom.xml b/bmc-common-httpclient-choices/bmc-common-httpclient-jersey/pom.xml index 1ea3e722a51..c7d9a58ed94 100644 --- a/bmc-common-httpclient-choices/bmc-common-httpclient-jersey/pom.xml +++ b/bmc-common-httpclient-choices/bmc-common-httpclient-jersey/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk-common-httpclient-choices - 3.97.1 + 3.97.2 ../pom.xml @@ -93,7 +93,7 @@ com.oracle.oci.sdk oci-java-sdk-addons-apache-configurator-jersey - 3.97.1 + 3.97.2 @@ -102,7 +102,7 @@ com.oracle.oci.sdk oci-java-sdk-common-httpclient - 3.97.1 + 3.97.2 org.glassfish.jersey.core diff --git a/bmc-common-httpclient-choices/bmc-common-httpclient-jersey3/pom.xml b/bmc-common-httpclient-choices/bmc-common-httpclient-jersey3/pom.xml index f2f8cc61470..aeeec2d9940 100644 --- a/bmc-common-httpclient-choices/bmc-common-httpclient-jersey3/pom.xml +++ b/bmc-common-httpclient-choices/bmc-common-httpclient-jersey3/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk-common-httpclient-choices - 3.97.1 + 3.97.2 ../pom.xml @@ -93,7 +93,7 @@ com.oracle.oci.sdk oci-java-sdk-addons-apache-configurator-jersey3 - 3.97.1 + 3.97.2 @@ -102,7 +102,7 @@ com.oracle.oci.sdk oci-java-sdk-common-httpclient - 3.97.1 + 3.97.2 jakarta.ws.rs diff --git a/bmc-common-httpclient-choices/pom.xml b/bmc-common-httpclient-choices/pom.xml index 3ec4a4b1bb3..a5b8f02564e 100644 --- a/bmc-common-httpclient-choices/pom.xml +++ b/bmc-common-httpclient-choices/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml diff --git a/bmc-common-httpclient/pom.xml b/bmc-common-httpclient/pom.xml index b0cc5d31b0d..e4807ccd35a 100644 --- a/bmc-common-httpclient/pom.xml +++ b/bmc-common-httpclient/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml diff --git a/bmc-common/pom.xml b/bmc-common/pom.xml index 916e58e6d04..aeafe0bdfd6 100644 --- a/bmc-common/pom.xml +++ b/bmc-common/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml @@ -87,12 +87,12 @@ com.oracle.oci.sdk oci-java-sdk-circuitbreaker - 3.97.1 + 3.97.2 com.oracle.oci.sdk oci-java-sdk-common-httpclient - 3.97.1 + 3.97.2 @@ -137,7 +137,7 @@ com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey - 3.97.1 + 3.97.2 test diff --git a/bmc-computecloudatcustomer/pom.xml b/bmc-computecloudatcustomer/pom.xml index c792a0d0992..6ecba6a4871 100644 --- a/bmc-computecloudatcustomer/pom.xml +++ b/bmc-computecloudatcustomer/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-computecloudatcustomer @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-computeinstanceagent/pom.xml b/bmc-computeinstanceagent/pom.xml index e311efa71a6..982b06ad44d 100644 --- a/bmc-computeinstanceagent/pom.xml +++ b/bmc-computeinstanceagent/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-computeinstanceagent @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-containerengine/pom.xml b/bmc-containerengine/pom.xml index 9d4b95a51f0..d2d5a8e381c 100644 --- a/bmc-containerengine/pom.xml +++ b/bmc-containerengine/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml @@ -18,7 +18,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 diff --git a/bmc-containerinstances/pom.xml b/bmc-containerinstances/pom.xml index 86bb33acfaa..bd15ac82300 100644 --- a/bmc-containerinstances/pom.xml +++ b/bmc-containerinstances/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-containerinstances @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-containerregistry/pom.xml b/bmc-containerregistry/pom.xml index 63fbac27d85..e5744264bee 100644 --- a/bmc-containerregistry/pom.xml +++ b/bmc-containerregistry/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-containerregistry @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-core/pom.xml b/bmc-core/pom.xml index 7fad9f501da..1643b1b5971 100644 --- a/bmc-core/pom.xml +++ b/bmc-core/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml @@ -18,12 +18,12 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 com.oracle.oci.sdk oci-java-sdk-workrequests - 3.97.1 + 3.97.2 diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/AttachNvmeVolumeDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/AttachNvmeVolumeDetails.java new file mode 100644 index 00000000000..c13e6b30512 --- /dev/null +++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/AttachNvmeVolumeDetails.java @@ -0,0 +1,185 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.core.model; + +/** + * The details of the NVMe volume attachment. For AttachVolume operation, this is a required field + * for the request, see {@link #attachVolume(AttachVolumeRequest) attachVolume}.
+ * 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 Builder#__explicitlySet__}. The {@link + * #hashCode()} and {@link #equals(Object)} methods are implemented to take the explicitly set + * fields into account. The constructor, on the other hand, does not take the explicitly set fields + * into account (since the constructor cannot distinguish explicit {@code null} from unset {@code + * null}). + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = AttachNvmeVolumeDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "type") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class AttachNvmeVolumeDetails extends AttachVolumeDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("device") + private String device; + + public Builder device(String device) { + this.device = device; + this.__explicitlySet__.add("device"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("displayName") + private String displayName; + + public Builder displayName(String displayName) { + this.displayName = displayName; + this.__explicitlySet__.add("displayName"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("instanceId") + private String instanceId; + + public Builder instanceId(String instanceId) { + this.instanceId = instanceId; + this.__explicitlySet__.add("instanceId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("isReadOnly") + private Boolean isReadOnly; + + public Builder isReadOnly(Boolean isReadOnly) { + this.isReadOnly = isReadOnly; + this.__explicitlySet__.add("isReadOnly"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("isShareable") + private Boolean isShareable; + + public Builder isShareable(Boolean isShareable) { + this.isShareable = isShareable; + this.__explicitlySet__.add("isShareable"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("volumeId") + private String volumeId; + + public Builder volumeId(String volumeId) { + this.volumeId = volumeId; + this.__explicitlySet__.add("volumeId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public AttachNvmeVolumeDetails build() { + AttachNvmeVolumeDetails model = + new AttachNvmeVolumeDetails( + this.device, + this.displayName, + this.instanceId, + this.isReadOnly, + this.isShareable, + this.volumeId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(AttachNvmeVolumeDetails model) { + if (model.wasPropertyExplicitlySet("device")) { + this.device(model.getDevice()); + } + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("instanceId")) { + this.instanceId(model.getInstanceId()); + } + if (model.wasPropertyExplicitlySet("isReadOnly")) { + this.isReadOnly(model.getIsReadOnly()); + } + if (model.wasPropertyExplicitlySet("isShareable")) { + this.isShareable(model.getIsShareable()); + } + if (model.wasPropertyExplicitlySet("volumeId")) { + this.volumeId(model.getVolumeId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public AttachNvmeVolumeDetails( + String device, + String displayName, + String instanceId, + Boolean isReadOnly, + Boolean isShareable, + String volumeId) { + super(device, displayName, instanceId, isReadOnly, isShareable, volumeId); + } + + @Override + public String toString() { + return this.toString(true); + } + + /** + * Return a string representation of the object. + * + * @param includeByteArrayContents true to include the full contents of byte arrays + * @return string representation + */ + public String toString(boolean includeByteArrayContents) { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("AttachNvmeVolumeDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof AttachNvmeVolumeDetails)) { + return false; + } + + AttachNvmeVolumeDetails other = (AttachNvmeVolumeDetails) o; + return super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + return result; + } +} diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/AttachVolumeDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/AttachVolumeDetails.java index 4811132d72d..5553f1df900 100644 --- a/bmc-core/src/main/java/com/oracle/bmc/core/model/AttachVolumeDetails.java +++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/AttachVolumeDetails.java @@ -31,6 +31,9 @@ @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = AttachIScsiVolumeDetails.class, name = "iscsi"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = AttachNvmeVolumeDetails.class, + name = "nvme"), @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = AttachParavirtualizedVolumeDetails.class, name = "paravirtualized") diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/BootVolumeAttachment.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/BootVolumeAttachment.java index 0e8028856a8..46386b92a34 100644 --- a/bmc-core/src/main/java/com/oracle/bmc/core/model/BootVolumeAttachment.java +++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/BootVolumeAttachment.java @@ -37,6 +37,7 @@ public final class BootVolumeAttachment "timeCreated", "timeUpdated", "isPvEncryptionInTransitEnabled", + "isEncryptionInTransitEnabled", "encryptionInTransitType" }) public BootVolumeAttachment( @@ -50,6 +51,7 @@ public BootVolumeAttachment( java.util.Date timeCreated, java.util.Date timeUpdated, Boolean isPvEncryptionInTransitEnabled, + Boolean isEncryptionInTransitEnabled, EncryptionInTransitType encryptionInTransitType) { super(); this.availabilityDomain = availabilityDomain; @@ -62,6 +64,7 @@ public BootVolumeAttachment( this.timeCreated = timeCreated; this.timeUpdated = timeUpdated; this.isPvEncryptionInTransitEnabled = isPvEncryptionInTransitEnabled; + this.isEncryptionInTransitEnabled = isEncryptionInTransitEnabled; this.encryptionInTransitType = encryptionInTransitType; } @@ -228,16 +231,12 @@ public Builder timeUpdated(java.util.Date timeUpdated) { this.__explicitlySet__.add("timeUpdated"); return this; } - /** - * Whether in-transit encryption for the boot volume's paravirtualized attachment is enabled - * or not. - */ + /** Deprecated. Use {@code isEncryptionInTransitEnabled} instead. */ @com.fasterxml.jackson.annotation.JsonProperty("isPvEncryptionInTransitEnabled") private Boolean isPvEncryptionInTransitEnabled; /** - * Whether in-transit encryption for the boot volume's paravirtualized attachment is enabled - * or not. + * Deprecated. Use {@code isEncryptionInTransitEnabled} instead. * * @param isPvEncryptionInTransitEnabled the value to set * @return this builder @@ -247,12 +246,27 @@ public Builder isPvEncryptionInTransitEnabled(Boolean isPvEncryptionInTransitEna this.__explicitlySet__.add("isPvEncryptionInTransitEnabled"); return this; } - /** Refer the top-level definition of encryptionInTransitType. The default value is NONE. */ + /** Specifies whether in-transit encryption is enabled for the boot volume's attachment. */ + @com.fasterxml.jackson.annotation.JsonProperty("isEncryptionInTransitEnabled") + private Boolean isEncryptionInTransitEnabled; + + /** + * Specifies whether in-transit encryption is enabled for the boot volume's attachment. + * + * @param isEncryptionInTransitEnabled the value to set + * @return this builder + */ + public Builder isEncryptionInTransitEnabled(Boolean isEncryptionInTransitEnabled) { + this.isEncryptionInTransitEnabled = isEncryptionInTransitEnabled; + this.__explicitlySet__.add("isEncryptionInTransitEnabled"); + return this; + } + /** Deprecated. Use {@code isEncryptionInTransitEnabled} instead. */ @com.fasterxml.jackson.annotation.JsonProperty("encryptionInTransitType") private EncryptionInTransitType encryptionInTransitType; /** - * Refer the top-level definition of encryptionInTransitType. The default value is NONE. + * Deprecated. Use {@code isEncryptionInTransitEnabled} instead. * * @param encryptionInTransitType the value to set * @return this builder @@ -279,6 +293,7 @@ public BootVolumeAttachment build() { this.timeCreated, this.timeUpdated, this.isPvEncryptionInTransitEnabled, + this.isEncryptionInTransitEnabled, this.encryptionInTransitType); for (String explicitlySetProperty : this.__explicitlySet__) { model.markPropertyAsExplicitlySet(explicitlySetProperty); @@ -318,6 +333,9 @@ public Builder copy(BootVolumeAttachment model) { if (model.wasPropertyExplicitlySet("isPvEncryptionInTransitEnabled")) { this.isPvEncryptionInTransitEnabled(model.getIsPvEncryptionInTransitEnabled()); } + if (model.wasPropertyExplicitlySet("isEncryptionInTransitEnabled")) { + this.isEncryptionInTransitEnabled(model.getIsEncryptionInTransitEnabled()); + } if (model.wasPropertyExplicitlySet("encryptionInTransitType")) { this.encryptionInTransitType(model.getEncryptionInTransitType()); } @@ -525,16 +543,12 @@ public java.util.Date getTimeUpdated() { return timeUpdated; } - /** - * Whether in-transit encryption for the boot volume's paravirtualized attachment is enabled or - * not. - */ + /** Deprecated. Use {@code isEncryptionInTransitEnabled} instead. */ @com.fasterxml.jackson.annotation.JsonProperty("isPvEncryptionInTransitEnabled") private final Boolean isPvEncryptionInTransitEnabled; /** - * Whether in-transit encryption for the boot volume's paravirtualized attachment is enabled or - * not. + * Deprecated. Use {@code isEncryptionInTransitEnabled} instead. * * @return the value */ @@ -542,12 +556,25 @@ public Boolean getIsPvEncryptionInTransitEnabled() { return isPvEncryptionInTransitEnabled; } - /** Refer the top-level definition of encryptionInTransitType. The default value is NONE. */ + /** Specifies whether in-transit encryption is enabled for the boot volume's attachment. */ + @com.fasterxml.jackson.annotation.JsonProperty("isEncryptionInTransitEnabled") + private final Boolean isEncryptionInTransitEnabled; + + /** + * Specifies whether in-transit encryption is enabled for the boot volume's attachment. + * + * @return the value + */ + public Boolean getIsEncryptionInTransitEnabled() { + return isEncryptionInTransitEnabled; + } + + /** Deprecated. Use {@code isEncryptionInTransitEnabled} instead. */ @com.fasterxml.jackson.annotation.JsonProperty("encryptionInTransitType") private final EncryptionInTransitType encryptionInTransitType; /** - * Refer the top-level definition of encryptionInTransitType. The default value is NONE. + * Deprecated. Use {@code isEncryptionInTransitEnabled} instead. * * @return the value */ @@ -581,6 +608,8 @@ public String toString(boolean includeByteArrayContents) { sb.append(", timeUpdated=").append(String.valueOf(this.timeUpdated)); sb.append(", isPvEncryptionInTransitEnabled=") .append(String.valueOf(this.isPvEncryptionInTransitEnabled)); + sb.append(", isEncryptionInTransitEnabled=") + .append(String.valueOf(this.isEncryptionInTransitEnabled)); sb.append(", encryptionInTransitType=") .append(String.valueOf(this.encryptionInTransitType)); sb.append(")"); @@ -608,6 +637,8 @@ public boolean equals(Object o) { && java.util.Objects.equals(this.timeUpdated, other.timeUpdated) && java.util.Objects.equals( this.isPvEncryptionInTransitEnabled, other.isPvEncryptionInTransitEnabled) + && java.util.Objects.equals( + this.isEncryptionInTransitEnabled, other.isEncryptionInTransitEnabled) && java.util.Objects.equals( this.encryptionInTransitType, other.encryptionInTransitType) && super.equals(other); @@ -639,6 +670,11 @@ public int hashCode() { + (this.isPvEncryptionInTransitEnabled == null ? 43 : this.isPvEncryptionInTransitEnabled.hashCode()); + result = + (result * PRIME) + + (this.isEncryptionInTransitEnabled == null + ? 43 + : this.isEncryptionInTransitEnabled.hashCode()); result = (result * PRIME) + (this.encryptionInTransitType == null diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/BsNvmeAttachmentsConfig.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/BsNvmeAttachmentsConfig.java new file mode 100644 index 00000000000..d052fe03256 --- /dev/null +++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/BsNvmeAttachmentsConfig.java @@ -0,0 +1,281 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.core.model; + +/** + * Shape-specific details for shapes that support remote NVMe volume attachments.
+ * 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 Builder#__explicitlySet__}. The {@link + * #hashCode()} and {@link #equals(Object)} methods are implemented to take the explicitly set + * fields into account. The constructor, on the other hand, does not take the explicitly set fields + * into account (since the constructor cannot distinguish explicit {@code null} from unset {@code + * null}). + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = BsNvmeAttachmentsConfig.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class BsNvmeAttachmentsConfig + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "vfEnableCount", + "minCores", + "maxRemoteNvmeVolumeAttachmentsPerCore", + "maxTotalRemoteNvmeVolumeAttachments" + }) + public BsNvmeAttachmentsConfig( + Integer vfEnableCount, + Integer minCores, + Integer maxRemoteNvmeVolumeAttachmentsPerCore, + Integer maxTotalRemoteNvmeVolumeAttachments) { + super(); + this.vfEnableCount = vfEnableCount; + this.minCores = minCores; + this.maxRemoteNvmeVolumeAttachmentsPerCore = maxRemoteNvmeVolumeAttachmentsPerCore; + this.maxTotalRemoteNvmeVolumeAttachments = maxTotalRemoteNvmeVolumeAttachments; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The number of virtual functions to enable on a hypervisor so that each sellable core has + * one virtual function available. This value is {@code 0} for VM and bare metal instances. + */ + @com.fasterxml.jackson.annotation.JsonProperty("vfEnableCount") + private Integer vfEnableCount; + + /** + * The number of virtual functions to enable on a hypervisor so that each sellable core has + * one virtual function available. This value is {@code 0} for VM and bare metal instances. + * + * @param vfEnableCount the value to set + * @return this builder + */ + public Builder vfEnableCount(Integer vfEnableCount) { + this.vfEnableCount = vfEnableCount; + this.__explicitlySet__.add("vfEnableCount"); + return this; + } + /** The minimum number of cores required to support remote NVMe volume attachments. */ + @com.fasterxml.jackson.annotation.JsonProperty("minCores") + private Integer minCores; + + /** + * The minimum number of cores required to support remote NVMe volume attachments. + * + * @param minCores the value to set + * @return this builder + */ + public Builder minCores(Integer minCores) { + this.minCores = minCores; + this.__explicitlySet__.add("minCores"); + return this; + } + /** The maximum number of remote NVMe volume attachments supported per core. */ + @com.fasterxml.jackson.annotation.JsonProperty("maxRemoteNvmeVolumeAttachmentsPerCore") + private Integer maxRemoteNvmeVolumeAttachmentsPerCore; + + /** + * The maximum number of remote NVMe volume attachments supported per core. + * + * @param maxRemoteNvmeVolumeAttachmentsPerCore the value to set + * @return this builder + */ + public Builder maxRemoteNvmeVolumeAttachmentsPerCore( + Integer maxRemoteNvmeVolumeAttachmentsPerCore) { + this.maxRemoteNvmeVolumeAttachmentsPerCore = maxRemoteNvmeVolumeAttachmentsPerCore; + this.__explicitlySet__.add("maxRemoteNvmeVolumeAttachmentsPerCore"); + return this; + } + /** The maximum total number of remote NVMe volume attachments supported for the shape. */ + @com.fasterxml.jackson.annotation.JsonProperty("maxTotalRemoteNvmeVolumeAttachments") + private Integer maxTotalRemoteNvmeVolumeAttachments; + + /** + * The maximum total number of remote NVMe volume attachments supported for the shape. + * + * @param maxTotalRemoteNvmeVolumeAttachments the value to set + * @return this builder + */ + public Builder maxTotalRemoteNvmeVolumeAttachments( + Integer maxTotalRemoteNvmeVolumeAttachments) { + this.maxTotalRemoteNvmeVolumeAttachments = maxTotalRemoteNvmeVolumeAttachments; + this.__explicitlySet__.add("maxTotalRemoteNvmeVolumeAttachments"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public BsNvmeAttachmentsConfig build() { + BsNvmeAttachmentsConfig model = + new BsNvmeAttachmentsConfig( + this.vfEnableCount, + this.minCores, + this.maxRemoteNvmeVolumeAttachmentsPerCore, + this.maxTotalRemoteNvmeVolumeAttachments); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(BsNvmeAttachmentsConfig model) { + if (model.wasPropertyExplicitlySet("vfEnableCount")) { + this.vfEnableCount(model.getVfEnableCount()); + } + if (model.wasPropertyExplicitlySet("minCores")) { + this.minCores(model.getMinCores()); + } + if (model.wasPropertyExplicitlySet("maxRemoteNvmeVolumeAttachmentsPerCore")) { + this.maxRemoteNvmeVolumeAttachmentsPerCore( + model.getMaxRemoteNvmeVolumeAttachmentsPerCore()); + } + if (model.wasPropertyExplicitlySet("maxTotalRemoteNvmeVolumeAttachments")) { + this.maxTotalRemoteNvmeVolumeAttachments( + model.getMaxTotalRemoteNvmeVolumeAttachments()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** + * The number of virtual functions to enable on a hypervisor so that each sellable core has one + * virtual function available. This value is {@code 0} for VM and bare metal instances. + */ + @com.fasterxml.jackson.annotation.JsonProperty("vfEnableCount") + private final Integer vfEnableCount; + + /** + * The number of virtual functions to enable on a hypervisor so that each sellable core has one + * virtual function available. This value is {@code 0} for VM and bare metal instances. + * + * @return the value + */ + public Integer getVfEnableCount() { + return vfEnableCount; + } + + /** The minimum number of cores required to support remote NVMe volume attachments. */ + @com.fasterxml.jackson.annotation.JsonProperty("minCores") + private final Integer minCores; + + /** + * The minimum number of cores required to support remote NVMe volume attachments. + * + * @return the value + */ + public Integer getMinCores() { + return minCores; + } + + /** The maximum number of remote NVMe volume attachments supported per core. */ + @com.fasterxml.jackson.annotation.JsonProperty("maxRemoteNvmeVolumeAttachmentsPerCore") + private final Integer maxRemoteNvmeVolumeAttachmentsPerCore; + + /** + * The maximum number of remote NVMe volume attachments supported per core. + * + * @return the value + */ + public Integer getMaxRemoteNvmeVolumeAttachmentsPerCore() { + return maxRemoteNvmeVolumeAttachmentsPerCore; + } + + /** The maximum total number of remote NVMe volume attachments supported for the shape. */ + @com.fasterxml.jackson.annotation.JsonProperty("maxTotalRemoteNvmeVolumeAttachments") + private final Integer maxTotalRemoteNvmeVolumeAttachments; + + /** + * The maximum total number of remote NVMe volume attachments supported for the shape. + * + * @return the value + */ + public Integer getMaxTotalRemoteNvmeVolumeAttachments() { + return maxTotalRemoteNvmeVolumeAttachments; + } + + @Override + public String toString() { + return this.toString(true); + } + + /** + * Return a string representation of the object. + * + * @param includeByteArrayContents true to include the full contents of byte arrays + * @return string representation + */ + public String toString(boolean includeByteArrayContents) { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("BsNvmeAttachmentsConfig("); + sb.append("super=").append(super.toString()); + sb.append("vfEnableCount=").append(String.valueOf(this.vfEnableCount)); + sb.append(", minCores=").append(String.valueOf(this.minCores)); + sb.append(", maxRemoteNvmeVolumeAttachmentsPerCore=") + .append(String.valueOf(this.maxRemoteNvmeVolumeAttachmentsPerCore)); + sb.append(", maxTotalRemoteNvmeVolumeAttachments=") + .append(String.valueOf(this.maxTotalRemoteNvmeVolumeAttachments)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof BsNvmeAttachmentsConfig)) { + return false; + } + + BsNvmeAttachmentsConfig other = (BsNvmeAttachmentsConfig) o; + return java.util.Objects.equals(this.vfEnableCount, other.vfEnableCount) + && java.util.Objects.equals(this.minCores, other.minCores) + && java.util.Objects.equals( + this.maxRemoteNvmeVolumeAttachmentsPerCore, + other.maxRemoteNvmeVolumeAttachmentsPerCore) + && java.util.Objects.equals( + this.maxTotalRemoteNvmeVolumeAttachments, + other.maxTotalRemoteNvmeVolumeAttachments) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = + (result * PRIME) + + (this.vfEnableCount == null ? 43 : this.vfEnableCount.hashCode()); + result = (result * PRIME) + (this.minCores == null ? 43 : this.minCores.hashCode()); + result = + (result * PRIME) + + (this.maxRemoteNvmeVolumeAttachmentsPerCore == null + ? 43 + : this.maxRemoteNvmeVolumeAttachmentsPerCore.hashCode()); + result = + (result * PRIME) + + (this.maxTotalRemoteNvmeVolumeAttachments == null + ? 43 + : this.maxTotalRemoteNvmeVolumeAttachments.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/EmulatedVolumeAttachment.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/EmulatedVolumeAttachment.java index 3edcdd27541..82d74158edb 100644 --- a/bmc-core/src/main/java/com/oracle/bmc/core/model/EmulatedVolumeAttachment.java +++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/EmulatedVolumeAttachment.java @@ -135,6 +135,15 @@ public Builder isPvEncryptionInTransitEnabled(Boolean isPvEncryptionInTransitEna return this; } + @com.fasterxml.jackson.annotation.JsonProperty("isEncryptionInTransitEnabled") + private Boolean isEncryptionInTransitEnabled; + + public Builder isEncryptionInTransitEnabled(Boolean isEncryptionInTransitEnabled) { + this.isEncryptionInTransitEnabled = isEncryptionInTransitEnabled; + this.__explicitlySet__.add("isEncryptionInTransitEnabled"); + return this; + } + @com.fasterxml.jackson.annotation.JsonProperty("isMultipath") private Boolean isMultipath; @@ -180,6 +189,7 @@ public EmulatedVolumeAttachment build() { this.timeCreated, this.volumeId, this.isPvEncryptionInTransitEnabled, + this.isEncryptionInTransitEnabled, this.isMultipath, this.iscsiLoginState, this.isVolumeCreatedDuringLaunch); @@ -227,6 +237,9 @@ public Builder copy(EmulatedVolumeAttachment model) { if (model.wasPropertyExplicitlySet("isPvEncryptionInTransitEnabled")) { this.isPvEncryptionInTransitEnabled(model.getIsPvEncryptionInTransitEnabled()); } + if (model.wasPropertyExplicitlySet("isEncryptionInTransitEnabled")) { + this.isEncryptionInTransitEnabled(model.getIsEncryptionInTransitEnabled()); + } if (model.wasPropertyExplicitlySet("isMultipath")) { this.isMultipath(model.getIsMultipath()); } @@ -263,6 +276,7 @@ public EmulatedVolumeAttachment( java.util.Date timeCreated, String volumeId, Boolean isPvEncryptionInTransitEnabled, + Boolean isEncryptionInTransitEnabled, Boolean isMultipath, IscsiLoginState iscsiLoginState, Boolean isVolumeCreatedDuringLaunch) { @@ -279,6 +293,7 @@ public EmulatedVolumeAttachment( timeCreated, volumeId, isPvEncryptionInTransitEnabled, + isEncryptionInTransitEnabled, isMultipath, iscsiLoginState, isVolumeCreatedDuringLaunch); diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/IScsiVolumeAttachment.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/IScsiVolumeAttachment.java index 1c6bafabaa7..37e861487f1 100644 --- a/bmc-core/src/main/java/com/oracle/bmc/core/model/IScsiVolumeAttachment.java +++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/IScsiVolumeAttachment.java @@ -135,6 +135,15 @@ public Builder isPvEncryptionInTransitEnabled(Boolean isPvEncryptionInTransitEna return this; } + @com.fasterxml.jackson.annotation.JsonProperty("isEncryptionInTransitEnabled") + private Boolean isEncryptionInTransitEnabled; + + public Builder isEncryptionInTransitEnabled(Boolean isEncryptionInTransitEnabled) { + this.isEncryptionInTransitEnabled = isEncryptionInTransitEnabled; + this.__explicitlySet__.add("isEncryptionInTransitEnabled"); + return this; + } + @com.fasterxml.jackson.annotation.JsonProperty("isMultipath") private Boolean isMultipath; @@ -304,12 +313,12 @@ public Builder multipathDevices(java.util.List multipathDevices this.__explicitlySet__.add("multipathDevices"); return this; } - /** Refer the top-level definition of encryptionInTransitType. The default value is NONE. */ + /** Deprecated. Use {@code isEncryptionInTransitEnabled} instead. */ @com.fasterxml.jackson.annotation.JsonProperty("encryptionInTransitType") private EncryptionInTransitType encryptionInTransitType; /** - * Refer the top-level definition of encryptionInTransitType. The default value is NONE. + * Deprecated. Use {@code isEncryptionInTransitEnabled} instead. * * @param encryptionInTransitType the value to set * @return this builder @@ -357,6 +366,7 @@ public IScsiVolumeAttachment build() { this.timeCreated, this.volumeId, this.isPvEncryptionInTransitEnabled, + this.isEncryptionInTransitEnabled, this.isMultipath, this.iscsiLoginState, this.isVolumeCreatedDuringLaunch, @@ -413,6 +423,9 @@ public Builder copy(IScsiVolumeAttachment model) { if (model.wasPropertyExplicitlySet("isPvEncryptionInTransitEnabled")) { this.isPvEncryptionInTransitEnabled(model.getIsPvEncryptionInTransitEnabled()); } + if (model.wasPropertyExplicitlySet("isEncryptionInTransitEnabled")) { + this.isEncryptionInTransitEnabled(model.getIsEncryptionInTransitEnabled()); + } if (model.wasPropertyExplicitlySet("isMultipath")) { this.isMultipath(model.getIsMultipath()); } @@ -476,6 +489,7 @@ public IScsiVolumeAttachment( java.util.Date timeCreated, String volumeId, Boolean isPvEncryptionInTransitEnabled, + Boolean isEncryptionInTransitEnabled, Boolean isMultipath, IscsiLoginState iscsiLoginState, Boolean isVolumeCreatedDuringLaunch, @@ -501,6 +515,7 @@ public IScsiVolumeAttachment( timeCreated, volumeId, isPvEncryptionInTransitEnabled, + isEncryptionInTransitEnabled, isMultipath, iscsiLoginState, isVolumeCreatedDuringLaunch); @@ -644,12 +659,12 @@ public java.util.List getMultipathDevices() { return multipathDevices; } - /** Refer the top-level definition of encryptionInTransitType. The default value is NONE. */ + /** Deprecated. Use {@code isEncryptionInTransitEnabled} instead. */ @com.fasterxml.jackson.annotation.JsonProperty("encryptionInTransitType") private final EncryptionInTransitType encryptionInTransitType; /** - * Refer the top-level definition of encryptionInTransitType. The default value is NONE. + * Deprecated. Use {@code isEncryptionInTransitEnabled} instead. * * @return the value */ diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/InstanceConfigurationAttachVolumeDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/InstanceConfigurationAttachVolumeDetails.java index d36ca4adaa6..67fc1cac5cd 100644 --- a/bmc-core/src/main/java/com/oracle/bmc/core/model/InstanceConfigurationAttachVolumeDetails.java +++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/InstanceConfigurationAttachVolumeDetails.java @@ -27,7 +27,10 @@ name = "iscsi"), @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = InstanceConfigurationParavirtualizedAttachVolumeDetails.class, - name = "paravirtualized") + name = "paravirtualized"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = InstanceConfigurationNvmeAttachVolumeDetails.class, + name = "nvme") }) @com.fasterxml.jackson.annotation.JsonFilter( com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/InstanceConfigurationLaunchOptions.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/InstanceConfigurationLaunchOptions.java index d4c9aa8be0b..d3e5e201ff3 100644 --- a/bmc-core/src/main/java/com/oracle/bmc/core/model/InstanceConfigurationLaunchOptions.java +++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/InstanceConfigurationLaunchOptions.java @@ -30,6 +30,7 @@ public final class InstanceConfigurationLaunchOptions "networkType", "remoteDataVolumeType", "isPvEncryptionInTransitEnabled", + "isEncryptionInTransitEnabled", "isConsistentVolumeNamingEnabled" }) public InstanceConfigurationLaunchOptions( @@ -38,6 +39,7 @@ public InstanceConfigurationLaunchOptions( NetworkType networkType, RemoteDataVolumeType remoteDataVolumeType, Boolean isPvEncryptionInTransitEnabled, + Boolean isEncryptionInTransitEnabled, Boolean isConsistentVolumeNamingEnabled) { super(); this.bootVolumeType = bootVolumeType; @@ -45,6 +47,7 @@ public InstanceConfigurationLaunchOptions( this.networkType = networkType; this.remoteDataVolumeType = remoteDataVolumeType; this.isPvEncryptionInTransitEnabled = isPvEncryptionInTransitEnabled; + this.isEncryptionInTransitEnabled = isEncryptionInTransitEnabled; this.isConsistentVolumeNamingEnabled = isConsistentVolumeNamingEnabled; } @@ -55,7 +58,8 @@ public static class Builder { * device. * {@code SCSI} - Emulated SCSI disk. * {@code IDE} - Emulated IDE disk. * {@code * VFIO} - Direct attached Virtual Function storage. This is the default option for local * data volumes on platform images. * {@code PARAVIRTUALIZED} - Paravirtualized disk. This - * is the default for boot volumes and remote block storage volumes on platform images. + * is the default for boot volumes and remote block storage volumes on platform images. * + * {@code NVME} - NVMe attached remote block storage device. */ @com.fasterxml.jackson.annotation.JsonProperty("bootVolumeType") private BootVolumeType bootVolumeType; @@ -65,7 +69,8 @@ public static class Builder { * device. * {@code SCSI} - Emulated SCSI disk. * {@code IDE} - Emulated IDE disk. * {@code * VFIO} - Direct attached Virtual Function storage. This is the default option for local * data volumes on platform images. * {@code PARAVIRTUALIZED} - Paravirtualized disk. This - * is the default for boot volumes and remote block storage volumes on platform images. + * is the default for boot volumes and remote block storage volumes on platform images. * + * {@code NVME} - NVMe attached remote block storage device. * * @param bootVolumeType the value to set * @return this builder @@ -132,7 +137,8 @@ public Builder networkType(NetworkType networkType) { * {@code SCSI} - Emulated SCSI disk. * {@code IDE} - Emulated IDE disk. * {@code VFIO} - * Direct attached Virtual Function storage. This is the default option for local data * volumes on platform images. * {@code PARAVIRTUALIZED} - Paravirtualized disk. This is the - * default for boot volumes and remote block storage volumes on platform images. + * default for boot volumes and remote block storage volumes on platform images. * {@code + * NVME} - NVMe attached remote block storage device. */ @com.fasterxml.jackson.annotation.JsonProperty("remoteDataVolumeType") private RemoteDataVolumeType remoteDataVolumeType; @@ -142,7 +148,8 @@ public Builder networkType(NetworkType networkType) { * {@code SCSI} - Emulated SCSI disk. * {@code IDE} - Emulated IDE disk. * {@code VFIO} - * Direct attached Virtual Function storage. This is the default option for local data * volumes on platform images. * {@code PARAVIRTUALIZED} - Paravirtualized disk. This is the - * default for boot volumes and remote block storage volumes on platform images. + * default for boot volumes and remote block storage volumes on platform images. * {@code + * NVME} - NVMe attached remote block storage device. * * @param remoteDataVolumeType the value to set * @return this builder @@ -152,18 +159,12 @@ public Builder remoteDataVolumeType(RemoteDataVolumeType remoteDataVolumeType) { this.__explicitlySet__.add("remoteDataVolumeType"); return this; } - /** - * Deprecated. Instead use {@code isPvEncryptionInTransitEnabled} in {@link - * #instanceConfigurationLaunchInstanceDetails(InstanceConfigurationLaunchInstanceDetailsRequest) - * instanceConfigurationLaunchInstanceDetails}. - */ + /** Deprecated. Use {@code isEncryptionInTransitEnabled} instead. */ @com.fasterxml.jackson.annotation.JsonProperty("isPvEncryptionInTransitEnabled") private Boolean isPvEncryptionInTransitEnabled; /** - * Deprecated. Instead use {@code isPvEncryptionInTransitEnabled} in {@link - * #instanceConfigurationLaunchInstanceDetails(InstanceConfigurationLaunchInstanceDetailsRequest) - * instanceConfigurationLaunchInstanceDetails}. + * Deprecated. Use {@code isEncryptionInTransitEnabled} instead. * * @param isPvEncryptionInTransitEnabled the value to set * @return this builder @@ -173,6 +174,21 @@ public Builder isPvEncryptionInTransitEnabled(Boolean isPvEncryptionInTransitEna this.__explicitlySet__.add("isPvEncryptionInTransitEnabled"); return this; } + /** Whether in-transit encryption for the data volume's attachment is enabled or not. */ + @com.fasterxml.jackson.annotation.JsonProperty("isEncryptionInTransitEnabled") + private Boolean isEncryptionInTransitEnabled; + + /** + * Whether in-transit encryption for the data volume's attachment is enabled or not. + * + * @param isEncryptionInTransitEnabled the value to set + * @return this builder + */ + public Builder isEncryptionInTransitEnabled(Boolean isEncryptionInTransitEnabled) { + this.isEncryptionInTransitEnabled = isEncryptionInTransitEnabled; + this.__explicitlySet__.add("isEncryptionInTransitEnabled"); + return this; + } /** Whether to enable consistent volume naming feature. Defaults to false. */ @com.fasterxml.jackson.annotation.JsonProperty("isConsistentVolumeNamingEnabled") private Boolean isConsistentVolumeNamingEnabled; @@ -200,6 +216,7 @@ public InstanceConfigurationLaunchOptions build() { this.networkType, this.remoteDataVolumeType, this.isPvEncryptionInTransitEnabled, + this.isEncryptionInTransitEnabled, this.isConsistentVolumeNamingEnabled); for (String explicitlySetProperty : this.__explicitlySet__) { model.markPropertyAsExplicitlySet(explicitlySetProperty); @@ -224,6 +241,9 @@ public Builder copy(InstanceConfigurationLaunchOptions model) { if (model.wasPropertyExplicitlySet("isPvEncryptionInTransitEnabled")) { this.isPvEncryptionInTransitEnabled(model.getIsPvEncryptionInTransitEnabled()); } + if (model.wasPropertyExplicitlySet("isEncryptionInTransitEnabled")) { + this.isEncryptionInTransitEnabled(model.getIsEncryptionInTransitEnabled()); + } if (model.wasPropertyExplicitlySet("isConsistentVolumeNamingEnabled")) { this.isConsistentVolumeNamingEnabled(model.getIsConsistentVolumeNamingEnabled()); } @@ -245,7 +265,8 @@ public Builder toBuilder() { * {@code SCSI} - Emulated SCSI disk. * {@code IDE} - Emulated IDE disk. * {@code VFIO} - Direct * attached Virtual Function storage. This is the default option for local data volumes on * platform images. * {@code PARAVIRTUALIZED} - Paravirtualized disk. This is the default for - * boot volumes and remote block storage volumes on platform images. + * boot volumes and remote block storage volumes on platform images. * {@code NVME} - NVMe + * attached remote block storage device. */ public enum BootVolumeType implements com.oracle.bmc.http.internal.BmcEnum { Iscsi("ISCSI"), @@ -253,6 +274,7 @@ public enum BootVolumeType implements com.oracle.bmc.http.internal.BmcEnum { Ide("IDE"), Vfio("VFIO"), Paravirtualized("PARAVIRTUALIZED"), + Nvme("NVME"), /** * This value is used if a service returns a value for this enum that is not recognized by @@ -300,7 +322,8 @@ public static BootVolumeType create(String key) { * {@code SCSI} - Emulated SCSI disk. * {@code IDE} - Emulated IDE disk. * {@code VFIO} - Direct * attached Virtual Function storage. This is the default option for local data volumes on * platform images. * {@code PARAVIRTUALIZED} - Paravirtualized disk. This is the default for - * boot volumes and remote block storage volumes on platform images. + * boot volumes and remote block storage volumes on platform images. * {@code NVME} - NVMe + * attached remote block storage device. */ @com.fasterxml.jackson.annotation.JsonProperty("bootVolumeType") private final BootVolumeType bootVolumeType; @@ -310,7 +333,8 @@ public static BootVolumeType create(String key) { * {@code SCSI} - Emulated SCSI disk. * {@code IDE} - Emulated IDE disk. * {@code VFIO} - Direct * attached Virtual Function storage. This is the default option for local data volumes on * platform images. * {@code PARAVIRTUALIZED} - Paravirtualized disk. This is the default for - * boot volumes and remote block storage volumes on platform images. + * boot volumes and remote block storage volumes on platform images. * {@code NVME} - NVMe + * attached remote block storage device. * * @return the value */ @@ -478,7 +502,8 @@ public NetworkType getNetworkType() { * SCSI} - Emulated SCSI disk. * {@code IDE} - Emulated IDE disk. * {@code VFIO} - Direct * attached Virtual Function storage. This is the default option for local data volumes on * platform images. * {@code PARAVIRTUALIZED} - Paravirtualized disk. This is the default for - * boot volumes and remote block storage volumes on platform images. + * boot volumes and remote block storage volumes on platform images. * {@code NVME} - NVMe + * attached remote block storage device. */ public enum RemoteDataVolumeType implements com.oracle.bmc.http.internal.BmcEnum { Iscsi("ISCSI"), @@ -486,6 +511,7 @@ public enum RemoteDataVolumeType implements com.oracle.bmc.http.internal.BmcEnum Ide("IDE"), Vfio("VFIO"), Paravirtualized("PARAVIRTUALIZED"), + Nvme("NVME"), /** * This value is used if a service returns a value for this enum that is not recognized by @@ -533,7 +559,8 @@ public static RemoteDataVolumeType create(String key) { * SCSI} - Emulated SCSI disk. * {@code IDE} - Emulated IDE disk. * {@code VFIO} - Direct * attached Virtual Function storage. This is the default option for local data volumes on * platform images. * {@code PARAVIRTUALIZED} - Paravirtualized disk. This is the default for - * boot volumes and remote block storage volumes on platform images. + * boot volumes and remote block storage volumes on platform images. * {@code NVME} - NVMe + * attached remote block storage device. */ @com.fasterxml.jackson.annotation.JsonProperty("remoteDataVolumeType") private final RemoteDataVolumeType remoteDataVolumeType; @@ -543,7 +570,8 @@ public static RemoteDataVolumeType create(String key) { * SCSI} - Emulated SCSI disk. * {@code IDE} - Emulated IDE disk. * {@code VFIO} - Direct * attached Virtual Function storage. This is the default option for local data volumes on * platform images. * {@code PARAVIRTUALIZED} - Paravirtualized disk. This is the default for - * boot volumes and remote block storage volumes on platform images. + * boot volumes and remote block storage volumes on platform images. * {@code NVME} - NVMe + * attached remote block storage device. * * @return the value */ @@ -551,18 +579,12 @@ public RemoteDataVolumeType getRemoteDataVolumeType() { return remoteDataVolumeType; } - /** - * Deprecated. Instead use {@code isPvEncryptionInTransitEnabled} in {@link - * #instanceConfigurationLaunchInstanceDetails(InstanceConfigurationLaunchInstanceDetailsRequest) - * instanceConfigurationLaunchInstanceDetails}. - */ + /** Deprecated. Use {@code isEncryptionInTransitEnabled} instead. */ @com.fasterxml.jackson.annotation.JsonProperty("isPvEncryptionInTransitEnabled") private final Boolean isPvEncryptionInTransitEnabled; /** - * Deprecated. Instead use {@code isPvEncryptionInTransitEnabled} in {@link - * #instanceConfigurationLaunchInstanceDetails(InstanceConfigurationLaunchInstanceDetailsRequest) - * instanceConfigurationLaunchInstanceDetails}. + * Deprecated. Use {@code isEncryptionInTransitEnabled} instead. * * @return the value */ @@ -570,6 +592,19 @@ public Boolean getIsPvEncryptionInTransitEnabled() { return isPvEncryptionInTransitEnabled; } + /** Whether in-transit encryption for the data volume's attachment is enabled or not. */ + @com.fasterxml.jackson.annotation.JsonProperty("isEncryptionInTransitEnabled") + private final Boolean isEncryptionInTransitEnabled; + + /** + * Whether in-transit encryption for the data volume's attachment is enabled or not. + * + * @return the value + */ + public Boolean getIsEncryptionInTransitEnabled() { + return isEncryptionInTransitEnabled; + } + /** Whether to enable consistent volume naming feature. Defaults to false. */ @com.fasterxml.jackson.annotation.JsonProperty("isConsistentVolumeNamingEnabled") private final Boolean isConsistentVolumeNamingEnabled; @@ -604,6 +639,8 @@ public String toString(boolean includeByteArrayContents) { sb.append(", remoteDataVolumeType=").append(String.valueOf(this.remoteDataVolumeType)); sb.append(", isPvEncryptionInTransitEnabled=") .append(String.valueOf(this.isPvEncryptionInTransitEnabled)); + sb.append(", isEncryptionInTransitEnabled=") + .append(String.valueOf(this.isEncryptionInTransitEnabled)); sb.append(", isConsistentVolumeNamingEnabled=") .append(String.valueOf(this.isConsistentVolumeNamingEnabled)); sb.append(")"); @@ -626,6 +663,8 @@ public boolean equals(Object o) { && java.util.Objects.equals(this.remoteDataVolumeType, other.remoteDataVolumeType) && java.util.Objects.equals( this.isPvEncryptionInTransitEnabled, other.isPvEncryptionInTransitEnabled) + && java.util.Objects.equals( + this.isEncryptionInTransitEnabled, other.isEncryptionInTransitEnabled) && java.util.Objects.equals( this.isConsistentVolumeNamingEnabled, other.isConsistentVolumeNamingEnabled) && super.equals(other); @@ -650,6 +689,11 @@ public int hashCode() { + (this.isPvEncryptionInTransitEnabled == null ? 43 : this.isPvEncryptionInTransitEnabled.hashCode()); + result = + (result * PRIME) + + (this.isEncryptionInTransitEnabled == null + ? 43 + : this.isEncryptionInTransitEnabled.hashCode()); result = (result * PRIME) + (this.isConsistentVolumeNamingEnabled == null diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/InstanceConfigurationNvmeAttachVolumeDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/InstanceConfigurationNvmeAttachVolumeDetails.java new file mode 100644 index 00000000000..4514b0b13ad --- /dev/null +++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/InstanceConfigurationNvmeAttachVolumeDetails.java @@ -0,0 +1,152 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.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 Builder#__explicitlySet__}. The {@link + * #hashCode()} and {@link #equals(Object)} methods are implemented to take the explicitly set + * fields into account. The constructor, on the other hand, does not take the explicitly set fields + * into account (since the constructor cannot distinguish explicit {@code null} from unset {@code + * null}). + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = InstanceConfigurationNvmeAttachVolumeDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "type") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class InstanceConfigurationNvmeAttachVolumeDetails + extends InstanceConfigurationAttachVolumeDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("displayName") + private String displayName; + + public Builder displayName(String displayName) { + this.displayName = displayName; + this.__explicitlySet__.add("displayName"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("isReadOnly") + private Boolean isReadOnly; + + public Builder isReadOnly(Boolean isReadOnly) { + this.isReadOnly = isReadOnly; + this.__explicitlySet__.add("isReadOnly"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("device") + private String device; + + public Builder device(String device) { + this.device = device; + this.__explicitlySet__.add("device"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("isShareable") + private Boolean isShareable; + + public Builder isShareable(Boolean isShareable) { + this.isShareable = isShareable; + this.__explicitlySet__.add("isShareable"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public InstanceConfigurationNvmeAttachVolumeDetails build() { + InstanceConfigurationNvmeAttachVolumeDetails model = + new InstanceConfigurationNvmeAttachVolumeDetails( + this.displayName, this.isReadOnly, this.device, this.isShareable); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(InstanceConfigurationNvmeAttachVolumeDetails model) { + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("isReadOnly")) { + this.isReadOnly(model.getIsReadOnly()); + } + if (model.wasPropertyExplicitlySet("device")) { + this.device(model.getDevice()); + } + if (model.wasPropertyExplicitlySet("isShareable")) { + this.isShareable(model.getIsShareable()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public InstanceConfigurationNvmeAttachVolumeDetails( + String displayName, Boolean isReadOnly, String device, Boolean isShareable) { + super(displayName, isReadOnly, device, isShareable); + } + + @Override + public String toString() { + return this.toString(true); + } + + /** + * Return a string representation of the object. + * + * @param includeByteArrayContents true to include the full contents of byte arrays + * @return string representation + */ + public String toString(boolean includeByteArrayContents) { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("InstanceConfigurationNvmeAttachVolumeDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof InstanceConfigurationNvmeAttachVolumeDetails)) { + return false; + } + + InstanceConfigurationNvmeAttachVolumeDetails other = + (InstanceConfigurationNvmeAttachVolumeDetails) o; + return super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + return result; + } +} diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/LaunchAttachNvmeVolumeDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/LaunchAttachNvmeVolumeDetails.java new file mode 100644 index 00000000000..488281f40ad --- /dev/null +++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/LaunchAttachNvmeVolumeDetails.java @@ -0,0 +1,185 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.core.model; + +/** + * Details specific to NVMe type volume attachments.
+ * 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 Builder#__explicitlySet__}. The {@link + * #hashCode()} and {@link #equals(Object)} methods are implemented to take the explicitly set + * fields into account. The constructor, on the other hand, does not take the explicitly set fields + * into account (since the constructor cannot distinguish explicit {@code null} from unset {@code + * null}). + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = LaunchAttachNvmeVolumeDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "type") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class LaunchAttachNvmeVolumeDetails extends LaunchAttachVolumeDetails { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("device") + private String device; + + public Builder device(String device) { + this.device = device; + this.__explicitlySet__.add("device"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("displayName") + private String displayName; + + public Builder displayName(String displayName) { + this.displayName = displayName; + this.__explicitlySet__.add("displayName"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("isReadOnly") + private Boolean isReadOnly; + + public Builder isReadOnly(Boolean isReadOnly) { + this.isReadOnly = isReadOnly; + this.__explicitlySet__.add("isReadOnly"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("isShareable") + private Boolean isShareable; + + public Builder isShareable(Boolean isShareable) { + this.isShareable = isShareable; + this.__explicitlySet__.add("isShareable"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("volumeId") + private String volumeId; + + public Builder volumeId(String volumeId) { + this.volumeId = volumeId; + this.__explicitlySet__.add("volumeId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("launchCreateVolumeDetails") + private LaunchCreateVolumeDetails launchCreateVolumeDetails; + + public Builder launchCreateVolumeDetails( + LaunchCreateVolumeDetails launchCreateVolumeDetails) { + this.launchCreateVolumeDetails = launchCreateVolumeDetails; + this.__explicitlySet__.add("launchCreateVolumeDetails"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public LaunchAttachNvmeVolumeDetails build() { + LaunchAttachNvmeVolumeDetails model = + new LaunchAttachNvmeVolumeDetails( + this.device, + this.displayName, + this.isReadOnly, + this.isShareable, + this.volumeId, + this.launchCreateVolumeDetails); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(LaunchAttachNvmeVolumeDetails model) { + if (model.wasPropertyExplicitlySet("device")) { + this.device(model.getDevice()); + } + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("isReadOnly")) { + this.isReadOnly(model.getIsReadOnly()); + } + if (model.wasPropertyExplicitlySet("isShareable")) { + this.isShareable(model.getIsShareable()); + } + if (model.wasPropertyExplicitlySet("volumeId")) { + this.volumeId(model.getVolumeId()); + } + if (model.wasPropertyExplicitlySet("launchCreateVolumeDetails")) { + this.launchCreateVolumeDetails(model.getLaunchCreateVolumeDetails()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public LaunchAttachNvmeVolumeDetails( + String device, + String displayName, + Boolean isReadOnly, + Boolean isShareable, + String volumeId, + LaunchCreateVolumeDetails launchCreateVolumeDetails) { + super(device, displayName, isReadOnly, isShareable, volumeId, launchCreateVolumeDetails); + } + + @Override + public String toString() { + return this.toString(true); + } + + /** + * Return a string representation of the object. + * + * @param includeByteArrayContents true to include the full contents of byte arrays + * @return string representation + */ + public String toString(boolean includeByteArrayContents) { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("LaunchAttachNvmeVolumeDetails("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof LaunchAttachNvmeVolumeDetails)) { + return false; + } + + LaunchAttachNvmeVolumeDetails other = (LaunchAttachNvmeVolumeDetails) o; + return super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + return result; + } +} diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/LaunchAttachVolumeDetails.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/LaunchAttachVolumeDetails.java index 2a7039d674a..9f9ef09509d 100644 --- a/bmc-core/src/main/java/com/oracle/bmc/core/model/LaunchAttachVolumeDetails.java +++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/LaunchAttachVolumeDetails.java @@ -22,6 +22,9 @@ property = "type", defaultImpl = LaunchAttachVolumeDetails.class) @com.fasterxml.jackson.annotation.JsonSubTypes({ + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = LaunchAttachNvmeVolumeDetails.class, + name = "nvme"), @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = LaunchAttachParavirtualizedVolumeDetails.class, name = "paravirtualized"), 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 06ed573674d..c66428fbedb 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 @@ -28,6 +28,7 @@ public final class LaunchOptions extends com.oracle.bmc.http.client.internal.Exp "networkType", "remoteDataVolumeType", "isPvEncryptionInTransitEnabled", + "isEncryptionInTransitEnabled", "isConsistentVolumeNamingEnabled" }) public LaunchOptions( @@ -36,6 +37,7 @@ public LaunchOptions( NetworkType networkType, RemoteDataVolumeType remoteDataVolumeType, Boolean isPvEncryptionInTransitEnabled, + Boolean isEncryptionInTransitEnabled, Boolean isConsistentVolumeNamingEnabled) { super(); this.bootVolumeType = bootVolumeType; @@ -43,6 +45,7 @@ public LaunchOptions( this.networkType = networkType; this.remoteDataVolumeType = remoteDataVolumeType; this.isPvEncryptionInTransitEnabled = isPvEncryptionInTransitEnabled; + this.isEncryptionInTransitEnabled = isEncryptionInTransitEnabled; this.isConsistentVolumeNamingEnabled = isConsistentVolumeNamingEnabled; } @@ -53,7 +56,8 @@ public static class Builder { * device. * {@code SCSI} - Emulated SCSI disk. * {@code IDE} - Emulated IDE disk. * {@code * VFIO} - Direct attached Virtual Function storage. This is the default option for local * data volumes on platform images. * {@code PARAVIRTUALIZED} - Paravirtualized disk. This - * is the default for boot volumes and remote block storage volumes on platform images. + * is the default for boot volumes and remote block storage volumes on platform images. * + * {@code NVME} - NVMe attached remote block storage device. */ @com.fasterxml.jackson.annotation.JsonProperty("bootVolumeType") private BootVolumeType bootVolumeType; @@ -63,7 +67,8 @@ public static class Builder { * device. * {@code SCSI} - Emulated SCSI disk. * {@code IDE} - Emulated IDE disk. * {@code * VFIO} - Direct attached Virtual Function storage. This is the default option for local * data volumes on platform images. * {@code PARAVIRTUALIZED} - Paravirtualized disk. This - * is the default for boot volumes and remote block storage volumes on platform images. + * is the default for boot volumes and remote block storage volumes on platform images. * + * {@code NVME} - NVMe attached remote block storage device. * * @param bootVolumeType the value to set * @return this builder @@ -130,7 +135,8 @@ public Builder networkType(NetworkType networkType) { * {@code SCSI} - Emulated SCSI disk. * {@code IDE} - Emulated IDE disk. * {@code VFIO} - * Direct attached Virtual Function storage. This is the default option for local data * volumes on platform images. * {@code PARAVIRTUALIZED} - Paravirtualized disk. This is the - * default for boot volumes and remote block storage volumes on platform images. + * default for boot volumes and remote block storage volumes on platform images. * {@code + * NVME} - NVMe attached remote block storage device. */ @com.fasterxml.jackson.annotation.JsonProperty("remoteDataVolumeType") private RemoteDataVolumeType remoteDataVolumeType; @@ -140,7 +146,8 @@ public Builder networkType(NetworkType networkType) { * {@code SCSI} - Emulated SCSI disk. * {@code IDE} - Emulated IDE disk. * {@code VFIO} - * Direct attached Virtual Function storage. This is the default option for local data * volumes on platform images. * {@code PARAVIRTUALIZED} - Paravirtualized disk. This is the - * default for boot volumes and remote block storage volumes on platform images. + * default for boot volumes and remote block storage volumes on platform images. * {@code + * NVME} - NVMe attached remote block storage device. * * @param remoteDataVolumeType the value to set * @return this builder @@ -150,16 +157,12 @@ public Builder remoteDataVolumeType(RemoteDataVolumeType remoteDataVolumeType) { this.__explicitlySet__.add("remoteDataVolumeType"); return this; } - /** - * Deprecated. Instead use {@code isPvEncryptionInTransitEnabled} in {@link - * #launchInstanceDetails(LaunchInstanceDetailsRequest) launchInstanceDetails}. - */ + /** Deprecated. Use {@code isEncryptionInTransitEnabled} instead. */ @com.fasterxml.jackson.annotation.JsonProperty("isPvEncryptionInTransitEnabled") private Boolean isPvEncryptionInTransitEnabled; /** - * Deprecated. Instead use {@code isPvEncryptionInTransitEnabled} in {@link - * #launchInstanceDetails(LaunchInstanceDetailsRequest) launchInstanceDetails}. + * Deprecated. Use {@code isEncryptionInTransitEnabled} instead. * * @param isPvEncryptionInTransitEnabled the value to set * @return this builder @@ -169,6 +172,21 @@ public Builder isPvEncryptionInTransitEnabled(Boolean isPvEncryptionInTransitEna this.__explicitlySet__.add("isPvEncryptionInTransitEnabled"); return this; } + /** Specifies whether in-transit encryption is enabled for the data volume's attachment. */ + @com.fasterxml.jackson.annotation.JsonProperty("isEncryptionInTransitEnabled") + private Boolean isEncryptionInTransitEnabled; + + /** + * Specifies whether in-transit encryption is enabled for the data volume's attachment. + * + * @param isEncryptionInTransitEnabled the value to set + * @return this builder + */ + public Builder isEncryptionInTransitEnabled(Boolean isEncryptionInTransitEnabled) { + this.isEncryptionInTransitEnabled = isEncryptionInTransitEnabled; + this.__explicitlySet__.add("isEncryptionInTransitEnabled"); + return this; + } /** Whether to enable consistent volume naming feature. Defaults to false. */ @com.fasterxml.jackson.annotation.JsonProperty("isConsistentVolumeNamingEnabled") private Boolean isConsistentVolumeNamingEnabled; @@ -196,6 +214,7 @@ public LaunchOptions build() { this.networkType, this.remoteDataVolumeType, this.isPvEncryptionInTransitEnabled, + this.isEncryptionInTransitEnabled, this.isConsistentVolumeNamingEnabled); for (String explicitlySetProperty : this.__explicitlySet__) { model.markPropertyAsExplicitlySet(explicitlySetProperty); @@ -220,6 +239,9 @@ public Builder copy(LaunchOptions model) { if (model.wasPropertyExplicitlySet("isPvEncryptionInTransitEnabled")) { this.isPvEncryptionInTransitEnabled(model.getIsPvEncryptionInTransitEnabled()); } + if (model.wasPropertyExplicitlySet("isEncryptionInTransitEnabled")) { + this.isEncryptionInTransitEnabled(model.getIsEncryptionInTransitEnabled()); + } if (model.wasPropertyExplicitlySet("isConsistentVolumeNamingEnabled")) { this.isConsistentVolumeNamingEnabled(model.getIsConsistentVolumeNamingEnabled()); } @@ -241,7 +263,8 @@ public Builder toBuilder() { * {@code SCSI} - Emulated SCSI disk. * {@code IDE} - Emulated IDE disk. * {@code VFIO} - Direct * attached Virtual Function storage. This is the default option for local data volumes on * platform images. * {@code PARAVIRTUALIZED} - Paravirtualized disk. This is the default for - * boot volumes and remote block storage volumes on platform images. + * boot volumes and remote block storage volumes on platform images. * {@code NVME} - NVMe + * attached remote block storage device. */ public enum BootVolumeType implements com.oracle.bmc.http.internal.BmcEnum { Iscsi("ISCSI"), @@ -249,6 +272,7 @@ public enum BootVolumeType implements com.oracle.bmc.http.internal.BmcEnum { Ide("IDE"), Vfio("VFIO"), Paravirtualized("PARAVIRTUALIZED"), + Nvme("NVME"), /** * This value is used if a service returns a value for this enum that is not recognized by @@ -296,7 +320,8 @@ public static BootVolumeType create(String key) { * {@code SCSI} - Emulated SCSI disk. * {@code IDE} - Emulated IDE disk. * {@code VFIO} - Direct * attached Virtual Function storage. This is the default option for local data volumes on * platform images. * {@code PARAVIRTUALIZED} - Paravirtualized disk. This is the default for - * boot volumes and remote block storage volumes on platform images. + * boot volumes and remote block storage volumes on platform images. * {@code NVME} - NVMe + * attached remote block storage device. */ @com.fasterxml.jackson.annotation.JsonProperty("bootVolumeType") private final BootVolumeType bootVolumeType; @@ -306,7 +331,8 @@ public static BootVolumeType create(String key) { * {@code SCSI} - Emulated SCSI disk. * {@code IDE} - Emulated IDE disk. * {@code VFIO} - Direct * attached Virtual Function storage. This is the default option for local data volumes on * platform images. * {@code PARAVIRTUALIZED} - Paravirtualized disk. This is the default for - * boot volumes and remote block storage volumes on platform images. + * boot volumes and remote block storage volumes on platform images. * {@code NVME} - NVMe + * attached remote block storage device. * * @return the value */ @@ -474,7 +500,8 @@ public NetworkType getNetworkType() { * SCSI} - Emulated SCSI disk. * {@code IDE} - Emulated IDE disk. * {@code VFIO} - Direct * attached Virtual Function storage. This is the default option for local data volumes on * platform images. * {@code PARAVIRTUALIZED} - Paravirtualized disk. This is the default for - * boot volumes and remote block storage volumes on platform images. + * boot volumes and remote block storage volumes on platform images. * {@code NVME} - NVMe + * attached remote block storage device. */ public enum RemoteDataVolumeType implements com.oracle.bmc.http.internal.BmcEnum { Iscsi("ISCSI"), @@ -482,6 +509,7 @@ public enum RemoteDataVolumeType implements com.oracle.bmc.http.internal.BmcEnum Ide("IDE"), Vfio("VFIO"), Paravirtualized("PARAVIRTUALIZED"), + Nvme("NVME"), /** * This value is used if a service returns a value for this enum that is not recognized by @@ -529,7 +557,8 @@ public static RemoteDataVolumeType create(String key) { * SCSI} - Emulated SCSI disk. * {@code IDE} - Emulated IDE disk. * {@code VFIO} - Direct * attached Virtual Function storage. This is the default option for local data volumes on * platform images. * {@code PARAVIRTUALIZED} - Paravirtualized disk. This is the default for - * boot volumes and remote block storage volumes on platform images. + * boot volumes and remote block storage volumes on platform images. * {@code NVME} - NVMe + * attached remote block storage device. */ @com.fasterxml.jackson.annotation.JsonProperty("remoteDataVolumeType") private final RemoteDataVolumeType remoteDataVolumeType; @@ -539,7 +568,8 @@ public static RemoteDataVolumeType create(String key) { * SCSI} - Emulated SCSI disk. * {@code IDE} - Emulated IDE disk. * {@code VFIO} - Direct * attached Virtual Function storage. This is the default option for local data volumes on * platform images. * {@code PARAVIRTUALIZED} - Paravirtualized disk. This is the default for - * boot volumes and remote block storage volumes on platform images. + * boot volumes and remote block storage volumes on platform images. * {@code NVME} - NVMe + * attached remote block storage device. * * @return the value */ @@ -547,16 +577,12 @@ public RemoteDataVolumeType getRemoteDataVolumeType() { return remoteDataVolumeType; } - /** - * Deprecated. Instead use {@code isPvEncryptionInTransitEnabled} in {@link - * #launchInstanceDetails(LaunchInstanceDetailsRequest) launchInstanceDetails}. - */ + /** Deprecated. Use {@code isEncryptionInTransitEnabled} instead. */ @com.fasterxml.jackson.annotation.JsonProperty("isPvEncryptionInTransitEnabled") private final Boolean isPvEncryptionInTransitEnabled; /** - * Deprecated. Instead use {@code isPvEncryptionInTransitEnabled} in {@link - * #launchInstanceDetails(LaunchInstanceDetailsRequest) launchInstanceDetails}. + * Deprecated. Use {@code isEncryptionInTransitEnabled} instead. * * @return the value */ @@ -564,6 +590,19 @@ public Boolean getIsPvEncryptionInTransitEnabled() { return isPvEncryptionInTransitEnabled; } + /** Specifies whether in-transit encryption is enabled for the data volume's attachment. */ + @com.fasterxml.jackson.annotation.JsonProperty("isEncryptionInTransitEnabled") + private final Boolean isEncryptionInTransitEnabled; + + /** + * Specifies whether in-transit encryption is enabled for the data volume's attachment. + * + * @return the value + */ + public Boolean getIsEncryptionInTransitEnabled() { + return isEncryptionInTransitEnabled; + } + /** Whether to enable consistent volume naming feature. Defaults to false. */ @com.fasterxml.jackson.annotation.JsonProperty("isConsistentVolumeNamingEnabled") private final Boolean isConsistentVolumeNamingEnabled; @@ -598,6 +637,8 @@ public String toString(boolean includeByteArrayContents) { sb.append(", remoteDataVolumeType=").append(String.valueOf(this.remoteDataVolumeType)); sb.append(", isPvEncryptionInTransitEnabled=") .append(String.valueOf(this.isPvEncryptionInTransitEnabled)); + sb.append(", isEncryptionInTransitEnabled=") + .append(String.valueOf(this.isEncryptionInTransitEnabled)); sb.append(", isConsistentVolumeNamingEnabled=") .append(String.valueOf(this.isConsistentVolumeNamingEnabled)); sb.append(")"); @@ -620,6 +661,8 @@ public boolean equals(Object o) { && java.util.Objects.equals(this.remoteDataVolumeType, other.remoteDataVolumeType) && java.util.Objects.equals( this.isPvEncryptionInTransitEnabled, other.isPvEncryptionInTransitEnabled) + && java.util.Objects.equals( + this.isEncryptionInTransitEnabled, other.isEncryptionInTransitEnabled) && java.util.Objects.equals( this.isConsistentVolumeNamingEnabled, other.isConsistentVolumeNamingEnabled) && super.equals(other); @@ -644,6 +687,11 @@ public int hashCode() { + (this.isPvEncryptionInTransitEnabled == null ? 43 : this.isPvEncryptionInTransitEnabled.hashCode()); + result = + (result * PRIME) + + (this.isEncryptionInTransitEnabled == null + ? 43 + : this.isEncryptionInTransitEnabled.hashCode()); result = (result * PRIME) + (this.isConsistentVolumeNamingEnabled == null diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/NvmeVolumeAttachment.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/NvmeVolumeAttachment.java new file mode 100644 index 00000000000..3afaeb031a5 --- /dev/null +++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/NvmeVolumeAttachment.java @@ -0,0 +1,340 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.core.model; + +/** + * A nvme volume attachment.
+ * 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 Builder#__explicitlySet__}. The {@link + * #hashCode()} and {@link #equals(Object)} methods are implemented to take the explicitly set + * fields into account. The constructor, on the other hand, does not take the explicitly set fields + * into account (since the constructor cannot distinguish explicit {@code null} from unset {@code + * null}). + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20160918") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = NvmeVolumeAttachment.Builder.class) +@com.fasterxml.jackson.annotation.JsonTypeInfo( + use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, + include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, + property = "attachmentType") +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class NvmeVolumeAttachment extends VolumeAttachment { + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + @com.fasterxml.jackson.annotation.JsonProperty("availabilityDomain") + private String availabilityDomain; + + public Builder availabilityDomain(String availabilityDomain) { + this.availabilityDomain = availabilityDomain; + this.__explicitlySet__.add("availabilityDomain"); + return this; + } + + @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.JsonProperty("device") + private String device; + + public Builder device(String device) { + this.device = device; + this.__explicitlySet__.add("device"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("displayName") + private String displayName; + + public Builder displayName(String displayName) { + this.displayName = displayName; + this.__explicitlySet__.add("displayName"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("id") + private String id; + + public Builder id(String id) { + this.id = id; + this.__explicitlySet__.add("id"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("instanceId") + private String instanceId; + + public Builder instanceId(String instanceId) { + this.instanceId = instanceId; + this.__explicitlySet__.add("instanceId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("isReadOnly") + private Boolean isReadOnly; + + public Builder isReadOnly(Boolean isReadOnly) { + this.isReadOnly = isReadOnly; + this.__explicitlySet__.add("isReadOnly"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("isShareable") + private Boolean isShareable; + + public Builder isShareable(Boolean isShareable) { + this.isShareable = isShareable; + this.__explicitlySet__.add("isShareable"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private LifecycleState lifecycleState; + + public Builder lifecycleState(LifecycleState lifecycleState) { + this.lifecycleState = lifecycleState; + this.__explicitlySet__.add("lifecycleState"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private java.util.Date timeCreated; + + public Builder timeCreated(java.util.Date timeCreated) { + this.timeCreated = timeCreated; + this.__explicitlySet__.add("timeCreated"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("volumeId") + private String volumeId; + + public Builder volumeId(String volumeId) { + this.volumeId = volumeId; + this.__explicitlySet__.add("volumeId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("isPvEncryptionInTransitEnabled") + private Boolean isPvEncryptionInTransitEnabled; + + public Builder isPvEncryptionInTransitEnabled(Boolean isPvEncryptionInTransitEnabled) { + this.isPvEncryptionInTransitEnabled = isPvEncryptionInTransitEnabled; + this.__explicitlySet__.add("isPvEncryptionInTransitEnabled"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("isEncryptionInTransitEnabled") + private Boolean isEncryptionInTransitEnabled; + + public Builder isEncryptionInTransitEnabled(Boolean isEncryptionInTransitEnabled) { + this.isEncryptionInTransitEnabled = isEncryptionInTransitEnabled; + this.__explicitlySet__.add("isEncryptionInTransitEnabled"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("isMultipath") + private Boolean isMultipath; + + public Builder isMultipath(Boolean isMultipath) { + this.isMultipath = isMultipath; + this.__explicitlySet__.add("isMultipath"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("iscsiLoginState") + private IscsiLoginState iscsiLoginState; + + public Builder iscsiLoginState(IscsiLoginState iscsiLoginState) { + this.iscsiLoginState = iscsiLoginState; + this.__explicitlySet__.add("iscsiLoginState"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonProperty("isVolumeCreatedDuringLaunch") + private Boolean isVolumeCreatedDuringLaunch; + + public Builder isVolumeCreatedDuringLaunch(Boolean isVolumeCreatedDuringLaunch) { + this.isVolumeCreatedDuringLaunch = isVolumeCreatedDuringLaunch; + this.__explicitlySet__.add("isVolumeCreatedDuringLaunch"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public NvmeVolumeAttachment build() { + NvmeVolumeAttachment model = + new NvmeVolumeAttachment( + this.availabilityDomain, + this.compartmentId, + this.device, + this.displayName, + this.id, + this.instanceId, + this.isReadOnly, + this.isShareable, + this.lifecycleState, + this.timeCreated, + this.volumeId, + this.isPvEncryptionInTransitEnabled, + this.isEncryptionInTransitEnabled, + this.isMultipath, + this.iscsiLoginState, + this.isVolumeCreatedDuringLaunch); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(NvmeVolumeAttachment model) { + if (model.wasPropertyExplicitlySet("availabilityDomain")) { + this.availabilityDomain(model.getAvailabilityDomain()); + } + if (model.wasPropertyExplicitlySet("compartmentId")) { + this.compartmentId(model.getCompartmentId()); + } + if (model.wasPropertyExplicitlySet("device")) { + this.device(model.getDevice()); + } + if (model.wasPropertyExplicitlySet("displayName")) { + this.displayName(model.getDisplayName()); + } + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + if (model.wasPropertyExplicitlySet("instanceId")) { + this.instanceId(model.getInstanceId()); + } + if (model.wasPropertyExplicitlySet("isReadOnly")) { + this.isReadOnly(model.getIsReadOnly()); + } + if (model.wasPropertyExplicitlySet("isShareable")) { + this.isShareable(model.getIsShareable()); + } + if (model.wasPropertyExplicitlySet("lifecycleState")) { + this.lifecycleState(model.getLifecycleState()); + } + if (model.wasPropertyExplicitlySet("timeCreated")) { + this.timeCreated(model.getTimeCreated()); + } + if (model.wasPropertyExplicitlySet("volumeId")) { + this.volumeId(model.getVolumeId()); + } + if (model.wasPropertyExplicitlySet("isPvEncryptionInTransitEnabled")) { + this.isPvEncryptionInTransitEnabled(model.getIsPvEncryptionInTransitEnabled()); + } + if (model.wasPropertyExplicitlySet("isEncryptionInTransitEnabled")) { + this.isEncryptionInTransitEnabled(model.getIsEncryptionInTransitEnabled()); + } + if (model.wasPropertyExplicitlySet("isMultipath")) { + this.isMultipath(model.getIsMultipath()); + } + if (model.wasPropertyExplicitlySet("iscsiLoginState")) { + this.iscsiLoginState(model.getIscsiLoginState()); + } + if (model.wasPropertyExplicitlySet("isVolumeCreatedDuringLaunch")) { + this.isVolumeCreatedDuringLaunch(model.getIsVolumeCreatedDuringLaunch()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + @Deprecated + public NvmeVolumeAttachment( + String availabilityDomain, + String compartmentId, + String device, + String displayName, + String id, + String instanceId, + Boolean isReadOnly, + Boolean isShareable, + LifecycleState lifecycleState, + java.util.Date timeCreated, + String volumeId, + Boolean isPvEncryptionInTransitEnabled, + Boolean isEncryptionInTransitEnabled, + Boolean isMultipath, + IscsiLoginState iscsiLoginState, + Boolean isVolumeCreatedDuringLaunch) { + super( + availabilityDomain, + compartmentId, + device, + displayName, + id, + instanceId, + isReadOnly, + isShareable, + lifecycleState, + timeCreated, + volumeId, + isPvEncryptionInTransitEnabled, + isEncryptionInTransitEnabled, + isMultipath, + iscsiLoginState, + isVolumeCreatedDuringLaunch); + } + + @Override + public String toString() { + return this.toString(true); + } + + /** + * Return a string representation of the object. + * + * @param includeByteArrayContents true to include the full contents of byte arrays + * @return string representation + */ + public String toString(boolean includeByteArrayContents) { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("NvmeVolumeAttachment("); + sb.append("super=").append(super.toString(includeByteArrayContents)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof NvmeVolumeAttachment)) { + return false; + } + + NvmeVolumeAttachment other = (NvmeVolumeAttachment) o; + return super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + return result; + } +} diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/ParavirtualizedVolumeAttachment.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/ParavirtualizedVolumeAttachment.java index 80fac349650..9c7f162fa9c 100644 --- a/bmc-core/src/main/java/com/oracle/bmc/core/model/ParavirtualizedVolumeAttachment.java +++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/ParavirtualizedVolumeAttachment.java @@ -135,6 +135,15 @@ public Builder isPvEncryptionInTransitEnabled(Boolean isPvEncryptionInTransitEna return this; } + @com.fasterxml.jackson.annotation.JsonProperty("isEncryptionInTransitEnabled") + private Boolean isEncryptionInTransitEnabled; + + public Builder isEncryptionInTransitEnabled(Boolean isEncryptionInTransitEnabled) { + this.isEncryptionInTransitEnabled = isEncryptionInTransitEnabled; + this.__explicitlySet__.add("isEncryptionInTransitEnabled"); + return this; + } + @com.fasterxml.jackson.annotation.JsonProperty("isMultipath") private Boolean isMultipath; @@ -180,6 +189,7 @@ public ParavirtualizedVolumeAttachment build() { this.timeCreated, this.volumeId, this.isPvEncryptionInTransitEnabled, + this.isEncryptionInTransitEnabled, this.isMultipath, this.iscsiLoginState, this.isVolumeCreatedDuringLaunch); @@ -227,6 +237,9 @@ public Builder copy(ParavirtualizedVolumeAttachment model) { if (model.wasPropertyExplicitlySet("isPvEncryptionInTransitEnabled")) { this.isPvEncryptionInTransitEnabled(model.getIsPvEncryptionInTransitEnabled()); } + if (model.wasPropertyExplicitlySet("isEncryptionInTransitEnabled")) { + this.isEncryptionInTransitEnabled(model.getIsEncryptionInTransitEnabled()); + } if (model.wasPropertyExplicitlySet("isMultipath")) { this.isMultipath(model.getIsMultipath()); } @@ -263,6 +276,7 @@ public ParavirtualizedVolumeAttachment( java.util.Date timeCreated, String volumeId, Boolean isPvEncryptionInTransitEnabled, + Boolean isEncryptionInTransitEnabled, Boolean isMultipath, IscsiLoginState iscsiLoginState, Boolean isVolumeCreatedDuringLaunch) { @@ -279,6 +293,7 @@ public ParavirtualizedVolumeAttachment( timeCreated, volumeId, isPvEncryptionInTransitEnabled, + isEncryptionInTransitEnabled, isMultipath, iscsiLoginState, isVolumeCreatedDuringLaunch); diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/Shape.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/Shape.java index 77a8277b059..1ce0df6ac4d 100644 --- a/bmc-core/src/main/java/com/oracle/bmc/core/model/Shape.java +++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/Shape.java @@ -47,6 +47,7 @@ public final class Shape extends com.oracle.bmc.http.client.internal.ExplicitlyS "networkingBandwidthOptions", "maxVnicAttachmentOptions", "platformConfigOptions", + "bsNvmeAttachmentsConfig", "isBilledForStoppedInstance", "billingType", "quotaNames", @@ -79,6 +80,7 @@ public Shape( ShapeNetworkingBandwidthOptions networkingBandwidthOptions, ShapeMaxVnicAttachmentOptions maxVnicAttachmentOptions, ShapePlatformConfigOptions platformConfigOptions, + BsNvmeAttachmentsConfig bsNvmeAttachmentsConfig, Boolean isBilledForStoppedInstance, BillingType billingType, java.util.List quotaNames, @@ -110,6 +112,7 @@ public Shape( this.networkingBandwidthOptions = networkingBandwidthOptions; this.maxVnicAttachmentOptions = maxVnicAttachmentOptions; this.platformConfigOptions = platformConfigOptions; + this.bsNvmeAttachmentsConfig = bsNvmeAttachmentsConfig; this.isBilledForStoppedInstance = isBilledForStoppedInstance; this.billingType = billingType; this.quotaNames = quotaNames; @@ -468,6 +471,15 @@ public Builder platformConfigOptions(ShapePlatformConfigOptions platformConfigOp this.__explicitlySet__.add("platformConfigOptions"); return this; } + + @com.fasterxml.jackson.annotation.JsonProperty("bsNvmeAttachmentsConfig") + private BsNvmeAttachmentsConfig bsNvmeAttachmentsConfig; + + public Builder bsNvmeAttachmentsConfig(BsNvmeAttachmentsConfig bsNvmeAttachmentsConfig) { + this.bsNvmeAttachmentsConfig = bsNvmeAttachmentsConfig; + this.__explicitlySet__.add("bsNvmeAttachmentsConfig"); + return this; + } /** * Whether billing continues when the instances that use this shape are in the stopped * state. @@ -648,6 +660,7 @@ public Shape build() { this.networkingBandwidthOptions, this.maxVnicAttachmentOptions, this.platformConfigOptions, + this.bsNvmeAttachmentsConfig, this.isBilledForStoppedInstance, this.billingType, this.quotaNames, @@ -730,6 +743,9 @@ public Builder copy(Shape model) { if (model.wasPropertyExplicitlySet("platformConfigOptions")) { this.platformConfigOptions(model.getPlatformConfigOptions()); } + if (model.wasPropertyExplicitlySet("bsNvmeAttachmentsConfig")) { + this.bsNvmeAttachmentsConfig(model.getBsNvmeAttachmentsConfig()); + } if (model.wasPropertyExplicitlySet("isBilledForStoppedInstance")) { this.isBilledForStoppedInstance(model.getIsBilledForStoppedInstance()); } @@ -1110,6 +1126,13 @@ public ShapePlatformConfigOptions getPlatformConfigOptions() { return platformConfigOptions; } + @com.fasterxml.jackson.annotation.JsonProperty("bsNvmeAttachmentsConfig") + private final BsNvmeAttachmentsConfig bsNvmeAttachmentsConfig; + + public BsNvmeAttachmentsConfig getBsNvmeAttachmentsConfig() { + return bsNvmeAttachmentsConfig; + } + /** * Whether billing continues when the instances that use this shape are in the stopped state. */ @@ -1333,6 +1356,8 @@ public String toString(boolean includeByteArrayContents) { sb.append(", maxVnicAttachmentOptions=") .append(String.valueOf(this.maxVnicAttachmentOptions)); sb.append(", platformConfigOptions=").append(String.valueOf(this.platformConfigOptions)); + sb.append(", bsNvmeAttachmentsConfig=") + .append(String.valueOf(this.bsNvmeAttachmentsConfig)); sb.append(", isBilledForStoppedInstance=") .append(String.valueOf(this.isBilledForStoppedInstance)); sb.append(", billingType=").append(String.valueOf(this.billingType)); @@ -1386,6 +1411,8 @@ public boolean equals(Object o) { && java.util.Objects.equals( this.maxVnicAttachmentOptions, other.maxVnicAttachmentOptions) && java.util.Objects.equals(this.platformConfigOptions, other.platformConfigOptions) + && java.util.Objects.equals( + this.bsNvmeAttachmentsConfig, other.bsNvmeAttachmentsConfig) && java.util.Objects.equals( this.isBilledForStoppedInstance, other.isBilledForStoppedInstance) && java.util.Objects.equals(this.billingType, other.billingType) @@ -1478,6 +1505,11 @@ public int hashCode() { + (this.platformConfigOptions == null ? 43 : this.platformConfigOptions.hashCode()); + result = + (result * PRIME) + + (this.bsNvmeAttachmentsConfig == null + ? 43 + : this.bsNvmeAttachmentsConfig.hashCode()); result = (result * PRIME) + (this.isBilledForStoppedInstance == null diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateLaunchOptions.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateLaunchOptions.java index c177a2ca50f..a3de3f661a8 100644 --- a/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateLaunchOptions.java +++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/UpdateLaunchOptions.java @@ -43,7 +43,8 @@ public static class Builder { /** * Emulation type for the boot volume. * {@code ISCSI} - ISCSI attached block storage * device. * {@code PARAVIRTUALIZED} - Paravirtualized disk. This is the default for boot - * volumes and remote block storage volumes on platform images. + * volumes and remote block storage volumes on platform images. * {@code NVME} - NVMe + * attached remote block storage device. * *

Before you change the boot volume attachment type, detach all block volumes and VNICs * except for the boot volume and the primary VNIC. @@ -62,7 +63,8 @@ public static class Builder { /** * Emulation type for the boot volume. * {@code ISCSI} - ISCSI attached block storage * device. * {@code PARAVIRTUALIZED} - Paravirtualized disk. This is the default for boot - * volumes and remote block storage volumes on platform images. + * volumes and remote block storage volumes on platform images. * {@code NVME} - NVMe + * attached remote block storage device. * *

Before you change the boot volume attachment type, detach all block volumes and VNICs * except for the boot volume and the primary VNIC. @@ -220,7 +222,8 @@ public Builder toBuilder() { /** * Emulation type for the boot volume. * {@code ISCSI} - ISCSI attached block storage device. * * {@code PARAVIRTUALIZED} - Paravirtualized disk. This is the default for boot volumes and - * remote block storage volumes on platform images. + * remote block storage volumes on platform images. * {@code NVME} - NVMe attached remote block + * storage device. * *

Before you change the boot volume attachment type, detach all block volumes and VNICs * except for the boot volume and the primary VNIC. @@ -236,6 +239,7 @@ public Builder toBuilder() { public enum BootVolumeType implements com.oracle.bmc.http.internal.BmcEnum { Iscsi("ISCSI"), Paravirtualized("PARAVIRTUALIZED"), + Nvme("NVME"), ; private final String value; @@ -268,7 +272,8 @@ public static BootVolumeType create(String key) { /** * Emulation type for the boot volume. * {@code ISCSI} - ISCSI attached block storage device. * * {@code PARAVIRTUALIZED} - Paravirtualized disk. This is the default for boot volumes and - * remote block storage volumes on platform images. + * remote block storage volumes on platform images. * {@code NVME} - NVMe attached remote block + * storage device. * *

Before you change the boot volume attachment type, detach all block volumes and VNICs * except for the boot volume and the primary VNIC. @@ -287,7 +292,8 @@ public static BootVolumeType create(String key) { /** * Emulation type for the boot volume. * {@code ISCSI} - ISCSI attached block storage device. * * {@code PARAVIRTUALIZED} - Paravirtualized disk. This is the default for boot volumes and - * remote block storage volumes on platform images. + * remote block storage volumes on platform images. * {@code NVME} - NVMe attached remote block + * storage device. * *

Before you change the boot volume attachment type, detach all block volumes and VNICs * except for the boot volume and the primary VNIC. diff --git a/bmc-core/src/main/java/com/oracle/bmc/core/model/VolumeAttachment.java b/bmc-core/src/main/java/com/oracle/bmc/core/model/VolumeAttachment.java index 7b8fdab416f..acb0f1e56ac 100644 --- a/bmc-core/src/main/java/com/oracle/bmc/core/model/VolumeAttachment.java +++ b/bmc-core/src/main/java/com/oracle/bmc/core/model/VolumeAttachment.java @@ -35,6 +35,9 @@ @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = EmulatedVolumeAttachment.class, name = "emulated"), + @com.fasterxml.jackson.annotation.JsonSubTypes.Type( + value = NvmeVolumeAttachment.class, + name = "nvme"), @com.fasterxml.jackson.annotation.JsonSubTypes.Type( value = ParavirtualizedVolumeAttachment.class, name = "paravirtualized") @@ -56,6 +59,7 @@ public class VolumeAttachment extends com.oracle.bmc.http.client.internal.Explic "timeCreated", "volumeId", "isPvEncryptionInTransitEnabled", + "isEncryptionInTransitEnabled", "isMultipath", "iscsiLoginState", "isVolumeCreatedDuringLaunch" @@ -73,6 +77,7 @@ protected VolumeAttachment( java.util.Date timeCreated, String volumeId, Boolean isPvEncryptionInTransitEnabled, + Boolean isEncryptionInTransitEnabled, Boolean isMultipath, IscsiLoginState iscsiLoginState, Boolean isVolumeCreatedDuringLaunch) { @@ -89,6 +94,7 @@ protected VolumeAttachment( this.timeCreated = timeCreated; this.volumeId = volumeId; this.isPvEncryptionInTransitEnabled = isPvEncryptionInTransitEnabled; + this.isEncryptionInTransitEnabled = isEncryptionInTransitEnabled; this.isMultipath = isMultipath; this.iscsiLoginState = iscsiLoginState; this.isVolumeCreatedDuringLaunch = isVolumeCreatedDuringLaunch; @@ -311,16 +317,12 @@ public String getVolumeId() { return volumeId; } - /** - * Whether in-transit encryption for the data volume's paravirtualized attachment is enabled or - * not. - */ + /** Deprecated. Use {@code isEncryptionInTransitEnabled} instead. */ @com.fasterxml.jackson.annotation.JsonProperty("isPvEncryptionInTransitEnabled") private final Boolean isPvEncryptionInTransitEnabled; /** - * Whether in-transit encryption for the data volume's paravirtualized attachment is enabled or - * not. + * Deprecated. Use {@code isEncryptionInTransitEnabled} instead. * * @return the value */ @@ -328,6 +330,19 @@ public Boolean getIsPvEncryptionInTransitEnabled() { return isPvEncryptionInTransitEnabled; } + /** Whether in-transit encryption for the data volume's attachment is enabled or not. */ + @com.fasterxml.jackson.annotation.JsonProperty("isEncryptionInTransitEnabled") + private final Boolean isEncryptionInTransitEnabled; + + /** + * Whether in-transit encryption for the data volume's attachment is enabled or not. + * + * @return the value + */ + public Boolean getIsEncryptionInTransitEnabled() { + return isEncryptionInTransitEnabled; + } + /** * Whether the Iscsi or Paravirtualized attachment is multipath or not, it is not applicable to * NVMe attachment. @@ -461,6 +476,8 @@ public String toString(boolean includeByteArrayContents) { sb.append(", volumeId=").append(String.valueOf(this.volumeId)); sb.append(", isPvEncryptionInTransitEnabled=") .append(String.valueOf(this.isPvEncryptionInTransitEnabled)); + sb.append(", isEncryptionInTransitEnabled=") + .append(String.valueOf(this.isEncryptionInTransitEnabled)); sb.append(", isMultipath=").append(String.valueOf(this.isMultipath)); sb.append(", iscsiLoginState=").append(String.valueOf(this.iscsiLoginState)); sb.append(", isVolumeCreatedDuringLaunch=") @@ -492,6 +509,8 @@ public boolean equals(Object o) { && java.util.Objects.equals(this.volumeId, other.volumeId) && java.util.Objects.equals( this.isPvEncryptionInTransitEnabled, other.isPvEncryptionInTransitEnabled) + && java.util.Objects.equals( + this.isEncryptionInTransitEnabled, other.isEncryptionInTransitEnabled) && java.util.Objects.equals(this.isMultipath, other.isMultipath) && java.util.Objects.equals(this.iscsiLoginState, other.iscsiLoginState) && java.util.Objects.equals( @@ -527,6 +546,11 @@ public int hashCode() { + (this.isPvEncryptionInTransitEnabled == null ? 43 : this.isPvEncryptionInTransitEnabled.hashCode()); + result = + (result * PRIME) + + (this.isEncryptionInTransitEnabled == null + ? 43 + : this.isEncryptionInTransitEnabled.hashCode()); result = (result * PRIME) + (this.isMultipath == null ? 43 : this.isMultipath.hashCode()); result = (result * PRIME) diff --git a/bmc-core/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-core/reflect-config.json b/bmc-core/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-core/reflect-config.json index 2b0d76f777d..ef0fbfbba83 100644 --- a/bmc-core/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-core/reflect-config.json +++ b/bmc-core/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-core/reflect-config.json @@ -677,6 +677,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.core.model.AttachNvmeVolumeDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.core.model.AttachNvmeVolumeDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.core.model.AttachParavirtualizedVolumeDetails", @@ -1024,6 +1038,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.core.model.BsNvmeAttachmentsConfig", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.core.model.BsNvmeAttachmentsConfig$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.core.model.BulkAddVirtualCircuitPublicPrefixesDetails", @@ -6630,6 +6658,20 @@ "allDeclaredFields": true, "allDeclaredMethods": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.core.model.InstanceConfigurationNvmeAttachVolumeDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.core.model.InstanceConfigurationNvmeAttachVolumeDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.core.model.InstanceConfigurationParavirtualizedAttachVolumeDetails", @@ -7696,6 +7738,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.core.model.LaunchAttachNvmeVolumeDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.core.model.LaunchAttachNvmeVolumeDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.core.model.LaunchAttachParavirtualizedVolumeDetails", @@ -8266,6 +8322,20 @@ "allDeclaredMethods": true, "allDeclaredConstructors": true }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.core.model.NvmeVolumeAttachment", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.core.model.NvmeVolumeAttachment$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, { "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, "name": "com.oracle.bmc.core.model.ParavirtualizedVolumeAttachment", diff --git a/bmc-costad/pom.xml b/bmc-costad/pom.xml index 1e37ad08c14..b4a6da1ae75 100644 --- a/bmc-costad/pom.xml +++ b/bmc-costad/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-costad @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-dashboardservice/pom.xml b/bmc-dashboardservice/pom.xml index 6e34b8b6d4e..384fbfea6cb 100644 --- a/bmc-dashboardservice/pom.xml +++ b/bmc-dashboardservice/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-dashboardservice @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-database/pom.xml b/bmc-database/pom.xml index 18961f0c390..e3b3b7ee552 100644 --- a/bmc-database/pom.xml +++ b/bmc-database/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml @@ -18,12 +18,12 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 com.oracle.oci.sdk oci-java-sdk-workrequests - 3.97.1 + 3.97.2 diff --git a/bmc-databasemanagement/pom.xml b/bmc-databasemanagement/pom.xml index 8ff66f131b2..b1ea3af6e6e 100644 --- a/bmc-databasemanagement/pom.xml +++ b/bmc-databasemanagement/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-databasemanagement @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-databasemigration/pom.xml b/bmc-databasemigration/pom.xml index 0a8dd248af8..2414900a5e9 100644 --- a/bmc-databasemigration/pom.xml +++ b/bmc-databasemigration/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-databasemigration @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-databasetools/pom.xml b/bmc-databasetools/pom.xml index 7401619249f..cbf58bdf35b 100644 --- a/bmc-databasetools/pom.xml +++ b/bmc-databasetools/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-databasetools @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-databasetoolsruntime/pom.xml b/bmc-databasetoolsruntime/pom.xml index 3c56b889bd1..ef304752336 100644 --- a/bmc-databasetoolsruntime/pom.xml +++ b/bmc-databasetoolsruntime/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-databasetoolsruntime @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-datacatalog/pom.xml b/bmc-datacatalog/pom.xml index ff7a18db08a..4aee4dadc5f 100644 --- a/bmc-datacatalog/pom.xml +++ b/bmc-datacatalog/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-datacatalog @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-datacc/pom.xml b/bmc-datacc/pom.xml index 65945896dfd..df0619d220a 100644 --- a/bmc-datacc/pom.xml +++ b/bmc-datacc/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-datacc @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-dataflow/pom.xml b/bmc-dataflow/pom.xml index c1c7f572c56..5eb77cf6769 100644 --- a/bmc-dataflow/pom.xml +++ b/bmc-dataflow/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-dataflow @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-dataintegration/pom.xml b/bmc-dataintegration/pom.xml index 3d59369d727..8d46fd399d8 100644 --- a/bmc-dataintegration/pom.xml +++ b/bmc-dataintegration/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-dataintegration @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-datalabelingservice/pom.xml b/bmc-datalabelingservice/pom.xml index 8597694a051..5e053cc8c66 100644 --- a/bmc-datalabelingservice/pom.xml +++ b/bmc-datalabelingservice/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-datalabelingservice @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-datalabelingservicedataplane/pom.xml b/bmc-datalabelingservicedataplane/pom.xml index 6017c17f3fd..49d78b954b3 100644 --- a/bmc-datalabelingservicedataplane/pom.xml +++ b/bmc-datalabelingservicedataplane/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-datalabelingservicedataplane @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-datasafe/pom.xml b/bmc-datasafe/pom.xml index 4cd1c458c0e..dd00fa18ce6 100644 --- a/bmc-datasafe/pom.xml +++ b/bmc-datasafe/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-datasafe @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-datascience/pom.xml b/bmc-datascience/pom.xml index 137ac4e5079..69e00cfca60 100644 --- a/bmc-datascience/pom.xml +++ b/bmc-datascience/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-datascience @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-dblm/pom.xml b/bmc-dblm/pom.xml index 5f75f08d873..d242a7e8927 100644 --- a/bmc-dblm/pom.xml +++ b/bmc-dblm/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-dblm @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-dbmulticloud/pom.xml b/bmc-dbmulticloud/pom.xml index 7232023d718..f6d9d025615 100644 --- a/bmc-dbmulticloud/pom.xml +++ b/bmc-dbmulticloud/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-dbmulticloud @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-ddfs/pom.xml b/bmc-ddfs/pom.xml index f4b05ca8093..16e56c83b50 100644 --- a/bmc-ddfs/pom.xml +++ b/bmc-ddfs/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-ddfs @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-delegateaccesscontrol/pom.xml b/bmc-delegateaccesscontrol/pom.xml index 306d669b69f..da19ba90490 100644 --- a/bmc-delegateaccesscontrol/pom.xml +++ b/bmc-delegateaccesscontrol/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-delegateaccesscontrol @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-demandsignal/pom.xml b/bmc-demandsignal/pom.xml index e0b0fc6487a..69a2e15a128 100644 --- a/bmc-demandsignal/pom.xml +++ b/bmc-demandsignal/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-demandsignal @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-desktops/pom.xml b/bmc-desktops/pom.xml index 5431010454a..91b2b061704 100644 --- a/bmc-desktops/pom.xml +++ b/bmc-desktops/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-desktops @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-devops/pom.xml b/bmc-devops/pom.xml index 4d4bdf9a1d4..5bc00cbe69a 100644 --- a/bmc-devops/pom.xml +++ b/bmc-devops/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-devops @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-dif/pom.xml b/bmc-dif/pom.xml index 686af713e65..de3e1859de8 100644 --- a/bmc-dif/pom.xml +++ b/bmc-dif/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-dif @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-disasterrecovery/pom.xml b/bmc-disasterrecovery/pom.xml index 797b537def0..2c13df21426 100644 --- a/bmc-disasterrecovery/pom.xml +++ b/bmc-disasterrecovery/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-disasterrecovery @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-distributeddatabase/pom.xml b/bmc-distributeddatabase/pom.xml index 7135cb14ba9..559decf747e 100644 --- a/bmc-distributeddatabase/pom.xml +++ b/bmc-distributeddatabase/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-distributeddatabase @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-dns/pom.xml b/bmc-dns/pom.xml index e9001be1f62..418419ac6cb 100644 --- a/bmc-dns/pom.xml +++ b/bmc-dns/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml @@ -18,12 +18,12 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 com.oracle.oci.sdk oci-java-sdk-workrequests - 3.97.1 + 3.97.2 diff --git a/bmc-email/pom.xml b/bmc-email/pom.xml index 90a52c47e38..6ec33e3d517 100644 --- a/bmc-email/pom.xml +++ b/bmc-email/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml @@ -18,7 +18,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 diff --git a/bmc-emaildataplane/pom.xml b/bmc-emaildataplane/pom.xml index 724b7e5475d..fa56bf88f62 100644 --- a/bmc-emaildataplane/pom.xml +++ b/bmc-emaildataplane/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-emaildataplane @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-emwarehouse/pom.xml b/bmc-emwarehouse/pom.xml index b286b636395..9998caaa862 100644 --- a/bmc-emwarehouse/pom.xml +++ b/bmc-emwarehouse/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-emwarehouse @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-encryption/pom.xml b/bmc-encryption/pom.xml index 5c37a5afb4a..613180cec62 100644 --- a/bmc-encryption/pom.xml +++ b/bmc-encryption/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml @@ -18,17 +18,17 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 com.oracle.oci.sdk oci-java-sdk-common-httpclient - 3.97.1 + 3.97.2 com.oracle.oci.sdk oci-java-sdk-keymanagement - 3.97.1 + 3.97.2 com.fasterxml.jackson.core @@ -48,7 +48,7 @@ com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey - 3.97.1 + 3.97.2 test diff --git a/bmc-enforcer-rules/pom.xml b/bmc-enforcer-rules/pom.xml index 57353fff6ff..291f805f46e 100644 --- a/bmc-enforcer-rules/pom.xml +++ b/bmc-enforcer-rules/pom.xml @@ -6,7 +6,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 oci-java-sdk-enforcer-rules diff --git a/bmc-events/pom.xml b/bmc-events/pom.xml index 6e729541c91..aaab49cd567 100644 --- a/bmc-events/pom.xml +++ b/bmc-events/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-events @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-examples/pom.xml b/bmc-examples/pom.xml index 84d1e13268e..5b49a5241ab 100644 --- a/bmc-examples/pom.xml +++ b/bmc-examples/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-examples @@ -71,14 +71,14 @@ com.oracle.oci.sdk oci-java-sdk-bom - 3.97.1 + 3.97.2 pom import com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey - 3.97.1 + 3.97.2 pom import @@ -825,5 +825,9 @@ com.oracle.oci.sdk oci-java-sdk-distributeddatabase + + com.oracle.oci.sdk + oci-java-sdk-ociproductcatalog + \ No newline at end of file diff --git a/bmc-filestorage/pom.xml b/bmc-filestorage/pom.xml index 1f617ef0116..26bfc0a2e7b 100644 --- a/bmc-filestorage/pom.xml +++ b/bmc-filestorage/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml @@ -18,7 +18,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 diff --git a/bmc-fleetappsmanagement/pom.xml b/bmc-fleetappsmanagement/pom.xml index 44bf2127bb1..f8db82a4df0 100644 --- a/bmc-fleetappsmanagement/pom.xml +++ b/bmc-fleetappsmanagement/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-fleetappsmanagement @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-fleetsoftwareupdate/pom.xml b/bmc-fleetsoftwareupdate/pom.xml index 89a8ea172db..d439faeec9c 100644 --- a/bmc-fleetsoftwareupdate/pom.xml +++ b/bmc-fleetsoftwareupdate/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-fleetsoftwareupdate @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-full/pom.xml b/bmc-full/pom.xml index 97327724e92..08776b01582 100644 --- a/bmc-full/pom.xml +++ b/bmc-full/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-full @@ -16,7 +16,7 @@ com.oracle.oci.sdk oci-java-sdk-bom - 3.97.1 + 3.97.2 pom import @@ -711,5 +711,9 @@ com.oracle.oci.sdk oci-java-sdk-distributeddatabase + + com.oracle.oci.sdk + oci-java-sdk-ociproductcatalog + \ No newline at end of file diff --git a/bmc-functions/pom.xml b/bmc-functions/pom.xml index 2dd35a62506..398fe7df273 100644 --- a/bmc-functions/pom.xml +++ b/bmc-functions/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-functions @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-fusionapps/pom.xml b/bmc-fusionapps/pom.xml index 510cd707cec..0b303ce7927 100644 --- a/bmc-fusionapps/pom.xml +++ b/bmc-fusionapps/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-fusionapps @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-gdp/pom.xml b/bmc-gdp/pom.xml index 06c3b656120..4ae0592c361 100644 --- a/bmc-gdp/pom.xml +++ b/bmc-gdp/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-gdp @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-generativeai/pom.xml b/bmc-generativeai/pom.xml index 628cb410323..70166455f0b 100644 --- a/bmc-generativeai/pom.xml +++ b/bmc-generativeai/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-generativeai @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/CreateHostedApplicationDetails.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/CreateHostedApplicationDetails.java index 3df98e34034..6943f985567 100644 --- a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/CreateHostedApplicationDetails.java +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/CreateHostedApplicationDetails.java @@ -25,6 +25,7 @@ public final class CreateHostedApplicationDetails @Deprecated @java.beans.ConstructorProperties({ "inboundAuthConfig", + "publicAccessPathPatterns", "displayName", "compartmentId", "description", @@ -37,6 +38,7 @@ public final class CreateHostedApplicationDetails }) public CreateHostedApplicationDetails( InboundAuthConfig inboundAuthConfig, + java.util.List publicAccessPathPatterns, String displayName, String compartmentId, String description, @@ -48,6 +50,7 @@ public CreateHostedApplicationDetails( java.util.Map> definedTags) { super(); this.inboundAuthConfig = inboundAuthConfig; + this.publicAccessPathPatterns = publicAccessPathPatterns; this.displayName = displayName; this.compartmentId = compartmentId; this.description = description; @@ -70,6 +73,27 @@ public Builder inboundAuthConfig(InboundAuthConfig inboundAuthConfig) { this.__explicitlySet__.add("inboundAuthConfig"); return this; } + /** + * A list of hosted application path patterns that can be accessed without inbound + * authentication. Values can be exact paths such as {@code /health} or {@code /callback}, + * or wildcard paths such as {@code /assets/*} or {@code /public/*}. + */ + @com.fasterxml.jackson.annotation.JsonProperty("publicAccessPathPatterns") + private java.util.List publicAccessPathPatterns; + + /** + * A list of hosted application path patterns that can be accessed without inbound + * authentication. Values can be exact paths such as {@code /health} or {@code /callback}, + * or wildcard paths such as {@code /assets/*} or {@code /public/*}. + * + * @param publicAccessPathPatterns the value to set + * @return this builder + */ + public Builder publicAccessPathPatterns(java.util.List publicAccessPathPatterns) { + this.publicAccessPathPatterns = publicAccessPathPatterns; + this.__explicitlySet__.add("publicAccessPathPatterns"); + return this; + } /** * The user-friendly display name for the Hosted Application. Does not need to be unique and * can be updated after creation. @@ -231,6 +255,7 @@ public CreateHostedApplicationDetails build() { CreateHostedApplicationDetails model = new CreateHostedApplicationDetails( this.inboundAuthConfig, + this.publicAccessPathPatterns, this.displayName, this.compartmentId, this.description, @@ -251,6 +276,9 @@ public Builder copy(CreateHostedApplicationDetails model) { if (model.wasPropertyExplicitlySet("inboundAuthConfig")) { this.inboundAuthConfig(model.getInboundAuthConfig()); } + if (model.wasPropertyExplicitlySet("publicAccessPathPatterns")) { + this.publicAccessPathPatterns(model.getPublicAccessPathPatterns()); + } if (model.wasPropertyExplicitlySet("displayName")) { this.displayName(model.getDisplayName()); } @@ -298,6 +326,25 @@ public InboundAuthConfig getInboundAuthConfig() { return inboundAuthConfig; } + /** + * A list of hosted application path patterns that can be accessed without inbound + * authentication. Values can be exact paths such as {@code /health} or {@code /callback}, or + * wildcard paths such as {@code /assets/*} or {@code /public/*}. + */ + @com.fasterxml.jackson.annotation.JsonProperty("publicAccessPathPatterns") + private final java.util.List publicAccessPathPatterns; + + /** + * A list of hosted application path patterns that can be accessed without inbound + * authentication. Values can be exact paths such as {@code /health} or {@code /callback}, or + * wildcard paths such as {@code /assets/*} or {@code /public/*}. + * + * @return the value + */ + public java.util.List getPublicAccessPathPatterns() { + return publicAccessPathPatterns; + } + /** * The user-friendly display name for the Hosted Application. Does not need to be unique and can * be updated after creation. @@ -447,6 +494,8 @@ public String toString(boolean includeByteArrayContents) { sb.append("CreateHostedApplicationDetails("); sb.append("super=").append(super.toString()); sb.append("inboundAuthConfig=").append(String.valueOf(this.inboundAuthConfig)); + sb.append(", publicAccessPathPatterns=") + .append(String.valueOf(this.publicAccessPathPatterns)); sb.append(", displayName=").append(String.valueOf(this.displayName)); sb.append(", compartmentId=").append(String.valueOf(this.compartmentId)); sb.append(", description=").append(String.valueOf(this.description)); @@ -471,6 +520,8 @@ public boolean equals(Object o) { CreateHostedApplicationDetails other = (CreateHostedApplicationDetails) o; return java.util.Objects.equals(this.inboundAuthConfig, other.inboundAuthConfig) + && java.util.Objects.equals( + this.publicAccessPathPatterns, other.publicAccessPathPatterns) && java.util.Objects.equals(this.displayName, other.displayName) && java.util.Objects.equals(this.compartmentId, other.compartmentId) && java.util.Objects.equals(this.description, other.description) @@ -490,6 +541,11 @@ public int hashCode() { result = (result * PRIME) + (this.inboundAuthConfig == null ? 43 : this.inboundAuthConfig.hashCode()); + result = + (result * PRIME) + + (this.publicAccessPathPatterns == null + ? 43 + : this.publicAccessPathPatterns.hashCode()); result = (result * PRIME) + (this.displayName == null ? 43 : this.displayName.hashCode()); result = (result * PRIME) diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/HostedApplication.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/HostedApplication.java index aa52a9f3b96..0fc1dcdac35 100644 --- a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/HostedApplication.java +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/HostedApplication.java @@ -33,6 +33,8 @@ public final class HostedApplication @Deprecated @java.beans.ConstructorProperties({ "inboundAuthConfig", + "applicationEndpoint", + "publicAccessPathPatterns", "id", "displayName", "description", @@ -51,6 +53,8 @@ public final class HostedApplication }) public HostedApplication( InboundAuthConfig inboundAuthConfig, + String applicationEndpoint, + java.util.List publicAccessPathPatterns, String id, String displayName, String description, @@ -68,6 +72,8 @@ public HostedApplication( java.util.Map> systemTags) { super(); this.inboundAuthConfig = inboundAuthConfig; + this.applicationEndpoint = applicationEndpoint; + this.publicAccessPathPatterns = publicAccessPathPatterns; this.id = id; this.displayName = displayName; this.description = description; @@ -96,6 +102,48 @@ public Builder inboundAuthConfig(InboundAuthConfig inboundAuthConfig) { this.__explicitlySet__.add("inboundAuthConfig"); return this; } + /** + * Fully qualified domain name for invoking the hosted application over the dual-stack + * endpoint. This value is output-only and is present only after the service has generated + * an application DNS label. + */ + @com.fasterxml.jackson.annotation.JsonProperty("applicationEndpoint") + private String applicationEndpoint; + + /** + * Fully qualified domain name for invoking the hosted application over the dual-stack + * endpoint. This value is output-only and is present only after the service has generated + * an application DNS label. + * + * @param applicationEndpoint the value to set + * @return this builder + */ + public Builder applicationEndpoint(String applicationEndpoint) { + this.applicationEndpoint = applicationEndpoint; + this.__explicitlySet__.add("applicationEndpoint"); + return this; + } + /** + * A list of hosted application path patterns that can be accessed without inbound + * authentication. Values can be exact paths such as {@code /health} or {@code /callback}, + * or wildcard paths such as {@code /assets/*} or {@code /public/*}. + */ + @com.fasterxml.jackson.annotation.JsonProperty("publicAccessPathPatterns") + private java.util.List publicAccessPathPatterns; + + /** + * A list of hosted application path patterns that can be accessed without inbound + * authentication. Values can be exact paths such as {@code /health} or {@code /callback}, + * or wildcard paths such as {@code /assets/*} or {@code /public/*}. + * + * @param publicAccessPathPatterns the value to set + * @return this builder + */ + public Builder publicAccessPathPatterns(java.util.List publicAccessPathPatterns) { + this.publicAccessPathPatterns = publicAccessPathPatterns; + this.__explicitlySet__.add("publicAccessPathPatterns"); + return this; + } /** * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the * hosted application. @@ -361,6 +409,8 @@ public HostedApplication build() { HostedApplication model = new HostedApplication( this.inboundAuthConfig, + this.applicationEndpoint, + this.publicAccessPathPatterns, this.id, this.displayName, this.description, @@ -387,6 +437,12 @@ public Builder copy(HostedApplication model) { if (model.wasPropertyExplicitlySet("inboundAuthConfig")) { this.inboundAuthConfig(model.getInboundAuthConfig()); } + if (model.wasPropertyExplicitlySet("applicationEndpoint")) { + this.applicationEndpoint(model.getApplicationEndpoint()); + } + if (model.wasPropertyExplicitlySet("publicAccessPathPatterns")) { + this.publicAccessPathPatterns(model.getPublicAccessPathPatterns()); + } if (model.wasPropertyExplicitlySet("id")) { this.id(model.getId()); } @@ -452,6 +508,44 @@ public InboundAuthConfig getInboundAuthConfig() { return inboundAuthConfig; } + /** + * Fully qualified domain name for invoking the hosted application over the dual-stack endpoint. + * This value is output-only and is present only after the service has generated an application + * DNS label. + */ + @com.fasterxml.jackson.annotation.JsonProperty("applicationEndpoint") + private final String applicationEndpoint; + + /** + * Fully qualified domain name for invoking the hosted application over the dual-stack endpoint. + * This value is output-only and is present only after the service has generated an application + * DNS label. + * + * @return the value + */ + public String getApplicationEndpoint() { + return applicationEndpoint; + } + + /** + * A list of hosted application path patterns that can be accessed without inbound + * authentication. Values can be exact paths such as {@code /health} or {@code /callback}, or + * wildcard paths such as {@code /assets/*} or {@code /public/*}. + */ + @com.fasterxml.jackson.annotation.JsonProperty("publicAccessPathPatterns") + private final java.util.List publicAccessPathPatterns; + + /** + * A list of hosted application path patterns that can be accessed without inbound + * authentication. Values can be exact paths such as {@code /health} or {@code /callback}, or + * wildcard paths such as {@code /assets/*} or {@code /public/*}. + * + * @return the value + */ + public java.util.List getPublicAccessPathPatterns() { + return publicAccessPathPatterns; + } + /** * The [OCID](https://docs.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the * hosted application. @@ -739,6 +833,9 @@ public String toString(boolean includeByteArrayContents) { sb.append("HostedApplication("); sb.append("super=").append(super.toString()); sb.append("inboundAuthConfig=").append(String.valueOf(this.inboundAuthConfig)); + sb.append(", applicationEndpoint=").append(String.valueOf(this.applicationEndpoint)); + sb.append(", publicAccessPathPatterns=") + .append(String.valueOf(this.publicAccessPathPatterns)); sb.append(", id=").append(String.valueOf(this.id)); sb.append(", displayName=").append(String.valueOf(this.displayName)); sb.append(", description=").append(String.valueOf(this.description)); @@ -769,6 +866,9 @@ public boolean equals(Object o) { HostedApplication other = (HostedApplication) o; return java.util.Objects.equals(this.inboundAuthConfig, other.inboundAuthConfig) + && java.util.Objects.equals(this.applicationEndpoint, other.applicationEndpoint) + && java.util.Objects.equals( + this.publicAccessPathPatterns, other.publicAccessPathPatterns) && java.util.Objects.equals(this.id, other.id) && java.util.Objects.equals(this.displayName, other.displayName) && java.util.Objects.equals(this.description, other.description) @@ -794,6 +894,16 @@ public int hashCode() { result = (result * PRIME) + (this.inboundAuthConfig == null ? 43 : this.inboundAuthConfig.hashCode()); + result = + (result * PRIME) + + (this.applicationEndpoint == null + ? 43 + : this.applicationEndpoint.hashCode()); + result = + (result * PRIME) + + (this.publicAccessPathPatterns == null + ? 43 + : this.publicAccessPathPatterns.hashCode()); result = (result * PRIME) + (this.id == null ? 43 : this.id.hashCode()); result = (result * PRIME) + (this.displayName == null ? 43 : this.displayName.hashCode()); result = (result * PRIME) + (this.description == null ? 43 : this.description.hashCode()); diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/IdcsAuthConfig.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/IdcsAuthConfig.java index fc47bfaa27a..a065d7e2af8 100644 --- a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/IdcsAuthConfig.java +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/IdcsAuthConfig.java @@ -6,8 +6,10 @@ /** * Oracle Identity Cloud Service (IDCS) configuration used when inboundAuthConfigType is set to - * IDCS_AUTH_CONFIG. This object must be specified when inboundAuthConfigType is IDCS_AUTH_CONFIG. - *
+ * IDCS_AUTH_CONFIG or IDCS_SESSION_AUTH_CONFIG. This object must be specified when + * inboundAuthConfigType is IDCS_AUTH_CONFIG or IDCS_SESSION_AUTH_CONFIG. When inboundAuthConfigType + * is IDCS_SESSION_AUTH_CONFIG, this configuration supports OAuth 2.1 Authorization Code flow with + * PKCE.
* 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 @@ -24,12 +26,25 @@ public final class IdcsAuthConfig extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { @Deprecated - @java.beans.ConstructorProperties({"domainUrl", "scope", "audience"}) - public IdcsAuthConfig(String domainUrl, String scope, String audience) { + @java.beans.ConstructorProperties({ + "domainUrl", + "scope", + "audience", + "clientId", + "clientSecretVaultId" + }) + public IdcsAuthConfig( + String domainUrl, + String scope, + String audience, + String clientId, + String clientSecretVaultId) { super(); this.domainUrl = domainUrl; this.scope = scope; this.audience = audience; + this.clientId = clientId; + this.clientSecretVaultId = clientSecretVaultId; } @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") @@ -79,12 +94,56 @@ public Builder audience(String audience) { this.__explicitlySet__.add("audience"); return this; } + /** + * Optional OAuth client ID for the IDCS application. Applicable only when + * inboundAuthConfigType is IDCS_SESSION_AUTH_CONFIG. + */ + @com.fasterxml.jackson.annotation.JsonProperty("clientId") + private String clientId; + + /** + * Optional OAuth client ID for the IDCS application. Applicable only when + * inboundAuthConfigType is IDCS_SESSION_AUTH_CONFIG. + * + * @param clientId the value to set + * @return this builder + */ + public Builder clientId(String clientId) { + this.clientId = clientId; + this.__explicitlySet__.add("clientId"); + return this; + } + /** + * Optional OCI Vault secret OCID containing the OAuth client secret. Applicable only when + * inboundAuthConfigType is IDCS_SESSION_AUTH_CONFIG. + */ + @com.fasterxml.jackson.annotation.JsonProperty("clientSecretVaultId") + private String clientSecretVaultId; + + /** + * Optional OCI Vault secret OCID containing the OAuth client secret. Applicable only when + * inboundAuthConfigType is IDCS_SESSION_AUTH_CONFIG. + * + * @param clientSecretVaultId the value to set + * @return this builder + */ + public Builder clientSecretVaultId(String clientSecretVaultId) { + this.clientSecretVaultId = clientSecretVaultId; + this.__explicitlySet__.add("clientSecretVaultId"); + return this; + } @com.fasterxml.jackson.annotation.JsonIgnore private final java.util.Set __explicitlySet__ = new java.util.HashSet(); public IdcsAuthConfig build() { - IdcsAuthConfig model = new IdcsAuthConfig(this.domainUrl, this.scope, this.audience); + IdcsAuthConfig model = + new IdcsAuthConfig( + this.domainUrl, + this.scope, + this.audience, + this.clientId, + this.clientSecretVaultId); for (String explicitlySetProperty : this.__explicitlySet__) { model.markPropertyAsExplicitlySet(explicitlySetProperty); } @@ -102,6 +161,12 @@ public Builder copy(IdcsAuthConfig model) { if (model.wasPropertyExplicitlySet("audience")) { this.audience(model.getAudience()); } + if (model.wasPropertyExplicitlySet("clientId")) { + this.clientId(model.getClientId()); + } + if (model.wasPropertyExplicitlySet("clientSecretVaultId")) { + this.clientSecretVaultId(model.getClientSecretVaultId()); + } return this; } } @@ -154,6 +219,40 @@ public String getAudience() { return audience; } + /** + * Optional OAuth client ID for the IDCS application. Applicable only when inboundAuthConfigType + * is IDCS_SESSION_AUTH_CONFIG. + */ + @com.fasterxml.jackson.annotation.JsonProperty("clientId") + private final String clientId; + + /** + * Optional OAuth client ID for the IDCS application. Applicable only when inboundAuthConfigType + * is IDCS_SESSION_AUTH_CONFIG. + * + * @return the value + */ + public String getClientId() { + return clientId; + } + + /** + * Optional OCI Vault secret OCID containing the OAuth client secret. Applicable only when + * inboundAuthConfigType is IDCS_SESSION_AUTH_CONFIG. + */ + @com.fasterxml.jackson.annotation.JsonProperty("clientSecretVaultId") + private final String clientSecretVaultId; + + /** + * Optional OCI Vault secret OCID containing the OAuth client secret. Applicable only when + * inboundAuthConfigType is IDCS_SESSION_AUTH_CONFIG. + * + * @return the value + */ + public String getClientSecretVaultId() { + return clientSecretVaultId; + } + @Override public String toString() { return this.toString(true); @@ -172,6 +271,8 @@ public String toString(boolean includeByteArrayContents) { sb.append("domainUrl=").append(String.valueOf(this.domainUrl)); sb.append(", scope=").append(String.valueOf(this.scope)); sb.append(", audience=").append(String.valueOf(this.audience)); + sb.append(", clientId=").append(String.valueOf(this.clientId)); + sb.append(", clientSecretVaultId=").append(String.valueOf(this.clientSecretVaultId)); sb.append(")"); return sb.toString(); } @@ -189,6 +290,8 @@ public boolean equals(Object o) { return java.util.Objects.equals(this.domainUrl, other.domainUrl) && java.util.Objects.equals(this.scope, other.scope) && java.util.Objects.equals(this.audience, other.audience) + && java.util.Objects.equals(this.clientId, other.clientId) + && java.util.Objects.equals(this.clientSecretVaultId, other.clientSecretVaultId) && super.equals(other); } @@ -199,6 +302,12 @@ public int hashCode() { result = (result * PRIME) + (this.domainUrl == null ? 43 : this.domainUrl.hashCode()); result = (result * PRIME) + (this.scope == null ? 43 : this.scope.hashCode()); result = (result * PRIME) + (this.audience == null ? 43 : this.audience.hashCode()); + result = (result * PRIME) + (this.clientId == null ? 43 : this.clientId.hashCode()); + result = + (result * PRIME) + + (this.clientSecretVaultId == null + ? 43 + : this.clientSecretVaultId.hashCode()); result = (result * PRIME) + super.hashCode(); return result; } diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/InboundAuthConfig.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/InboundAuthConfig.java index d4ae0d4b772..2641bce8af5 100644 --- a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/InboundAuthConfig.java +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/InboundAuthConfig.java @@ -95,6 +95,7 @@ public Builder toBuilder() { /** The inbound authentication configuration type for the Hosted Application. */ public enum InboundAuthConfigType implements com.oracle.bmc.http.internal.BmcEnum { IdcsAuthConfig("IDCS_AUTH_CONFIG"), + IdcsSessionAuthConfig("IDCS_SESSION_AUTH_CONFIG"), /** * This value is used if a service returns a value for this enum that is not recognized by diff --git a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/UpdateHostedApplicationDetails.java b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/UpdateHostedApplicationDetails.java index c2fbca78afa..b2bb89a18f8 100644 --- a/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/UpdateHostedApplicationDetails.java +++ b/bmc-generativeai/src/main/java/com/oracle/bmc/generativeai/model/UpdateHostedApplicationDetails.java @@ -25,6 +25,7 @@ public final class UpdateHostedApplicationDetails @Deprecated @java.beans.ConstructorProperties({ "inboundAuthConfig", + "publicAccessPathPatterns", "displayName", "description", "scalingConfig", @@ -34,6 +35,7 @@ public final class UpdateHostedApplicationDetails }) public UpdateHostedApplicationDetails( InboundAuthConfig inboundAuthConfig, + java.util.List publicAccessPathPatterns, String displayName, String description, ScalingConfig scalingConfig, @@ -42,6 +44,7 @@ public UpdateHostedApplicationDetails( java.util.Map> definedTags) { super(); this.inboundAuthConfig = inboundAuthConfig; + this.publicAccessPathPatterns = publicAccessPathPatterns; this.displayName = displayName; this.description = description; this.scalingConfig = scalingConfig; @@ -61,6 +64,27 @@ public Builder inboundAuthConfig(InboundAuthConfig inboundAuthConfig) { this.__explicitlySet__.add("inboundAuthConfig"); return this; } + /** + * A list of hosted application path patterns that can be accessed without inbound + * authentication. Values can be exact paths such as {@code /health} or {@code /callback}, + * or wildcard paths such as {@code /assets/*} or {@code /public/*}. + */ + @com.fasterxml.jackson.annotation.JsonProperty("publicAccessPathPatterns") + private java.util.List publicAccessPathPatterns; + + /** + * A list of hosted application path patterns that can be accessed without inbound + * authentication. Values can be exact paths such as {@code /health} or {@code /callback}, + * or wildcard paths such as {@code /assets/*} or {@code /public/*}. + * + * @param publicAccessPathPatterns the value to set + * @return this builder + */ + public Builder publicAccessPathPatterns(java.util.List publicAccessPathPatterns) { + this.publicAccessPathPatterns = publicAccessPathPatterns; + this.__explicitlySet__.add("publicAccessPathPatterns"); + return this; + } /** A user-friendly name. Does not have to be unique, and it's changeable. */ @com.fasterxml.jackson.annotation.JsonProperty("displayName") private String displayName; @@ -179,6 +203,7 @@ public UpdateHostedApplicationDetails build() { UpdateHostedApplicationDetails model = new UpdateHostedApplicationDetails( this.inboundAuthConfig, + this.publicAccessPathPatterns, this.displayName, this.description, this.scalingConfig, @@ -196,6 +221,9 @@ public Builder copy(UpdateHostedApplicationDetails model) { if (model.wasPropertyExplicitlySet("inboundAuthConfig")) { this.inboundAuthConfig(model.getInboundAuthConfig()); } + if (model.wasPropertyExplicitlySet("publicAccessPathPatterns")) { + this.publicAccessPathPatterns(model.getPublicAccessPathPatterns()); + } if (model.wasPropertyExplicitlySet("displayName")) { this.displayName(model.getDisplayName()); } @@ -234,6 +262,25 @@ public InboundAuthConfig getInboundAuthConfig() { return inboundAuthConfig; } + /** + * A list of hosted application path patterns that can be accessed without inbound + * authentication. Values can be exact paths such as {@code /health} or {@code /callback}, or + * wildcard paths such as {@code /assets/*} or {@code /public/*}. + */ + @com.fasterxml.jackson.annotation.JsonProperty("publicAccessPathPatterns") + private final java.util.List publicAccessPathPatterns; + + /** + * A list of hosted application path patterns that can be accessed without inbound + * authentication. Values can be exact paths such as {@code /health} or {@code /callback}, or + * wildcard paths such as {@code /assets/*} or {@code /public/*}. + * + * @return the value + */ + public java.util.List getPublicAccessPathPatterns() { + return publicAccessPathPatterns; + } + /** A user-friendly name. Does not have to be unique, and it's changeable. */ @com.fasterxml.jackson.annotation.JsonProperty("displayName") private final String displayName; @@ -346,6 +393,8 @@ public String toString(boolean includeByteArrayContents) { sb.append("UpdateHostedApplicationDetails("); sb.append("super=").append(super.toString()); sb.append("inboundAuthConfig=").append(String.valueOf(this.inboundAuthConfig)); + sb.append(", publicAccessPathPatterns=") + .append(String.valueOf(this.publicAccessPathPatterns)); sb.append(", displayName=").append(String.valueOf(this.displayName)); sb.append(", description=").append(String.valueOf(this.description)); sb.append(", scalingConfig=").append(String.valueOf(this.scalingConfig)); @@ -367,6 +416,8 @@ public boolean equals(Object o) { UpdateHostedApplicationDetails other = (UpdateHostedApplicationDetails) o; return java.util.Objects.equals(this.inboundAuthConfig, other.inboundAuthConfig) + && java.util.Objects.equals( + this.publicAccessPathPatterns, other.publicAccessPathPatterns) && java.util.Objects.equals(this.displayName, other.displayName) && java.util.Objects.equals(this.description, other.description) && java.util.Objects.equals(this.scalingConfig, other.scalingConfig) @@ -383,6 +434,11 @@ public int hashCode() { result = (result * PRIME) + (this.inboundAuthConfig == null ? 43 : this.inboundAuthConfig.hashCode()); + result = + (result * PRIME) + + (this.publicAccessPathPatterns == null + ? 43 + : this.publicAccessPathPatterns.hashCode()); result = (result * PRIME) + (this.displayName == null ? 43 : this.displayName.hashCode()); result = (result * PRIME) + (this.description == null ? 43 : this.description.hashCode()); result = diff --git a/bmc-generativeaiagent/pom.xml b/bmc-generativeaiagent/pom.xml index 54a794eaa8e..a75210e99a5 100644 --- a/bmc-generativeaiagent/pom.xml +++ b/bmc-generativeaiagent/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-generativeaiagent @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-generativeaiagentruntime/pom.xml b/bmc-generativeaiagentruntime/pom.xml index feeefc1d0e8..275a15c794d 100644 --- a/bmc-generativeaiagentruntime/pom.xml +++ b/bmc-generativeaiagentruntime/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-generativeaiagentruntime @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-generativeaidata/pom.xml b/bmc-generativeaidata/pom.xml index 90a0a93a878..9a39024e265 100644 --- a/bmc-generativeaidata/pom.xml +++ b/bmc-generativeaidata/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-generativeaidata @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-generativeaiinference/pom.xml b/bmc-generativeaiinference/pom.xml index 197a7992231..2781c044399 100644 --- a/bmc-generativeaiinference/pom.xml +++ b/bmc-generativeaiinference/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-generativeaiinference @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-genericartifactscontent/pom.xml b/bmc-genericartifactscontent/pom.xml index 70381897995..172629a564b 100644 --- a/bmc-genericartifactscontent/pom.xml +++ b/bmc-genericartifactscontent/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-genericartifactscontent @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-goldengate/pom.xml b/bmc-goldengate/pom.xml index 6fb53e0c7c9..066c0591c51 100644 --- a/bmc-goldengate/pom.xml +++ b/bmc-goldengate/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-goldengate @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-governancerulescontrolplane/pom.xml b/bmc-governancerulescontrolplane/pom.xml index 0e872da9a9f..c2cb760bd90 100644 --- a/bmc-governancerulescontrolplane/pom.xml +++ b/bmc-governancerulescontrolplane/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-governancerulescontrolplane @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-healthchecks/pom.xml b/bmc-healthchecks/pom.xml index dd9163e6885..add451b5813 100644 --- a/bmc-healthchecks/pom.xml +++ b/bmc-healthchecks/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-healthchecks @@ -16,7 +16,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-identity/pom.xml b/bmc-identity/pom.xml index d9e553bfd78..31b1c25fa64 100644 --- a/bmc-identity/pom.xml +++ b/bmc-identity/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml @@ -18,7 +18,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 diff --git a/bmc-identitydataplane/pom.xml b/bmc-identitydataplane/pom.xml index 51c06f40f2f..9d422ab8153 100644 --- a/bmc-identitydataplane/pom.xml +++ b/bmc-identitydataplane/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-identitydataplane @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-identitydomains/pom.xml b/bmc-identitydomains/pom.xml index a31f3427a20..ecbca34d1fa 100644 --- a/bmc-identitydomains/pom.xml +++ b/bmc-identitydomains/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-identitydomains @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-integration/pom.xml b/bmc-integration/pom.xml index bf3e5e0dd48..72fd2ced941 100644 --- a/bmc-integration/pom.xml +++ b/bmc-integration/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-integration @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-iot/pom.xml b/bmc-iot/pom.xml index cb565fbb5c6..afc36ce8854 100644 --- a/bmc-iot/pom.xml +++ b/bmc-iot/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-iot @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-jms/pom.xml b/bmc-jms/pom.xml index f8b0bb8e9a1..a9c41fb7805 100644 --- a/bmc-jms/pom.xml +++ b/bmc-jms/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-jms @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-jmsjavadownloads/pom.xml b/bmc-jmsjavadownloads/pom.xml index 3fc6cadc708..99f6d34f94d 100644 --- a/bmc-jmsjavadownloads/pom.xml +++ b/bmc-jmsjavadownloads/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-jmsjavadownloads @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-jmsutils/pom.xml b/bmc-jmsutils/pom.xml index c8ebfd976b6..26ae6c1e038 100644 --- a/bmc-jmsutils/pom.xml +++ b/bmc-jmsutils/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-jmsutils @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-keymanagement/pom.xml b/bmc-keymanagement/pom.xml index 7e264f8a358..9c455118d6e 100644 --- a/bmc-keymanagement/pom.xml +++ b/bmc-keymanagement/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-keymanagement @@ -16,7 +16,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-licensemanager/pom.xml b/bmc-licensemanager/pom.xml index 2f98fb6dd6b..69ade23531e 100644 --- a/bmc-licensemanager/pom.xml +++ b/bmc-licensemanager/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-licensemanager @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-limits/pom.xml b/bmc-limits/pom.xml index 761a8d4aaa0..37295ae5c1d 100644 --- a/bmc-limits/pom.xml +++ b/bmc-limits/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-limits @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-limitsincrease/pom.xml b/bmc-limitsincrease/pom.xml index 46a18a9b58a..d6cad180621 100644 --- a/bmc-limitsincrease/pom.xml +++ b/bmc-limitsincrease/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-limitsincrease @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-loadbalancer/pom.xml b/bmc-loadbalancer/pom.xml index 1d524e78267..46d5755ce12 100644 --- a/bmc-loadbalancer/pom.xml +++ b/bmc-loadbalancer/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml @@ -18,7 +18,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 diff --git a/bmc-lockbox/pom.xml b/bmc-lockbox/pom.xml index 98dc2889c84..6fc26238f69 100644 --- a/bmc-lockbox/pom.xml +++ b/bmc-lockbox/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-lockbox @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-loganalytics/pom.xml b/bmc-loganalytics/pom.xml index d4c06a4a256..3f0c219d43f 100644 --- a/bmc-loganalytics/pom.xml +++ b/bmc-loganalytics/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-loganalytics @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-logging/pom.xml b/bmc-logging/pom.xml index 965ca62d88e..deee1cbe246 100644 --- a/bmc-logging/pom.xml +++ b/bmc-logging/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-logging @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-loggingingestion/pom.xml b/bmc-loggingingestion/pom.xml index 28b434e2c8f..8ee21325f8c 100644 --- a/bmc-loggingingestion/pom.xml +++ b/bmc-loggingingestion/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-loggingingestion @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-loggingsearch/pom.xml b/bmc-loggingsearch/pom.xml index f3e30b20756..e747e2e1632 100644 --- a/bmc-loggingsearch/pom.xml +++ b/bmc-loggingsearch/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-loggingsearch @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-lustrefilestorage/pom.xml b/bmc-lustrefilestorage/pom.xml index 534c068359b..86fccd066b8 100644 --- a/bmc-lustrefilestorage/pom.xml +++ b/bmc-lustrefilestorage/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-lustrefilestorage @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-managedkafka/pom.xml b/bmc-managedkafka/pom.xml index a9aa65b57b8..48a7045fad4 100644 --- a/bmc-managedkafka/pom.xml +++ b/bmc-managedkafka/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-managedkafka @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-managementagent/pom.xml b/bmc-managementagent/pom.xml index 7544b3542eb..1b993bb2f21 100644 --- a/bmc-managementagent/pom.xml +++ b/bmc-managementagent/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-managementagent @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-managementdashboard/pom.xml b/bmc-managementdashboard/pom.xml index 6bc5f8eb602..fad1d9e1ec0 100644 --- a/bmc-managementdashboard/pom.xml +++ b/bmc-managementdashboard/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-managementdashboard @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-marketplace/pom.xml b/bmc-marketplace/pom.xml index 1fdf3dc350f..c45c8befa14 100644 --- a/bmc-marketplace/pom.xml +++ b/bmc-marketplace/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-marketplace @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-marketplaceprivateoffer/pom.xml b/bmc-marketplaceprivateoffer/pom.xml index e0b27022545..65a57b5b3da 100644 --- a/bmc-marketplaceprivateoffer/pom.xml +++ b/bmc-marketplaceprivateoffer/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-marketplaceprivateoffer @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-marketplacepublisher/pom.xml b/bmc-marketplacepublisher/pom.xml index f8fda0dc231..cec8fa8a094 100644 --- a/bmc-marketplacepublisher/pom.xml +++ b/bmc-marketplacepublisher/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-marketplacepublisher @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-mediaservices/pom.xml b/bmc-mediaservices/pom.xml index 567ad610200..f0ea1dc6177 100644 --- a/bmc-mediaservices/pom.xml +++ b/bmc-mediaservices/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-mediaservices @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-mngdmac/pom.xml b/bmc-mngdmac/pom.xml index c60a1be1b7f..c852c001ac7 100644 --- a/bmc-mngdmac/pom.xml +++ b/bmc-mngdmac/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-mngdmac @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-modeldeployment/pom.xml b/bmc-modeldeployment/pom.xml index 920626a59be..5e75813b6dc 100644 --- a/bmc-modeldeployment/pom.xml +++ b/bmc-modeldeployment/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-modeldeployment @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-monitoring/pom.xml b/bmc-monitoring/pom.xml index 0a6a70d1974..07ef90bbc05 100644 --- a/bmc-monitoring/pom.xml +++ b/bmc-monitoring/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-monitoring @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-multicloud/pom.xml b/bmc-multicloud/pom.xml index 4a7df2e2b60..bb87da8909d 100644 --- a/bmc-multicloud/pom.xml +++ b/bmc-multicloud/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-multicloud @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-mysql/pom.xml b/bmc-mysql/pom.xml index a08a0e9c2cb..f89f1267828 100644 --- a/bmc-mysql/pom.xml +++ b/bmc-mysql/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-mysql @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-networkfirewall/pom.xml b/bmc-networkfirewall/pom.xml index eec8ed6d843..956b139b119 100644 --- a/bmc-networkfirewall/pom.xml +++ b/bmc-networkfirewall/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-networkfirewall @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-networkloadbalancer/pom.xml b/bmc-networkloadbalancer/pom.xml index f0458955799..a82f1b1f2d5 100644 --- a/bmc-networkloadbalancer/pom.xml +++ b/bmc-networkloadbalancer/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-networkloadbalancer @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-nosql/pom.xml b/bmc-nosql/pom.xml index fbec505b754..3993aa1a07c 100644 --- a/bmc-nosql/pom.xml +++ b/bmc-nosql/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-nosql @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-objectstorage/bmc-objectstorage-combined/pom.xml b/bmc-objectstorage/bmc-objectstorage-combined/pom.xml index c71e012dc72..214c1a28961 100644 --- a/bmc-objectstorage/bmc-objectstorage-combined/pom.xml +++ b/bmc-objectstorage/bmc-objectstorage-combined/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk-objectstorage-parent - 3.97.1 + 3.97.2 ../pom.xml @@ -18,12 +18,12 @@ com.oracle.oci.sdk oci-java-sdk-objectstorage-generated - 3.97.1 + 3.97.2 com.oracle.oci.sdk oci-java-sdk-objectstorage-extensions - 3.97.1 + 3.97.2 diff --git a/bmc-objectstorage/bmc-objectstorage-extensions/pom.xml b/bmc-objectstorage/bmc-objectstorage-extensions/pom.xml index 42cdf59fada..083ef7687c5 100644 --- a/bmc-objectstorage/bmc-objectstorage-extensions/pom.xml +++ b/bmc-objectstorage/bmc-objectstorage-extensions/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk-objectstorage-parent - 3.97.1 + 3.97.2 ../pom.xml @@ -25,17 +25,17 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 com.oracle.oci.sdk oci-java-sdk-common-httpclient - 3.97.1 + 3.97.2 com.oracle.oci.sdk oci-java-sdk-objectstorage-generated - 3.97.1 + 3.97.2 org.slf4j diff --git a/bmc-objectstorage/bmc-objectstorage-generated/pom.xml b/bmc-objectstorage/bmc-objectstorage-generated/pom.xml index 081cf4e4ec1..02dcb19a5b1 100644 --- a/bmc-objectstorage/bmc-objectstorage-generated/pom.xml +++ b/bmc-objectstorage/bmc-objectstorage-generated/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk-objectstorage-parent - 3.97.1 + 3.97.2 ../pom.xml @@ -19,7 +19,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 diff --git a/bmc-objectstorage/pom.xml b/bmc-objectstorage/pom.xml index b88c87061ee..96e255e77c0 100644 --- a/bmc-objectstorage/pom.xml +++ b/bmc-objectstorage/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml diff --git a/bmc-oce/pom.xml b/bmc-oce/pom.xml index fbe7ceb6d31..53b3199d05b 100644 --- a/bmc-oce/pom.xml +++ b/bmc-oce/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-oce @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-ocicontrolcenter/pom.xml b/bmc-ocicontrolcenter/pom.xml index 32084e6cf88..3b11b4f87a9 100644 --- a/bmc-ocicontrolcenter/pom.xml +++ b/bmc-ocicontrolcenter/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-ocicontrolcenter @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-ociproductcatalog/pom.xml b/bmc-ociproductcatalog/pom.xml new file mode 100644 index 00000000000..0ffebb6c9b7 --- /dev/null +++ b/bmc-ociproductcatalog/pom.xml @@ -0,0 +1,21 @@ + + + 4.0.0 + + com.oracle.oci.sdk + oci-java-sdk + 3.97.2 + ../pom.xml + + oci-java-sdk-ociproductcatalog + Oracle Cloud Infrastructure SDK - Oci Product Catalog + This project contains the SDK used for Oracle Cloud Infrastructure Oci Product Catalog + https://docs.cloud.oracle.com/Content/API/SDKDocs/javasdk.htm + + + com.oracle.oci.sdk + oci-java-sdk-common + 3.97.2 + + + \ No newline at end of file diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/Product.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/Product.java new file mode 100644 index 00000000000..f868d649482 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/Product.java @@ -0,0 +1,128 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog; + +import com.oracle.bmc.ociproductcatalog.requests.*; +import com.oracle.bmc.ociproductcatalog.responses.*; + +/** + * Apis to manage the products used by the OCI service teams This service client uses + * CircuitBreakerUtils.DEFAULT_CIRCUIT_BREAKER for all the operations by default if no circuit + * breaker configuration is defined by the user. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public interface Product extends AutoCloseable { + + /** Rebuilds the client from scratch. Useful to refresh certificates. */ + void refreshClient(); + + /** + * Sets the endpoint to call (ex, https://www.example.com). + * + * @param endpoint The endpoint of the service. + */ + void setEndpoint(String endpoint); + + /** Gets the set endpoint for REST call (ex, https://www.example.com) */ + String getEndpoint(); + + /** + * 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); + + /** + * Determines whether realm specific endpoint should be used or not. Set + * realmSpecificEndpointTemplateEnabled to "true" if the user wants to enable use of realm + * specific endpoint template, otherwise set it to "false" + * + * @param realmSpecificEndpointTemplateEnabled flag to enable the use of realm specific endpoint + * template + */ + void useRealmSpecificEndpointTemplate(boolean realmSpecificEndpointTemplateEnabled); + + /** + * Activate the target Product. Change lifecycleState from INACTIVE to ACTIVE. + * + * @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. This operation uses + * RetryConfiguration.SDK_DEFAULT_RETRY_CONFIGURATION as default if no retry strategy is + * provided. The specifics of the default retry strategy are described here + * https://docs.oracle.com/en-us/iaas/Content/API/SDKDocs/javasdkconcepts.htm#javasdkconcepts_topic_Retries + *

Example: Click here to see how to use ActivateProduct + * API. + */ + ActivateProductResponse activateProduct(ActivateProductRequest request); + + /** + * Get product by ID + * + * @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. This operation uses + * RetryConfiguration.SDK_DEFAULT_RETRY_CONFIGURATION as default if no retry strategy is + * provided. The specifics of the default retry strategy are described here + * https://docs.oracle.com/en-us/iaas/Content/API/SDKDocs/javasdkconcepts.htm#javasdkconcepts_topic_Retries + *

Example: Click here to see how to use GetProduct API. + */ + GetProductResponse getProduct(GetProductRequest request); + + /** + * List products + * + * @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. This operation uses + * RetryConfiguration.SDK_DEFAULT_RETRY_CONFIGURATION as default if no retry strategy is + * provided. The specifics of the default retry strategy are described here + * https://docs.oracle.com/en-us/iaas/Content/API/SDKDocs/javasdkconcepts.htm#javasdkconcepts_topic_Retries + *

Example: Click here to see how to use ListProducts API. + */ + ListProductsResponse listProducts(ListProductsRequest request); + + /** + * Gets the pre-configured waiters available for resources for this service. + * + * @return The service waiters. + */ + ProductWaiters getWaiters(); + + /** + * 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. + */ + ProductPaginators getPaginators(); +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductAdmin.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductAdmin.java new file mode 100644 index 00000000000..3af23df1edb --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductAdmin.java @@ -0,0 +1,180 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog; + +import com.oracle.bmc.ociproductcatalog.requests.*; +import com.oracle.bmc.ociproductcatalog.responses.*; + +/** + * Apis to manage the products used by the OCI service teams This service client uses + * CircuitBreakerUtils.DEFAULT_CIRCUIT_BREAKER for all the operations by default if no circuit + * breaker configuration is defined by the user. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public interface ProductAdmin extends AutoCloseable { + + /** Rebuilds the client from scratch. Useful to refresh certificates. */ + void refreshClient(); + + /** + * Sets the endpoint to call (ex, https://www.example.com). + * + * @param endpoint The endpoint of the service. + */ + void setEndpoint(String endpoint); + + /** Gets the set endpoint for REST call (ex, https://www.example.com) */ + String getEndpoint(); + + /** + * 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); + + /** + * Determines whether realm specific endpoint should be used or not. Set + * realmSpecificEndpointTemplateEnabled to "true" if the user wants to enable use of realm + * specific endpoint template, otherwise set it to "false" + * + * @param realmSpecificEndpointTemplateEnabled flag to enable the use of realm specific endpoint + * template + */ + void useRealmSpecificEndpointTemplate(boolean realmSpecificEndpointTemplateEnabled); + + /** + * Change product compartment + * + * @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. This operation uses + * RetryConfiguration.SDK_DEFAULT_RETRY_CONFIGURATION as default if no retry strategy is + * provided. The specifics of the default retry strategy are described here + * https://docs.oracle.com/en-us/iaas/Content/API/SDKDocs/javasdkconcepts.htm#javasdkconcepts_topic_Retries + *

Example: Click here to see how to use + * ChangeAdminProductCompartment API. + */ + ChangeAdminProductCompartmentResponse changeAdminProductCompartment( + ChangeAdminProductCompartmentRequest request); + + /** + * Used by the OCI service teams to create a product to control the availability of the relative + * resources + * + * @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. This operation uses + * RetryConfiguration.SDK_DEFAULT_RETRY_CONFIGURATION as default if no retry strategy is + * provided. The specifics of the default retry strategy are described here + * https://docs.oracle.com/en-us/iaas/Content/API/SDKDocs/javasdkconcepts.htm#javasdkconcepts_topic_Retries + *

Example: Click here to see how to use CreateAdminProduct + * API. + */ + CreateAdminProductResponse createAdminProduct(CreateAdminProductRequest request); + + /** + * Delete the product + * + * @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. This operation uses + * RetryConfiguration.SDK_DEFAULT_RETRY_CONFIGURATION as default if no retry strategy is + * provided. The specifics of the default retry strategy are described here + * https://docs.oracle.com/en-us/iaas/Content/API/SDKDocs/javasdkconcepts.htm#javasdkconcepts_topic_Retries + *

Example: Click here to see how to use DeleteAdminProduct + * API. + */ + DeleteAdminProductResponse deleteAdminProduct(DeleteAdminProductRequest request); + + /** + * Get the product by ID + * + * @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. This operation uses + * RetryConfiguration.SDK_DEFAULT_RETRY_CONFIGURATION as default if no retry strategy is + * provided. The specifics of the default retry strategy are described here + * https://docs.oracle.com/en-us/iaas/Content/API/SDKDocs/javasdkconcepts.htm#javasdkconcepts_topic_Retries + *

Example: Click here to see how to use GetAdminProduct + * API. + */ + GetAdminProductResponse getAdminProduct(GetAdminProductRequest request); + + /** + * List the products with the filters + * + * @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. This operation uses + * RetryConfiguration.SDK_DEFAULT_RETRY_CONFIGURATION as default if no retry strategy is + * provided. The specifics of the default retry strategy are described here + * https://docs.oracle.com/en-us/iaas/Content/API/SDKDocs/javasdkconcepts.htm#javasdkconcepts_topic_Retries + *

Example: Click here to see how to use ListAdminProducts + * API. + */ + ListAdminProductsResponse listAdminProducts(ListAdminProductsRequest request); + + /** + * Update the product + * + * @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. This operation uses + * RetryConfiguration.SDK_DEFAULT_RETRY_CONFIGURATION as default if no retry strategy is + * provided. The specifics of the default retry strategy are described here + * https://docs.oracle.com/en-us/iaas/Content/API/SDKDocs/javasdkconcepts.htm#javasdkconcepts_topic_Retries + *

Example: Click here to see how to use UpdateAdminProduct + * API. + */ + UpdateAdminProductResponse updateAdminProduct(UpdateAdminProductRequest request); + + /** + * Gets the pre-configured waiters available for resources for this service. + * + * @return The service waiters. + */ + ProductAdminWaiters getWaiters(); + + /** + * 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. + */ + ProductAdminPaginators getPaginators(); +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductAdminAsync.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductAdminAsync.java new file mode 100644 index 00000000000..f930c0e7635 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductAdminAsync.java @@ -0,0 +1,159 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog; + +import com.oracle.bmc.ociproductcatalog.requests.*; +import com.oracle.bmc.ociproductcatalog.responses.*; + +/** Apis to manage the products used by the OCI service teams */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public interface ProductAdminAsync extends AutoCloseable { + + /** Rebuilds the client from scratch. Useful to refresh certificates. */ + void refreshClient(); + + /** + * Sets the endpoint to call (ex, https://www.example.com). + * + * @param endpoint The endpoint of the serice. + */ + void setEndpoint(String endpoint); + + /** Gets the set endpoint for REST call (ex, https://www.example.com) */ + String getEndpoint(); + + /** + * 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); + + /** + * Determines whether realm specific endpoint should be used or not. Set + * realmSpecificEndpointTemplateEnabled to "true" if the user wants to enable use of realm + * specific endpoint template, otherwise set it to "false" + * + * @param realmSpecificEndpointTemplateEnabled flag to enable the use of realm specific endpoint + * template + */ + void useRealmSpecificEndpointTemplate(boolean realmSpecificEndpointTemplateEnabled); + + /** + * Change product compartment + * + * @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 + changeAdminProductCompartment( + ChangeAdminProductCompartmentRequest request, + com.oracle.bmc.responses.AsyncHandler< + ChangeAdminProductCompartmentRequest, + ChangeAdminProductCompartmentResponse> + handler); + + /** + * Used by the OCI service teams to create a product to control the availability of the relative + * resources + * + * @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 createAdminProduct( + CreateAdminProductRequest request, + com.oracle.bmc.responses.AsyncHandler< + CreateAdminProductRequest, CreateAdminProductResponse> + handler); + + /** + * Delete the product + * + * @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 deleteAdminProduct( + DeleteAdminProductRequest request, + com.oracle.bmc.responses.AsyncHandler< + DeleteAdminProductRequest, DeleteAdminProductResponse> + handler); + + /** + * Get the product by ID + * + * @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 getAdminProduct( + GetAdminProductRequest request, + com.oracle.bmc.responses.AsyncHandler + handler); + + /** + * List the products with the filters + * + * @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 listAdminProducts( + ListAdminProductsRequest request, + com.oracle.bmc.responses.AsyncHandler< + ListAdminProductsRequest, ListAdminProductsResponse> + handler); + + /** + * Update the product + * + * @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 updateAdminProduct( + UpdateAdminProductRequest request, + com.oracle.bmc.responses.AsyncHandler< + UpdateAdminProductRequest, UpdateAdminProductResponse> + handler); +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductAdminAsyncClient.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductAdminAsyncClient.java new file mode 100644 index 00000000000..e466729fd86 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductAdminAsyncClient.java @@ -0,0 +1,449 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog; + +import com.oracle.bmc.util.internal.Validate; +import com.oracle.bmc.ociproductcatalog.requests.*; +import com.oracle.bmc.ociproductcatalog.responses.*; + +import java.util.Objects; + +/** + * Async client implementation for ProductAdmin 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 + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class ProductAdminAsyncClient extends com.oracle.bmc.http.internal.BaseAsyncClient + implements ProductAdminAsync { + /** Service instance for ProductAdmin. */ + public static final com.oracle.bmc.Service SERVICE = + com.oracle.bmc.Services.serviceBuilder() + .serviceName(ProductAdminClient.class.getName()) + .serviceEndpointPrefix("") + .serviceEndpointTemplate( + "https://cp.product-catalog.{region}.oci.{secondLevelDomain}") + .build(); + + private static final org.slf4j.Logger LOG = + org.slf4j.LoggerFactory.getLogger(ProductAdminAsyncClient.class); + + ProductAdminAsyncClient( + com.oracle.bmc.common.ClientBuilderBase builder, + com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider + authenticationDetailsProvider) { + super(builder, authenticationDetailsProvider); + } + + /** + * 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); + final String packageName = "ociproductcatalog"; + com.oracle.bmc.internal.DeveloperToolConfiguration + .throwDisabledServiceExceptionIfAppropriate(packageName); + 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 ProductAdminAsyncClient build( + @jakarta.annotation.Nonnull + com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider + authenticationDetailsProvider) { + return new ProductAdminAsyncClient(this, authenticationDetailsProvider); + } + } + + @Override + public void setRegion(com.oracle.bmc.Region region) { + super.setRegion(region); + } + + @Override + public void setRegion(String regionId) { + super.setRegion(regionId); + } + + @Override + public java.util.concurrent.Future + changeAdminProductCompartment( + ChangeAdminProductCompartmentRequest request, + final com.oracle.bmc.responses.AsyncHandler< + ChangeAdminProductCompartmentRequest, + ChangeAdminProductCompartmentResponse> + handler) { + + Validate.notBlank(request.getProductId(), "productId must not be blank"); + Objects.requireNonNull( + request.getChangeProductCompartmentDetails(), + "changeProductCompartmentDetails is required"); + + return clientCall(request, ChangeAdminProductCompartmentResponse::builder) + .logger(LOG, "changeAdminProductCompartment") + .serviceDetails("ProductAdmin", "ChangeAdminProductCompartment", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(ChangeAdminProductCompartmentRequest::builder) + .basePath("/20250610") + .appendPathParam("internal") + .appendPathParam("admin") + .appendPathParam("product") + .appendPathParam(request.getProductId()) + .appendPathParam("actions") + .appendPathParam("changeCompartment") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("if-match", request.getIfMatch()) + .hasBody() + .handleResponseHeaderString( + "opc-request-id", + ChangeAdminProductCompartmentResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future createAdminProduct( + CreateAdminProductRequest request, + final com.oracle.bmc.responses.AsyncHandler< + CreateAdminProductRequest, CreateAdminProductResponse> + handler) { + Objects.requireNonNull( + request.getCreateProductDetails(), "createProductDetails is required"); + + return clientCall(request, CreateAdminProductResponse::builder) + .logger(LOG, "createAdminProduct") + .serviceDetails("ProductAdmin", "CreateAdminProduct", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(CreateAdminProductRequest::builder) + .basePath("/20250610") + .appendPathParam("internal") + .appendPathParam("admin") + .appendPathParam("product") + .accept("application/json") + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("opc-request-id", request.getOpcRequestId()) + .hasBody() + .handleBody( + com.oracle.bmc.ociproductcatalog.model.Product.class, + CreateAdminProductResponse.Builder::product) + .handleResponseHeaderString( + "opc-request-id", CreateAdminProductResponse.Builder::opcRequestId) + .handleResponseHeaderString("etag", CreateAdminProductResponse.Builder::etag) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future deleteAdminProduct( + DeleteAdminProductRequest request, + final com.oracle.bmc.responses.AsyncHandler< + DeleteAdminProductRequest, DeleteAdminProductResponse> + handler) { + + Validate.notBlank(request.getProductId(), "productId must not be blank"); + + return clientCall(request, DeleteAdminProductResponse::builder) + .logger(LOG, "deleteAdminProduct") + .serviceDetails("ProductAdmin", "DeleteAdminProduct", "") + .method(com.oracle.bmc.http.client.Method.DELETE) + .requestBuilder(DeleteAdminProductRequest::builder) + .basePath("/20250610") + .appendPathParam("internal") + .appendPathParam("admin") + .appendPathParam("product") + .appendPathParam(request.getProductId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("if-match", request.getIfMatch()) + .handleResponseHeaderString( + "opc-request-id", DeleteAdminProductResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future getAdminProduct( + GetAdminProductRequest request, + final com.oracle.bmc.responses.AsyncHandler< + GetAdminProductRequest, GetAdminProductResponse> + handler) { + + Validate.notBlank(request.getProductId(), "productId must not be blank"); + + return clientCall(request, GetAdminProductResponse::builder) + .logger(LOG, "getAdminProduct") + .serviceDetails("ProductAdmin", "GetAdminProduct", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(GetAdminProductRequest::builder) + .basePath("/20250610") + .appendPathParam("internal") + .appendPathParam("admin") + .appendPathParam("product") + .appendPathParam(request.getProductId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.ociproductcatalog.model.AdminProduct.class, + GetAdminProductResponse.Builder::adminProduct) + .handleResponseHeaderString( + "opc-request-id", GetAdminProductResponse.Builder::opcRequestId) + .handleResponseHeaderString("etag", GetAdminProductResponse.Builder::etag) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future listAdminProducts( + ListAdminProductsRequest request, + final com.oracle.bmc.responses.AsyncHandler< + ListAdminProductsRequest, ListAdminProductsResponse> + handler) { + + return clientCall(request, ListAdminProductsResponse::builder) + .logger(LOG, "listAdminProducts") + .serviceDetails("ProductAdmin", "ListAdminProducts", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListAdminProductsRequest::builder) + .basePath("/20250610") + .appendPathParam("internal") + .appendPathParam("admin") + .appendPathParam("products") + .appendQueryParam("page", request.getPage()) + .appendQueryParam("limit", request.getLimit()) + .appendQueryParam("name", request.getName()) + .appendQueryParam("id", request.getId()) + .appendQueryParam("compartmentId", request.getCompartmentId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.ociproductcatalog.model.ProductCollection.class, + ListAdminProductsResponse.Builder::productCollection) + .handleResponseHeaderString( + "opc-request-id", ListAdminProductsResponse.Builder::opcRequestId) + .handleResponseHeaderString( + "opc-next-page", ListAdminProductsResponse.Builder::opcNextPage) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future updateAdminProduct( + UpdateAdminProductRequest request, + final com.oracle.bmc.responses.AsyncHandler< + UpdateAdminProductRequest, UpdateAdminProductResponse> + handler) { + + Validate.notBlank(request.getProductId(), "productId must not be blank"); + Objects.requireNonNull( + request.getUpdateProductDetails(), "updateProductDetails is required"); + + return clientCall(request, UpdateAdminProductResponse::builder) + .logger(LOG, "updateAdminProduct") + .serviceDetails("ProductAdmin", "UpdateAdminProduct", "") + .method(com.oracle.bmc.http.client.Method.PUT) + .requestBuilder(UpdateAdminProductRequest::builder) + .basePath("/20250610") + .appendPathParam("internal") + .appendPathParam("admin") + .appendPathParam("product") + .appendPathParam(request.getProductId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("if-match", request.getIfMatch()) + .hasBody() + .handleBody( + com.oracle.bmc.ociproductcatalog.model.Product.class, + UpdateAdminProductResponse.Builder::product) + .handleResponseHeaderString( + "opc-request-id", UpdateAdminProductResponse.Builder::opcRequestId) + .handleResponseHeaderString("etag", UpdateAdminProductResponse.Builder::etag) + .callAsync(handler); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductAdminAsyncClient( + com.oracle.bmc.auth.BasicAuthenticationDetailsProvider authenticationDetailsProvider) { + this(builder(), authenticationDetailsProvider); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductAdminAsyncClient( + com.oracle.bmc.auth.BasicAuthenticationDetailsProvider authenticationDetailsProvider, + com.oracle.bmc.ClientConfiguration configuration) { + this(builder().configuration(configuration), authenticationDetailsProvider); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductAdminAsyncClient( + com.oracle.bmc.auth.BasicAuthenticationDetailsProvider authenticationDetailsProvider, + com.oracle.bmc.ClientConfiguration configuration, + com.oracle.bmc.http.ClientConfigurator clientConfigurator) { + this( + builder().configuration(configuration).clientConfigurator(clientConfigurator), + authenticationDetailsProvider); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductAdminAsyncClient( + 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( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory), + authenticationDetailsProvider); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @param additionalClientConfigurators {@link Builder#additionalClientConfigurators} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductAdminAsyncClient( + 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( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory) + .additionalClientConfigurators(additionalClientConfigurators), + authenticationDetailsProvider); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @param additionalClientConfigurators {@link Builder#additionalClientConfigurators} + * @param endpoint {@link Builder#endpoint} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductAdminAsyncClient( + 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( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory) + .additionalClientConfigurators(additionalClientConfigurators) + .endpoint(endpoint), + authenticationDetailsProvider); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @param additionalClientConfigurators {@link Builder#additionalClientConfigurators} + * @param endpoint {@link Builder#endpoint} + * @param signingStrategyRequestSignerFactories {@link + * Builder#signingStrategyRequestSignerFactories} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductAdminAsyncClient( + 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( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory) + .additionalClientConfigurators(additionalClientConfigurators) + .endpoint(endpoint) + .signingStrategyRequestSignerFactories( + signingStrategyRequestSignerFactories), + authenticationDetailsProvider); + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductAdminClient.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductAdminClient.java new file mode 100644 index 00000000000..9f28a0801f6 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductAdminClient.java @@ -0,0 +1,513 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog; + +import com.oracle.bmc.util.internal.Validate; +import com.oracle.bmc.ociproductcatalog.requests.*; +import com.oracle.bmc.ociproductcatalog.responses.*; +import com.oracle.bmc.circuitbreaker.CircuitBreakerConfiguration; +import com.oracle.bmc.util.CircuitBreakerUtils; + +import java.util.Objects; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class ProductAdminClient extends com.oracle.bmc.http.internal.BaseSyncClient + implements ProductAdmin { + /** Service instance for ProductAdmin. */ + public static final com.oracle.bmc.Service SERVICE = + com.oracle.bmc.Services.serviceBuilder() + .serviceName(ProductAdminClient.class.getName()) + .serviceEndpointPrefix("") + .serviceEndpointTemplate( + "https://cp.product-catalog.{region}.oci.{secondLevelDomain}") + .build(); + + private static final org.slf4j.Logger LOG = + org.slf4j.LoggerFactory.getLogger(ProductAdminClient.class); + + private final ProductAdminWaiters waiters; + + private final ProductAdminPaginators paginators; + + ProductAdminClient( + com.oracle.bmc.common.ClientBuilderBase builder, + com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider authenticationDetailsProvider, + java.util.concurrent.ExecutorService executorService) { + super( + builder, + authenticationDetailsProvider, + CircuitBreakerUtils.DEFAULT_CIRCUIT_BREAKER_CONFIGURATION); + + if (executorService == null) { + // up to 50 (core) threads, time out after 60s idle, all daemon + java.util.concurrent.ThreadPoolExecutor threadPoolExecutor = + new java.util.concurrent.ThreadPoolExecutor( + 50, + 50, + 60L, + java.util.concurrent.TimeUnit.SECONDS, + new java.util.concurrent.LinkedBlockingQueue(), + com.oracle.bmc.internal.ClientThreadFactory.builder() + .isDaemon(true) + .nameFormat("ProductAdmin-waiters-%d") + .build()); + threadPoolExecutor.allowCoreThreadTimeOut(true); + + executorService = threadPoolExecutor; + } + this.waiters = new ProductAdminWaiters(executorService, this); + + this.paginators = new ProductAdminPaginators(this); + } + + /** + * 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 java.util.concurrent.ExecutorService executorService; + + private Builder(com.oracle.bmc.Service service) { + super(service); + final String packageName = "ociproductcatalog"; + com.oracle.bmc.internal.DeveloperToolConfiguration + .throwDisabledServiceExceptionIfAppropriate(packageName); + requestSignerFactory = + new com.oracle.bmc.http.signing.internal.DefaultRequestSignerFactory( + com.oracle.bmc.http.signing.SigningStrategy.STANDARD); + } + + /** + * Set the ExecutorService for the client to be created. + * + * @param executorService executorService + * @return this builder + */ + public Builder executorService(java.util.concurrent.ExecutorService executorService) { + this.executorService = executorService; + return this; + } + + /** + * Build the client. + * + * @param authenticationDetailsProvider authentication details provider + * @return the client + */ + public ProductAdminClient build( + @jakarta.annotation.Nonnull + com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider + authenticationDetailsProvider) { + return new ProductAdminClient(this, authenticationDetailsProvider, executorService); + } + } + + @Override + public void setRegion(com.oracle.bmc.Region region) { + super.setRegion(region); + } + + @Override + public void setRegion(String regionId) { + super.setRegion(regionId); + } + + @Override + public ChangeAdminProductCompartmentResponse changeAdminProductCompartment( + ChangeAdminProductCompartmentRequest request) { + + Validate.notBlank(request.getProductId(), "productId must not be blank"); + Objects.requireNonNull( + request.getChangeProductCompartmentDetails(), + "changeProductCompartmentDetails is required"); + + return clientCall(request, ChangeAdminProductCompartmentResponse::builder) + .logger(LOG, "changeAdminProductCompartment") + .serviceDetails("ProductAdmin", "ChangeAdminProductCompartment", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(ChangeAdminProductCompartmentRequest::builder) + .basePath("/20250610") + .appendPathParam("internal") + .appendPathParam("admin") + .appendPathParam("product") + .appendPathParam(request.getProductId()) + .appendPathParam("actions") + .appendPathParam("changeCompartment") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("if-match", request.getIfMatch()) + .operationUsesDefaultRetries() + .hasBody() + .handleResponseHeaderString( + "opc-request-id", + ChangeAdminProductCompartmentResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public CreateAdminProductResponse createAdminProduct(CreateAdminProductRequest request) { + Objects.requireNonNull( + request.getCreateProductDetails(), "createProductDetails is required"); + + return clientCall(request, CreateAdminProductResponse::builder) + .logger(LOG, "createAdminProduct") + .serviceDetails("ProductAdmin", "CreateAdminProduct", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(CreateAdminProductRequest::builder) + .basePath("/20250610") + .appendPathParam("internal") + .appendPathParam("admin") + .appendPathParam("product") + .accept("application/json") + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .hasBody() + .handleBody( + com.oracle.bmc.ociproductcatalog.model.Product.class, + CreateAdminProductResponse.Builder::product) + .handleResponseHeaderString( + "opc-request-id", CreateAdminProductResponse.Builder::opcRequestId) + .handleResponseHeaderString("etag", CreateAdminProductResponse.Builder::etag) + .callSync(); + } + + @Override + public DeleteAdminProductResponse deleteAdminProduct(DeleteAdminProductRequest request) { + + Validate.notBlank(request.getProductId(), "productId must not be blank"); + + return clientCall(request, DeleteAdminProductResponse::builder) + .logger(LOG, "deleteAdminProduct") + .serviceDetails("ProductAdmin", "DeleteAdminProduct", "") + .method(com.oracle.bmc.http.client.Method.DELETE) + .requestBuilder(DeleteAdminProductRequest::builder) + .basePath("/20250610") + .appendPathParam("internal") + .appendPathParam("admin") + .appendPathParam("product") + .appendPathParam(request.getProductId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("if-match", request.getIfMatch()) + .operationUsesDefaultRetries() + .handleResponseHeaderString( + "opc-request-id", DeleteAdminProductResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public GetAdminProductResponse getAdminProduct(GetAdminProductRequest request) { + + Validate.notBlank(request.getProductId(), "productId must not be blank"); + + return clientCall(request, GetAdminProductResponse::builder) + .logger(LOG, "getAdminProduct") + .serviceDetails("ProductAdmin", "GetAdminProduct", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(GetAdminProductRequest::builder) + .basePath("/20250610") + .appendPathParam("internal") + .appendPathParam("admin") + .appendPathParam("product") + .appendPathParam(request.getProductId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleBody( + com.oracle.bmc.ociproductcatalog.model.AdminProduct.class, + GetAdminProductResponse.Builder::adminProduct) + .handleResponseHeaderString( + "opc-request-id", GetAdminProductResponse.Builder::opcRequestId) + .handleResponseHeaderString("etag", GetAdminProductResponse.Builder::etag) + .callSync(); + } + + @Override + public ListAdminProductsResponse listAdminProducts(ListAdminProductsRequest request) { + + return clientCall(request, ListAdminProductsResponse::builder) + .logger(LOG, "listAdminProducts") + .serviceDetails("ProductAdmin", "ListAdminProducts", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListAdminProductsRequest::builder) + .basePath("/20250610") + .appendPathParam("internal") + .appendPathParam("admin") + .appendPathParam("products") + .appendQueryParam("page", request.getPage()) + .appendQueryParam("limit", request.getLimit()) + .appendQueryParam("name", request.getName()) + .appendQueryParam("id", request.getId()) + .appendQueryParam("compartmentId", request.getCompartmentId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleBody( + com.oracle.bmc.ociproductcatalog.model.ProductCollection.class, + ListAdminProductsResponse.Builder::productCollection) + .handleResponseHeaderString( + "opc-request-id", ListAdminProductsResponse.Builder::opcRequestId) + .handleResponseHeaderString( + "opc-next-page", ListAdminProductsResponse.Builder::opcNextPage) + .callSync(); + } + + @Override + public UpdateAdminProductResponse updateAdminProduct(UpdateAdminProductRequest request) { + + Validate.notBlank(request.getProductId(), "productId must not be blank"); + Objects.requireNonNull( + request.getUpdateProductDetails(), "updateProductDetails is required"); + + return clientCall(request, UpdateAdminProductResponse::builder) + .logger(LOG, "updateAdminProduct") + .serviceDetails("ProductAdmin", "UpdateAdminProduct", "") + .method(com.oracle.bmc.http.client.Method.PUT) + .requestBuilder(UpdateAdminProductRequest::builder) + .basePath("/20250610") + .appendPathParam("internal") + .appendPathParam("admin") + .appendPathParam("product") + .appendPathParam(request.getProductId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("if-match", request.getIfMatch()) + .operationUsesDefaultRetries() + .hasBody() + .handleBody( + com.oracle.bmc.ociproductcatalog.model.Product.class, + UpdateAdminProductResponse.Builder::product) + .handleResponseHeaderString( + "opc-request-id", UpdateAdminProductResponse.Builder::opcRequestId) + .handleResponseHeaderString("etag", UpdateAdminProductResponse.Builder::etag) + .callSync(); + } + + @Override + public ProductAdminWaiters getWaiters() { + return waiters; + } + + @Override + public ProductAdminPaginators getPaginators() { + return paginators; + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductAdminClient( + com.oracle.bmc.auth.BasicAuthenticationDetailsProvider authenticationDetailsProvider) { + this(builder(), authenticationDetailsProvider, null); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductAdminClient( + com.oracle.bmc.auth.BasicAuthenticationDetailsProvider authenticationDetailsProvider, + com.oracle.bmc.ClientConfiguration configuration) { + this(builder().configuration(configuration), authenticationDetailsProvider, null); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductAdminClient( + com.oracle.bmc.auth.BasicAuthenticationDetailsProvider authenticationDetailsProvider, + com.oracle.bmc.ClientConfiguration configuration, + com.oracle.bmc.http.ClientConfigurator clientConfigurator) { + this( + builder().configuration(configuration).clientConfigurator(clientConfigurator), + authenticationDetailsProvider, + null); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductAdminClient( + 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( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory), + authenticationDetailsProvider, + null); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @param additionalClientConfigurators {@link Builder#additionalClientConfigurators} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductAdminClient( + 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( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory) + .additionalClientConfigurators(additionalClientConfigurators), + authenticationDetailsProvider, + null); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @param additionalClientConfigurators {@link Builder#additionalClientConfigurators} + * @param endpoint {@link Builder#endpoint} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductAdminClient( + 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( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory) + .additionalClientConfigurators(additionalClientConfigurators) + .endpoint(endpoint), + authenticationDetailsProvider, + null); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @param additionalClientConfigurators {@link Builder#additionalClientConfigurators} + * @param endpoint {@link Builder#endpoint} + * @param signingStrategyRequestSignerFactories {@link + * Builder#signingStrategyRequestSignerFactories} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductAdminClient( + 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( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory) + .additionalClientConfigurators(additionalClientConfigurators) + .endpoint(endpoint) + .signingStrategyRequestSignerFactories( + signingStrategyRequestSignerFactories), + authenticationDetailsProvider, + null); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @param additionalClientConfigurators {@link Builder#additionalClientConfigurators} + * @param endpoint {@link Builder#endpoint} + * @param signingStrategyRequestSignerFactories {@link + * Builder#signingStrategyRequestSignerFactories} + * @param executorService {@link Builder#executorService} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductAdminClient( + 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, + java.util.concurrent.ExecutorService executorService) { + this( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory) + .additionalClientConfigurators(additionalClientConfigurators) + .endpoint(endpoint) + .signingStrategyRequestSignerFactories( + signingStrategyRequestSignerFactories), + authenticationDetailsProvider, + executorService); + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductAdminPaginators.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductAdminPaginators.java new file mode 100644 index 00000000000..fd92f221a35 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductAdminPaginators.java @@ -0,0 +1,162 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog; + +import com.oracle.bmc.ociproductcatalog.requests.*; +import com.oracle.bmc.ociproductcatalog.responses.*; + +/** + * Collection of helper methods that can be used to provide an {@link java.lang.Iterable} interface + * to any list operations of ProductAdmin 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. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class ProductAdminPaginators { + private final ProductAdmin client; + + public ProductAdminPaginators(ProductAdmin client) { + this.client = client; + } + + /** + * Creates a new iterable which will iterate over the responses received from the + * listAdminProducts 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 listAdminProductsResponseIterator( + final ListAdminProductsRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseIterable< + ListAdminProductsRequest.Builder, + ListAdminProductsRequest, + ListAdminProductsResponse>( + new java.util.function.Supplier() { + @Override + public ListAdminProductsRequest.Builder get() { + return ListAdminProductsRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListAdminProductsResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListAdminProductsRequest.Builder>, + ListAdminProductsRequest>() { + @Override + public ListAdminProductsRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListAdminProductsRequest.Builder> + input) { + if (input.getNextPageToken() == null) { + return input.getRequestBuilder().build(); + } else { + return input.getRequestBuilder() + .page(input.getNextPageToken().orElse(null)) + .build(); + } + } + }, + new java.util.function.Function< + ListAdminProductsRequest, ListAdminProductsResponse>() { + @Override + public ListAdminProductsResponse apply(ListAdminProductsRequest request) { + return client.listAdminProducts(request); + } + }); + } + + /** + * Creates a new iterable which will iterate over the {@link + * com.oracle.bmc.ociproductcatalog.model.ProductSummary} objects contained in responses from + * the listAdminProducts 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.ociproductcatalog.model.ProductSummary} objects contained in responses + * received from the service. + */ + public Iterable + listAdminProductsRecordIterator(final ListAdminProductsRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseRecordIterable< + ListAdminProductsRequest.Builder, + ListAdminProductsRequest, + ListAdminProductsResponse, + com.oracle.bmc.ociproductcatalog.model.ProductSummary>( + new java.util.function.Supplier() { + @Override + public ListAdminProductsRequest.Builder get() { + return ListAdminProductsRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListAdminProductsResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListAdminProductsRequest.Builder>, + ListAdminProductsRequest>() { + @Override + public ListAdminProductsRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListAdminProductsRequest.Builder> + input) { + if (input.getNextPageToken() == null) { + return input.getRequestBuilder().build(); + } else { + return input.getRequestBuilder() + .page(input.getNextPageToken().orElse(null)) + .build(); + } + } + }, + new java.util.function.Function< + ListAdminProductsRequest, ListAdminProductsResponse>() { + @Override + public ListAdminProductsResponse apply(ListAdminProductsRequest request) { + return client.listAdminProducts(request); + } + }, + new java.util.function.Function< + ListAdminProductsResponse, + java.util.List>() { + @Override + public java.util.List + apply(ListAdminProductsResponse response) { + return response.getProductCollection().getItems(); + } + }); + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductAdminWaiters.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductAdminWaiters.java new file mode 100644 index 00000000000..37a598fa3c0 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductAdminWaiters.java @@ -0,0 +1,133 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog; + +import com.oracle.bmc.ociproductcatalog.requests.*; +import com.oracle.bmc.ociproductcatalog.responses.*; + +/** + * Collection of helper methods to produce {@link com.oracle.bmc.waiter.Waiter}s for different + * resources of ProductAdmin. + * + *

The default configuration used is defined by {@link + * com.oracle.bmc.waiter.Waiters.Waiters#DEFAULT_POLLING_WAITER}. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class ProductAdminWaiters { + private final java.util.concurrent.ExecutorService executorService; + private final ProductAdmin client; + + public ProductAdminWaiters( + java.util.concurrent.ExecutorService executorService, ProductAdmin client) { + this.executorService = executorService; + this.client = client; + } + + /** + * Creates a new {@link com.oracle.bmc.waiter.Waiter} using the default configuration. + * + * @param request the request to send + * @param targetStates the desired states to wait for. If multiple states are provided then the + * waiter will return once the resource reaches any of the provided states + * @return a new {@code Waiter} instance + */ + public com.oracle.bmc.waiter.Waiter + forAdminProduct( + GetAdminProductRequest request, + com.oracle.bmc.ociproductcatalog.model.AdminProduct.LifecycleState... + targetStates) { + com.oracle.bmc.util.internal.Validate.notEmpty( + targetStates, "At least one targetState must be provided"); + com.oracle.bmc.util.internal.Validate.noNullElements( + targetStates, "Null targetState values are not permitted"); + + return forAdminProduct( + com.oracle.bmc.waiter.Waiters.DEFAULT_POLLING_WAITER, request, targetStates); + } + + /** + * Creates a new {@link com.oracle.bmc.waiter.Waiter} using the provided configuration. + * + * @param request the request to send + * @param targetState the desired state to wait for + * @param terminationStrategy the {@link com.oracle.bmc.waiter.TerminationStrategy} to use + * @param delayStrategy the {@link com.oracle.bmc.waiter.DelayStrategy} to use + * @return a new {@code com.oracle.bmc.waiter.Waiter} instance + */ + public com.oracle.bmc.waiter.Waiter + forAdminProduct( + GetAdminProductRequest request, + com.oracle.bmc.ociproductcatalog.model.AdminProduct.LifecycleState targetState, + com.oracle.bmc.waiter.TerminationStrategy terminationStrategy, + com.oracle.bmc.waiter.DelayStrategy delayStrategy) { + com.oracle.bmc.util.internal.Validate.notNull( + targetState, "The targetState cannot be null"); + + return forAdminProduct( + com.oracle.bmc.waiter.Waiters.newWaiter(terminationStrategy, delayStrategy), + request, + targetState); + } + + /** + * Creates a new {@link com.oracle.bmc.waiter.Waiter} using the provided configuration. + * + * @param request the request to send + * @param terminationStrategy the {@link com.oracle.bmc.waiter.TerminationStrategy} to use + * @param delayStrategy the {@link com.oracle.bmc.waiter.DelayStrategy} to use + * @param targetStates the desired states to wait for. The waiter will return once the resource + * reaches any of the provided states + * @return a new {@code com.oracle.bmc.waiter.Waiter} instance + */ + public com.oracle.bmc.waiter.Waiter + forAdminProduct( + GetAdminProductRequest request, + com.oracle.bmc.waiter.TerminationStrategy terminationStrategy, + com.oracle.bmc.waiter.DelayStrategy delayStrategy, + com.oracle.bmc.ociproductcatalog.model.AdminProduct.LifecycleState... + targetStates) { + com.oracle.bmc.util.internal.Validate.notEmpty( + targetStates, "At least one target state must be provided"); + com.oracle.bmc.util.internal.Validate.noNullElements( + targetStates, "Null target states are not permitted"); + + return forAdminProduct( + com.oracle.bmc.waiter.Waiters.newWaiter(terminationStrategy, delayStrategy), + request, + targetStates); + } + + // Helper method to create a new Waiter for AdminProduct. + private com.oracle.bmc.waiter.Waiter + forAdminProduct( + com.oracle.bmc.waiter.BmcGenericWaiter waiter, + final GetAdminProductRequest request, + final com.oracle.bmc.ociproductcatalog.model.AdminProduct.LifecycleState... + targetStates) { + final java.util.Set + targetStatesSet = new java.util.HashSet<>(java.util.Arrays.asList(targetStates)); + + return new com.oracle.bmc.waiter.internal.SimpleWaiterImpl<>( + executorService, + waiter.toCallable( + () -> request, + new java.util.function.Function< + GetAdminProductRequest, GetAdminProductResponse>() { + @Override + public GetAdminProductResponse apply(GetAdminProductRequest request) { + return client.getAdminProduct(request); + } + }, + new java.util.function.Predicate() { + @Override + public boolean test(GetAdminProductResponse response) { + return targetStatesSet.contains( + response.getAdminProduct().getLifecycleState()); + } + }, + false), + request); + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductAsync.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductAsync.java new file mode 100644 index 00000000000..6891a62734e --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductAsync.java @@ -0,0 +1,105 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog; + +import com.oracle.bmc.ociproductcatalog.requests.*; +import com.oracle.bmc.ociproductcatalog.responses.*; + +/** Apis to manage the products used by the OCI service teams */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public interface ProductAsync extends AutoCloseable { + + /** Rebuilds the client from scratch. Useful to refresh certificates. */ + void refreshClient(); + + /** + * Sets the endpoint to call (ex, https://www.example.com). + * + * @param endpoint The endpoint of the serice. + */ + void setEndpoint(String endpoint); + + /** Gets the set endpoint for REST call (ex, https://www.example.com) */ + String getEndpoint(); + + /** + * 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); + + /** + * Determines whether realm specific endpoint should be used or not. Set + * realmSpecificEndpointTemplateEnabled to "true" if the user wants to enable use of realm + * specific endpoint template, otherwise set it to "false" + * + * @param realmSpecificEndpointTemplateEnabled flag to enable the use of realm specific endpoint + * template + */ + void useRealmSpecificEndpointTemplate(boolean realmSpecificEndpointTemplateEnabled); + + /** + * Activate the target Product. Change lifecycleState from INACTIVE to ACTIVE. + * + * @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 activateProduct( + ActivateProductRequest request, + com.oracle.bmc.responses.AsyncHandler + handler); + + /** + * Get product by ID + * + * @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 getProduct( + GetProductRequest request, + com.oracle.bmc.responses.AsyncHandler handler); + + /** + * List products + * + * @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 listProducts( + ListProductsRequest request, + com.oracle.bmc.responses.AsyncHandler + handler); +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductAsyncClient.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductAsyncClient.java new file mode 100644 index 00000000000..7c9a7fc2cfb --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductAsyncClient.java @@ -0,0 +1,349 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog; + +import com.oracle.bmc.util.internal.Validate; +import com.oracle.bmc.ociproductcatalog.requests.*; +import com.oracle.bmc.ociproductcatalog.responses.*; + +import java.util.Objects; + +/** + * Async client implementation for Product 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 + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class ProductAsyncClient extends com.oracle.bmc.http.internal.BaseAsyncClient + implements ProductAsync { + /** Service instance for Product. */ + public static final com.oracle.bmc.Service SERVICE = + com.oracle.bmc.Services.serviceBuilder() + .serviceName(ProductClient.class.getName()) + .serviceEndpointPrefix("") + .serviceEndpointTemplate( + "https://cp.product-catalog.{region}.oci.{secondLevelDomain}") + .build(); + + private static final org.slf4j.Logger LOG = + org.slf4j.LoggerFactory.getLogger(ProductAsyncClient.class); + + ProductAsyncClient( + com.oracle.bmc.common.ClientBuilderBase builder, + com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider + authenticationDetailsProvider) { + super(builder, authenticationDetailsProvider); + } + + /** + * 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); + final String packageName = "ociproductcatalog"; + com.oracle.bmc.internal.DeveloperToolConfiguration + .throwDisabledServiceExceptionIfAppropriate(packageName); + 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 ProductAsyncClient build( + @jakarta.annotation.Nonnull + com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider + authenticationDetailsProvider) { + return new ProductAsyncClient(this, authenticationDetailsProvider); + } + } + + @Override + public void setRegion(com.oracle.bmc.Region region) { + super.setRegion(region); + } + + @Override + public void setRegion(String regionId) { + super.setRegion(regionId); + } + + @Override + public java.util.concurrent.Future activateProduct( + ActivateProductRequest request, + final com.oracle.bmc.responses.AsyncHandler< + ActivateProductRequest, ActivateProductResponse> + handler) { + + Validate.notBlank(request.getProductId(), "productId must not be blank"); + + return clientCall(request, ActivateProductResponse::builder) + .logger(LOG, "activateProduct") + .serviceDetails("Product", "ActivateProduct", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(ActivateProductRequest::builder) + .basePath("/20250610") + .appendPathParam("product") + .appendPathParam(request.getProductId()) + .appendPathParam("actions") + .appendPathParam("activate") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("if-match", request.getIfMatch()) + .handleBody( + com.oracle.bmc.ociproductcatalog.model.Product.class, + ActivateProductResponse.Builder::product) + .handleResponseHeaderString( + "opc-request-id", ActivateProductResponse.Builder::opcRequestId) + .handleResponseHeaderString("etag", ActivateProductResponse.Builder::etag) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future getProduct( + GetProductRequest request, + final com.oracle.bmc.responses.AsyncHandler + handler) { + + Validate.notBlank(request.getProductId(), "productId must not be blank"); + + return clientCall(request, GetProductResponse::builder) + .logger(LOG, "getProduct") + .serviceDetails("Product", "GetProduct", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(GetProductRequest::builder) + .basePath("/20250610") + .appendPathParam("product") + .appendPathParam(request.getProductId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.ociproductcatalog.model.Product.class, + GetProductResponse.Builder::product) + .handleResponseHeaderString( + "opc-request-id", GetProductResponse.Builder::opcRequestId) + .handleResponseHeaderString("etag", GetProductResponse.Builder::etag) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future listProducts( + ListProductsRequest request, + final com.oracle.bmc.responses.AsyncHandler + handler) { + + return clientCall(request, ListProductsResponse::builder) + .logger(LOG, "listProducts") + .serviceDetails("Product", "ListProducts", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListProductsRequest::builder) + .basePath("/20250610") + .appendPathParam("products") + .appendQueryParam("skusContains", request.getSkusContains()) + .appendQueryParam("name", request.getName()) + .appendQueryParam("lifecycleState", request.getLifecycleState()) + .appendQueryParam( + "timeReadyGreaterThanOrEqualTo", request.getTimeReadyGreaterThanOrEqualTo()) + .appendQueryParam("page", request.getPage()) + .appendQueryParam("limit", request.getLimit()) + .appendQueryParam("id", request.getId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.ociproductcatalog.model.ProductCollection.class, + ListProductsResponse.Builder::productCollection) + .handleResponseHeaderString( + "opc-request-id", ListProductsResponse.Builder::opcRequestId) + .handleResponseHeaderString( + "opc-next-page", ListProductsResponse.Builder::opcNextPage) + .callAsync(handler); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductAsyncClient( + com.oracle.bmc.auth.BasicAuthenticationDetailsProvider authenticationDetailsProvider) { + this(builder(), authenticationDetailsProvider); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductAsyncClient( + com.oracle.bmc.auth.BasicAuthenticationDetailsProvider authenticationDetailsProvider, + com.oracle.bmc.ClientConfiguration configuration) { + this(builder().configuration(configuration), authenticationDetailsProvider); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductAsyncClient( + com.oracle.bmc.auth.BasicAuthenticationDetailsProvider authenticationDetailsProvider, + com.oracle.bmc.ClientConfiguration configuration, + com.oracle.bmc.http.ClientConfigurator clientConfigurator) { + this( + builder().configuration(configuration).clientConfigurator(clientConfigurator), + authenticationDetailsProvider); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductAsyncClient( + 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( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory), + authenticationDetailsProvider); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @param additionalClientConfigurators {@link Builder#additionalClientConfigurators} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductAsyncClient( + 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( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory) + .additionalClientConfigurators(additionalClientConfigurators), + authenticationDetailsProvider); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @param additionalClientConfigurators {@link Builder#additionalClientConfigurators} + * @param endpoint {@link Builder#endpoint} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductAsyncClient( + 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( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory) + .additionalClientConfigurators(additionalClientConfigurators) + .endpoint(endpoint), + authenticationDetailsProvider); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @param additionalClientConfigurators {@link Builder#additionalClientConfigurators} + * @param endpoint {@link Builder#endpoint} + * @param signingStrategyRequestSignerFactories {@link + * Builder#signingStrategyRequestSignerFactories} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductAsyncClient( + 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( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory) + .additionalClientConfigurators(additionalClientConfigurators) + .endpoint(endpoint) + .signingStrategyRequestSignerFactories( + signingStrategyRequestSignerFactories), + authenticationDetailsProvider); + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductClient.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductClient.java new file mode 100644 index 00000000000..a03d79e09bc --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductClient.java @@ -0,0 +1,424 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog; + +import com.oracle.bmc.util.internal.Validate; +import com.oracle.bmc.ociproductcatalog.requests.*; +import com.oracle.bmc.ociproductcatalog.responses.*; +import com.oracle.bmc.circuitbreaker.CircuitBreakerConfiguration; +import com.oracle.bmc.util.CircuitBreakerUtils; + +import java.util.Objects; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class ProductClient extends com.oracle.bmc.http.internal.BaseSyncClient implements Product { + /** Service instance for Product. */ + public static final com.oracle.bmc.Service SERVICE = + com.oracle.bmc.Services.serviceBuilder() + .serviceName(ProductClient.class.getName()) + .serviceEndpointPrefix("") + .serviceEndpointTemplate( + "https://cp.product-catalog.{region}.oci.{secondLevelDomain}") + .build(); + + private static final org.slf4j.Logger LOG = + org.slf4j.LoggerFactory.getLogger(ProductClient.class); + + private final ProductWaiters waiters; + + private final ProductPaginators paginators; + + ProductClient( + com.oracle.bmc.common.ClientBuilderBase builder, + com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider authenticationDetailsProvider, + java.util.concurrent.ExecutorService executorService) { + super( + builder, + authenticationDetailsProvider, + CircuitBreakerUtils.DEFAULT_CIRCUIT_BREAKER_CONFIGURATION); + + if (executorService == null) { + // up to 50 (core) threads, time out after 60s idle, all daemon + java.util.concurrent.ThreadPoolExecutor threadPoolExecutor = + new java.util.concurrent.ThreadPoolExecutor( + 50, + 50, + 60L, + java.util.concurrent.TimeUnit.SECONDS, + new java.util.concurrent.LinkedBlockingQueue(), + com.oracle.bmc.internal.ClientThreadFactory.builder() + .isDaemon(true) + .nameFormat("Product-waiters-%d") + .build()); + threadPoolExecutor.allowCoreThreadTimeOut(true); + + executorService = threadPoolExecutor; + } + this.waiters = new ProductWaiters(executorService, this); + + this.paginators = new ProductPaginators(this); + } + + /** + * 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 java.util.concurrent.ExecutorService executorService; + + private Builder(com.oracle.bmc.Service service) { + super(service); + final String packageName = "ociproductcatalog"; + com.oracle.bmc.internal.DeveloperToolConfiguration + .throwDisabledServiceExceptionIfAppropriate(packageName); + requestSignerFactory = + new com.oracle.bmc.http.signing.internal.DefaultRequestSignerFactory( + com.oracle.bmc.http.signing.SigningStrategy.STANDARD); + } + + /** + * Set the ExecutorService for the client to be created. + * + * @param executorService executorService + * @return this builder + */ + public Builder executorService(java.util.concurrent.ExecutorService executorService) { + this.executorService = executorService; + return this; + } + + /** + * Build the client. + * + * @param authenticationDetailsProvider authentication details provider + * @return the client + */ + public ProductClient build( + @jakarta.annotation.Nonnull + com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider + authenticationDetailsProvider) { + return new ProductClient(this, authenticationDetailsProvider, executorService); + } + } + + @Override + public void setRegion(com.oracle.bmc.Region region) { + super.setRegion(region); + } + + @Override + public void setRegion(String regionId) { + super.setRegion(regionId); + } + + @Override + public ActivateProductResponse activateProduct(ActivateProductRequest request) { + + Validate.notBlank(request.getProductId(), "productId must not be blank"); + + return clientCall(request, ActivateProductResponse::builder) + .logger(LOG, "activateProduct") + .serviceDetails("Product", "ActivateProduct", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(ActivateProductRequest::builder) + .basePath("/20250610") + .appendPathParam("product") + .appendPathParam(request.getProductId()) + .appendPathParam("actions") + .appendPathParam("activate") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("if-match", request.getIfMatch()) + .operationUsesDefaultRetries() + .handleBody( + com.oracle.bmc.ociproductcatalog.model.Product.class, + ActivateProductResponse.Builder::product) + .handleResponseHeaderString( + "opc-request-id", ActivateProductResponse.Builder::opcRequestId) + .handleResponseHeaderString("etag", ActivateProductResponse.Builder::etag) + .callSync(); + } + + @Override + public GetProductResponse getProduct(GetProductRequest request) { + + Validate.notBlank(request.getProductId(), "productId must not be blank"); + + return clientCall(request, GetProductResponse::builder) + .logger(LOG, "getProduct") + .serviceDetails("Product", "GetProduct", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(GetProductRequest::builder) + .basePath("/20250610") + .appendPathParam("product") + .appendPathParam(request.getProductId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleBody( + com.oracle.bmc.ociproductcatalog.model.Product.class, + GetProductResponse.Builder::product) + .handleResponseHeaderString( + "opc-request-id", GetProductResponse.Builder::opcRequestId) + .handleResponseHeaderString("etag", GetProductResponse.Builder::etag) + .callSync(); + } + + @Override + public ListProductsResponse listProducts(ListProductsRequest request) { + + return clientCall(request, ListProductsResponse::builder) + .logger(LOG, "listProducts") + .serviceDetails("Product", "ListProducts", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListProductsRequest::builder) + .basePath("/20250610") + .appendPathParam("products") + .appendQueryParam("skusContains", request.getSkusContains()) + .appendQueryParam("name", request.getName()) + .appendQueryParam("lifecycleState", request.getLifecycleState()) + .appendQueryParam( + "timeReadyGreaterThanOrEqualTo", request.getTimeReadyGreaterThanOrEqualTo()) + .appendQueryParam("page", request.getPage()) + .appendQueryParam("limit", request.getLimit()) + .appendQueryParam("id", request.getId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleBody( + com.oracle.bmc.ociproductcatalog.model.ProductCollection.class, + ListProductsResponse.Builder::productCollection) + .handleResponseHeaderString( + "opc-request-id", ListProductsResponse.Builder::opcRequestId) + .handleResponseHeaderString( + "opc-next-page", ListProductsResponse.Builder::opcNextPage) + .callSync(); + } + + @Override + public ProductWaiters getWaiters() { + return waiters; + } + + @Override + public ProductPaginators getPaginators() { + return paginators; + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductClient( + com.oracle.bmc.auth.BasicAuthenticationDetailsProvider authenticationDetailsProvider) { + this(builder(), authenticationDetailsProvider, null); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductClient( + com.oracle.bmc.auth.BasicAuthenticationDetailsProvider authenticationDetailsProvider, + com.oracle.bmc.ClientConfiguration configuration) { + this(builder().configuration(configuration), authenticationDetailsProvider, null); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductClient( + com.oracle.bmc.auth.BasicAuthenticationDetailsProvider authenticationDetailsProvider, + com.oracle.bmc.ClientConfiguration configuration, + com.oracle.bmc.http.ClientConfigurator clientConfigurator) { + this( + builder().configuration(configuration).clientConfigurator(clientConfigurator), + authenticationDetailsProvider, + null); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductClient( + 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( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory), + authenticationDetailsProvider, + null); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @param additionalClientConfigurators {@link Builder#additionalClientConfigurators} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductClient( + 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( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory) + .additionalClientConfigurators(additionalClientConfigurators), + authenticationDetailsProvider, + null); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @param additionalClientConfigurators {@link Builder#additionalClientConfigurators} + * @param endpoint {@link Builder#endpoint} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductClient( + 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( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory) + .additionalClientConfigurators(additionalClientConfigurators) + .endpoint(endpoint), + authenticationDetailsProvider, + null); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @param additionalClientConfigurators {@link Builder#additionalClientConfigurators} + * @param endpoint {@link Builder#endpoint} + * @param signingStrategyRequestSignerFactories {@link + * Builder#signingStrategyRequestSignerFactories} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductClient( + 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( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory) + .additionalClientConfigurators(additionalClientConfigurators) + .endpoint(endpoint) + .signingStrategyRequestSignerFactories( + signingStrategyRequestSignerFactories), + authenticationDetailsProvider, + null); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @param additionalClientConfigurators {@link Builder#additionalClientConfigurators} + * @param endpoint {@link Builder#endpoint} + * @param signingStrategyRequestSignerFactories {@link + * Builder#signingStrategyRequestSignerFactories} + * @param executorService {@link Builder#executorService} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductClient( + 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, + java.util.concurrent.ExecutorService executorService) { + this( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory) + .additionalClientConfigurators(additionalClientConfigurators) + .endpoint(endpoint) + .signingStrategyRequestSignerFactories( + signingStrategyRequestSignerFactories), + authenticationDetailsProvider, + executorService); + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductInternal.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductInternal.java new file mode 100644 index 00000000000..ffe25809b1e --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductInternal.java @@ -0,0 +1,173 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog; + +import com.oracle.bmc.ociproductcatalog.requests.*; +import com.oracle.bmc.ociproductcatalog.responses.*; + +/** + * Apis to manage the products used by the OCI service teams This service client uses + * CircuitBreakerUtils.DEFAULT_CIRCUIT_BREAKER for all the operations by default if no circuit + * breaker configuration is defined by the user. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public interface ProductInternal extends AutoCloseable { + + /** Rebuilds the client from scratch. Useful to refresh certificates. */ + void refreshClient(); + + /** + * Sets the endpoint to call (ex, https://www.example.com). + * + * @param endpoint The endpoint of the service. + */ + void setEndpoint(String endpoint); + + /** Gets the set endpoint for REST call (ex, https://www.example.com) */ + String getEndpoint(); + + /** + * 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); + + /** + * Determines whether realm specific endpoint should be used or not. Set + * realmSpecificEndpointTemplateEnabled to "true" if the user wants to enable use of realm + * specific endpoint template, otherwise set it to "false" + * + * @param realmSpecificEndpointTemplateEnabled flag to enable the use of realm specific endpoint + * template + */ + void useRealmSpecificEndpointTemplate(boolean realmSpecificEndpointTemplateEnabled); + + /** + * Change product compartment + * + * @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. This operation uses + * RetryConfiguration.SDK_DEFAULT_RETRY_CONFIGURATION as default if no retry strategy is + * provided. The specifics of the default retry strategy are described here + * https://docs.oracle.com/en-us/iaas/Content/API/SDKDocs/javasdkconcepts.htm#javasdkconcepts_topic_Retries + *

Example: Click here to see how to use + * ChangeInternalProductCompartment API. + */ + ChangeInternalProductCompartmentResponse changeInternalProductCompartment( + ChangeInternalProductCompartmentRequest request); + + /** + * Used by the OCI service teams to create a product to control the availability of the relative + * resources + * + * @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. This operation uses + * RetryConfiguration.SDK_DEFAULT_RETRY_CONFIGURATION as default if no retry strategy is + * provided. The specifics of the default retry strategy are described here + * https://docs.oracle.com/en-us/iaas/Content/API/SDKDocs/javasdkconcepts.htm#javasdkconcepts_topic_Retries + *

Example: Click here to see how to use + * CreateInternalProduct API. + */ + CreateInternalProductResponse createInternalProduct(CreateInternalProductRequest request); + + /** + * Delete the product + * + * @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. This operation uses + * RetryConfiguration.SDK_DEFAULT_RETRY_CONFIGURATION as default if no retry strategy is + * provided. The specifics of the default retry strategy are described here + * https://docs.oracle.com/en-us/iaas/Content/API/SDKDocs/javasdkconcepts.htm#javasdkconcepts_topic_Retries + *

Example: Click here to see how to use + * DeleteInternalProduct API. + */ + DeleteInternalProductResponse deleteInternalProduct(DeleteInternalProductRequest request); + + /** + * Get the product by ID + * + * @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. This operation uses + * RetryConfiguration.SDK_DEFAULT_RETRY_CONFIGURATION as default if no retry strategy is + * provided. The specifics of the default retry strategy are described here + * https://docs.oracle.com/en-us/iaas/Content/API/SDKDocs/javasdkconcepts.htm#javasdkconcepts_topic_Retries + *

Example: Click here to see how to use GetInternalProduct + * API. + */ + GetInternalProductResponse getInternalProduct(GetInternalProductRequest request); + + /** + * List the products with the filters + * + * @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. This operation uses + * RetryConfiguration.SDK_DEFAULT_RETRY_CONFIGURATION as default if no retry strategy is + * provided. The specifics of the default retry strategy are described here + * https://docs.oracle.com/en-us/iaas/Content/API/SDKDocs/javasdkconcepts.htm#javasdkconcepts_topic_Retries + *

Example: Click here to see how to use + * ListInternalProducts API. + */ + ListInternalProductsResponse listInternalProducts(ListInternalProductsRequest request); + + /** + * Update the product + * + * @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. This operation uses + * RetryConfiguration.SDK_DEFAULT_RETRY_CONFIGURATION as default if no retry strategy is + * provided. The specifics of the default retry strategy are described here + * https://docs.oracle.com/en-us/iaas/Content/API/SDKDocs/javasdkconcepts.htm#javasdkconcepts_topic_Retries + *

Example: Click here to see how to use + * UpdateInternalProduct API. + */ + UpdateInternalProductResponse updateInternalProduct(UpdateInternalProductRequest 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. + */ + ProductInternalPaginators getPaginators(); +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductInternalAsync.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductInternalAsync.java new file mode 100644 index 00000000000..963ec486e74 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductInternalAsync.java @@ -0,0 +1,160 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog; + +import com.oracle.bmc.ociproductcatalog.requests.*; +import com.oracle.bmc.ociproductcatalog.responses.*; + +/** Apis to manage the products used by the OCI service teams */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public interface ProductInternalAsync extends AutoCloseable { + + /** Rebuilds the client from scratch. Useful to refresh certificates. */ + void refreshClient(); + + /** + * Sets the endpoint to call (ex, https://www.example.com). + * + * @param endpoint The endpoint of the serice. + */ + void setEndpoint(String endpoint); + + /** Gets the set endpoint for REST call (ex, https://www.example.com) */ + String getEndpoint(); + + /** + * 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); + + /** + * Determines whether realm specific endpoint should be used or not. Set + * realmSpecificEndpointTemplateEnabled to "true" if the user wants to enable use of realm + * specific endpoint template, otherwise set it to "false" + * + * @param realmSpecificEndpointTemplateEnabled flag to enable the use of realm specific endpoint + * template + */ + void useRealmSpecificEndpointTemplate(boolean realmSpecificEndpointTemplateEnabled); + + /** + * Change product compartment + * + * @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 + changeInternalProductCompartment( + ChangeInternalProductCompartmentRequest request, + com.oracle.bmc.responses.AsyncHandler< + ChangeInternalProductCompartmentRequest, + ChangeInternalProductCompartmentResponse> + handler); + + /** + * Used by the OCI service teams to create a product to control the availability of the relative + * resources + * + * @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 createInternalProduct( + CreateInternalProductRequest request, + com.oracle.bmc.responses.AsyncHandler< + CreateInternalProductRequest, CreateInternalProductResponse> + handler); + + /** + * Delete the product + * + * @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 deleteInternalProduct( + DeleteInternalProductRequest request, + com.oracle.bmc.responses.AsyncHandler< + DeleteInternalProductRequest, DeleteInternalProductResponse> + handler); + + /** + * Get the product by ID + * + * @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 getInternalProduct( + GetInternalProductRequest request, + com.oracle.bmc.responses.AsyncHandler< + GetInternalProductRequest, GetInternalProductResponse> + handler); + + /** + * List the products with the filters + * + * @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 listInternalProducts( + ListInternalProductsRequest request, + com.oracle.bmc.responses.AsyncHandler< + ListInternalProductsRequest, ListInternalProductsResponse> + handler); + + /** + * Update the product + * + * @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 updateInternalProduct( + UpdateInternalProductRequest request, + com.oracle.bmc.responses.AsyncHandler< + UpdateInternalProductRequest, UpdateInternalProductResponse> + handler); +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductInternalAsyncClient.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductInternalAsyncClient.java new file mode 100644 index 00000000000..e4ca5f4bc3f --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductInternalAsyncClient.java @@ -0,0 +1,445 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog; + +import com.oracle.bmc.util.internal.Validate; +import com.oracle.bmc.ociproductcatalog.requests.*; +import com.oracle.bmc.ociproductcatalog.responses.*; + +import java.util.Objects; + +/** + * Async client implementation for ProductInternal 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 + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class ProductInternalAsyncClient extends com.oracle.bmc.http.internal.BaseAsyncClient + implements ProductInternalAsync { + /** Service instance for ProductInternal. */ + public static final com.oracle.bmc.Service SERVICE = + com.oracle.bmc.Services.serviceBuilder() + .serviceName(ProductInternalClient.class.getName()) + .serviceEndpointPrefix("") + .serviceEndpointTemplate( + "https://cp.product-catalog.{region}.oci.{secondLevelDomain}") + .build(); + + private static final org.slf4j.Logger LOG = + org.slf4j.LoggerFactory.getLogger(ProductInternalAsyncClient.class); + + ProductInternalAsyncClient( + com.oracle.bmc.common.ClientBuilderBase builder, + com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider + authenticationDetailsProvider) { + super(builder, authenticationDetailsProvider); + } + + /** + * 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< + Builder, ProductInternalAsyncClient> { + private Builder(com.oracle.bmc.Service service) { + super(service); + final String packageName = "ociproductcatalog"; + com.oracle.bmc.internal.DeveloperToolConfiguration + .throwDisabledServiceExceptionIfAppropriate(packageName); + 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 ProductInternalAsyncClient build( + @jakarta.annotation.Nonnull + com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider + authenticationDetailsProvider) { + return new ProductInternalAsyncClient(this, authenticationDetailsProvider); + } + } + + @Override + public void setRegion(com.oracle.bmc.Region region) { + super.setRegion(region); + } + + @Override + public void setRegion(String regionId) { + super.setRegion(regionId); + } + + @Override + public java.util.concurrent.Future + changeInternalProductCompartment( + ChangeInternalProductCompartmentRequest request, + final com.oracle.bmc.responses.AsyncHandler< + ChangeInternalProductCompartmentRequest, + ChangeInternalProductCompartmentResponse> + handler) { + + Validate.notBlank(request.getProductId(), "productId must not be blank"); + Objects.requireNonNull( + request.getChangeProductCompartmentDetails(), + "changeProductCompartmentDetails is required"); + + return clientCall(request, ChangeInternalProductCompartmentResponse::builder) + .logger(LOG, "changeInternalProductCompartment") + .serviceDetails("ProductInternal", "ChangeInternalProductCompartment", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(ChangeInternalProductCompartmentRequest::builder) + .basePath("/20250610") + .appendPathParam("internal") + .appendPathParam("product") + .appendPathParam(request.getProductId()) + .appendPathParam("actions") + .appendPathParam("changeCompartment") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("if-match", request.getIfMatch()) + .hasBody() + .handleResponseHeaderString( + "opc-request-id", + ChangeInternalProductCompartmentResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future createInternalProduct( + CreateInternalProductRequest request, + final com.oracle.bmc.responses.AsyncHandler< + CreateInternalProductRequest, CreateInternalProductResponse> + handler) { + Objects.requireNonNull( + request.getCreateProductDetails(), "createProductDetails is required"); + + return clientCall(request, CreateInternalProductResponse::builder) + .logger(LOG, "createInternalProduct") + .serviceDetails("ProductInternal", "CreateInternalProduct", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(CreateInternalProductRequest::builder) + .basePath("/20250610") + .appendPathParam("internal") + .appendPathParam("product") + .accept("application/json") + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("opc-request-id", request.getOpcRequestId()) + .hasBody() + .handleBody( + com.oracle.bmc.ociproductcatalog.model.Product.class, + CreateInternalProductResponse.Builder::product) + .handleResponseHeaderString( + "opc-request-id", CreateInternalProductResponse.Builder::opcRequestId) + .handleResponseHeaderString("etag", CreateInternalProductResponse.Builder::etag) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future deleteInternalProduct( + DeleteInternalProductRequest request, + final com.oracle.bmc.responses.AsyncHandler< + DeleteInternalProductRequest, DeleteInternalProductResponse> + handler) { + + Validate.notBlank(request.getProductId(), "productId must not be blank"); + + return clientCall(request, DeleteInternalProductResponse::builder) + .logger(LOG, "deleteInternalProduct") + .serviceDetails("ProductInternal", "DeleteInternalProduct", "") + .method(com.oracle.bmc.http.client.Method.DELETE) + .requestBuilder(DeleteInternalProductRequest::builder) + .basePath("/20250610") + .appendPathParam("internal") + .appendPathParam("product") + .appendPathParam(request.getProductId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("if-match", request.getIfMatch()) + .handleResponseHeaderString( + "opc-request-id", DeleteInternalProductResponse.Builder::opcRequestId) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future getInternalProduct( + GetInternalProductRequest request, + final com.oracle.bmc.responses.AsyncHandler< + GetInternalProductRequest, GetInternalProductResponse> + handler) { + + Validate.notBlank(request.getProductId(), "productId must not be blank"); + + return clientCall(request, GetInternalProductResponse::builder) + .logger(LOG, "getInternalProduct") + .serviceDetails("ProductInternal", "GetInternalProduct", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(GetInternalProductRequest::builder) + .basePath("/20250610") + .appendPathParam("internal") + .appendPathParam("product") + .appendPathParam(request.getProductId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.ociproductcatalog.model.Product.class, + GetInternalProductResponse.Builder::product) + .handleResponseHeaderString( + "opc-request-id", GetInternalProductResponse.Builder::opcRequestId) + .handleResponseHeaderString("etag", GetInternalProductResponse.Builder::etag) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future listInternalProducts( + ListInternalProductsRequest request, + final com.oracle.bmc.responses.AsyncHandler< + ListInternalProductsRequest, ListInternalProductsResponse> + handler) { + Objects.requireNonNull(request.getCompartmentId(), "compartmentId is required"); + + return clientCall(request, ListInternalProductsResponse::builder) + .logger(LOG, "listInternalProducts") + .serviceDetails("ProductInternal", "ListInternalProducts", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListInternalProductsRequest::builder) + .basePath("/20250610") + .appendPathParam("internal") + .appendPathParam("products") + .appendQueryParam("page", request.getPage()) + .appendQueryParam("limit", request.getLimit()) + .appendQueryParam("name", request.getName()) + .appendQueryParam("compartmentId", request.getCompartmentId()) + .appendQueryParam("id", request.getId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .handleBody( + com.oracle.bmc.ociproductcatalog.model.ProductCollection.class, + ListInternalProductsResponse.Builder::productCollection) + .handleResponseHeaderString( + "opc-request-id", ListInternalProductsResponse.Builder::opcRequestId) + .handleResponseHeaderString( + "opc-next-page", ListInternalProductsResponse.Builder::opcNextPage) + .callAsync(handler); + } + + @Override + public java.util.concurrent.Future updateInternalProduct( + UpdateInternalProductRequest request, + final com.oracle.bmc.responses.AsyncHandler< + UpdateInternalProductRequest, UpdateInternalProductResponse> + handler) { + + Validate.notBlank(request.getProductId(), "productId must not be blank"); + Objects.requireNonNull( + request.getUpdateProductDetails(), "updateProductDetails is required"); + + return clientCall(request, UpdateInternalProductResponse::builder) + .logger(LOG, "updateInternalProduct") + .serviceDetails("ProductInternal", "UpdateInternalProduct", "") + .method(com.oracle.bmc.http.client.Method.PUT) + .requestBuilder(UpdateInternalProductRequest::builder) + .basePath("/20250610") + .appendPathParam("internal") + .appendPathParam("product") + .appendPathParam(request.getProductId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("if-match", request.getIfMatch()) + .hasBody() + .handleBody( + com.oracle.bmc.ociproductcatalog.model.Product.class, + UpdateInternalProductResponse.Builder::product) + .handleResponseHeaderString( + "opc-request-id", UpdateInternalProductResponse.Builder::opcRequestId) + .handleResponseHeaderString("etag", UpdateInternalProductResponse.Builder::etag) + .callAsync(handler); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductInternalAsyncClient( + com.oracle.bmc.auth.BasicAuthenticationDetailsProvider authenticationDetailsProvider) { + this(builder(), authenticationDetailsProvider); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductInternalAsyncClient( + com.oracle.bmc.auth.BasicAuthenticationDetailsProvider authenticationDetailsProvider, + com.oracle.bmc.ClientConfiguration configuration) { + this(builder().configuration(configuration), authenticationDetailsProvider); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductInternalAsyncClient( + com.oracle.bmc.auth.BasicAuthenticationDetailsProvider authenticationDetailsProvider, + com.oracle.bmc.ClientConfiguration configuration, + com.oracle.bmc.http.ClientConfigurator clientConfigurator) { + this( + builder().configuration(configuration).clientConfigurator(clientConfigurator), + authenticationDetailsProvider); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductInternalAsyncClient( + 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( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory), + authenticationDetailsProvider); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @param additionalClientConfigurators {@link Builder#additionalClientConfigurators} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductInternalAsyncClient( + 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( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory) + .additionalClientConfigurators(additionalClientConfigurators), + authenticationDetailsProvider); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @param additionalClientConfigurators {@link Builder#additionalClientConfigurators} + * @param endpoint {@link Builder#endpoint} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductInternalAsyncClient( + 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( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory) + .additionalClientConfigurators(additionalClientConfigurators) + .endpoint(endpoint), + authenticationDetailsProvider); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @param additionalClientConfigurators {@link Builder#additionalClientConfigurators} + * @param endpoint {@link Builder#endpoint} + * @param signingStrategyRequestSignerFactories {@link + * Builder#signingStrategyRequestSignerFactories} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductInternalAsyncClient( + 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( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory) + .additionalClientConfigurators(additionalClientConfigurators) + .endpoint(endpoint) + .signingStrategyRequestSignerFactories( + signingStrategyRequestSignerFactories), + authenticationDetailsProvider); + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductInternalClient.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductInternalClient.java new file mode 100644 index 00000000000..97e8178b234 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductInternalClient.java @@ -0,0 +1,427 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog; + +import com.oracle.bmc.util.internal.Validate; +import com.oracle.bmc.ociproductcatalog.requests.*; +import com.oracle.bmc.ociproductcatalog.responses.*; +import com.oracle.bmc.circuitbreaker.CircuitBreakerConfiguration; +import com.oracle.bmc.util.CircuitBreakerUtils; + +import java.util.Objects; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class ProductInternalClient extends com.oracle.bmc.http.internal.BaseSyncClient + implements ProductInternal { + /** Service instance for ProductInternal. */ + public static final com.oracle.bmc.Service SERVICE = + com.oracle.bmc.Services.serviceBuilder() + .serviceName(ProductInternalClient.class.getName()) + .serviceEndpointPrefix("") + .serviceEndpointTemplate( + "https://cp.product-catalog.{region}.oci.{secondLevelDomain}") + .build(); + + private static final org.slf4j.Logger LOG = + org.slf4j.LoggerFactory.getLogger(ProductInternalClient.class); + + private final ProductInternalPaginators paginators; + + ProductInternalClient( + com.oracle.bmc.common.ClientBuilderBase builder, + com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider + authenticationDetailsProvider) { + super( + builder, + authenticationDetailsProvider, + CircuitBreakerUtils.DEFAULT_CIRCUIT_BREAKER_CONFIGURATION); + + this.paginators = new ProductInternalPaginators(this); + } + + /** + * 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); + final String packageName = "ociproductcatalog"; + com.oracle.bmc.internal.DeveloperToolConfiguration + .throwDisabledServiceExceptionIfAppropriate(packageName); + 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 ProductInternalClient build( + @jakarta.annotation.Nonnull + com.oracle.bmc.auth.AbstractAuthenticationDetailsProvider + authenticationDetailsProvider) { + return new ProductInternalClient(this, authenticationDetailsProvider); + } + } + + @Override + public void setRegion(com.oracle.bmc.Region region) { + super.setRegion(region); + } + + @Override + public void setRegion(String regionId) { + super.setRegion(regionId); + } + + @Override + public ChangeInternalProductCompartmentResponse changeInternalProductCompartment( + ChangeInternalProductCompartmentRequest request) { + + Validate.notBlank(request.getProductId(), "productId must not be blank"); + Objects.requireNonNull( + request.getChangeProductCompartmentDetails(), + "changeProductCompartmentDetails is required"); + + return clientCall(request, ChangeInternalProductCompartmentResponse::builder) + .logger(LOG, "changeInternalProductCompartment") + .serviceDetails("ProductInternal", "ChangeInternalProductCompartment", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(ChangeInternalProductCompartmentRequest::builder) + .basePath("/20250610") + .appendPathParam("internal") + .appendPathParam("product") + .appendPathParam(request.getProductId()) + .appendPathParam("actions") + .appendPathParam("changeCompartment") + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("if-match", request.getIfMatch()) + .operationUsesDefaultRetries() + .hasBody() + .handleResponseHeaderString( + "opc-request-id", + ChangeInternalProductCompartmentResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public CreateInternalProductResponse createInternalProduct( + CreateInternalProductRequest request) { + Objects.requireNonNull( + request.getCreateProductDetails(), "createProductDetails is required"); + + return clientCall(request, CreateInternalProductResponse::builder) + .logger(LOG, "createInternalProduct") + .serviceDetails("ProductInternal", "CreateInternalProduct", "") + .method(com.oracle.bmc.http.client.Method.POST) + .requestBuilder(CreateInternalProductRequest::builder) + .basePath("/20250610") + .appendPathParam("internal") + .appendPathParam("product") + .accept("application/json") + .appendHeader("opc-retry-token", request.getOpcRetryToken()) + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .hasBody() + .handleBody( + com.oracle.bmc.ociproductcatalog.model.Product.class, + CreateInternalProductResponse.Builder::product) + .handleResponseHeaderString( + "opc-request-id", CreateInternalProductResponse.Builder::opcRequestId) + .handleResponseHeaderString("etag", CreateInternalProductResponse.Builder::etag) + .callSync(); + } + + @Override + public DeleteInternalProductResponse deleteInternalProduct( + DeleteInternalProductRequest request) { + + Validate.notBlank(request.getProductId(), "productId must not be blank"); + + return clientCall(request, DeleteInternalProductResponse::builder) + .logger(LOG, "deleteInternalProduct") + .serviceDetails("ProductInternal", "DeleteInternalProduct", "") + .method(com.oracle.bmc.http.client.Method.DELETE) + .requestBuilder(DeleteInternalProductRequest::builder) + .basePath("/20250610") + .appendPathParam("internal") + .appendPathParam("product") + .appendPathParam(request.getProductId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("if-match", request.getIfMatch()) + .operationUsesDefaultRetries() + .handleResponseHeaderString( + "opc-request-id", DeleteInternalProductResponse.Builder::opcRequestId) + .callSync(); + } + + @Override + public GetInternalProductResponse getInternalProduct(GetInternalProductRequest request) { + + Validate.notBlank(request.getProductId(), "productId must not be blank"); + + return clientCall(request, GetInternalProductResponse::builder) + .logger(LOG, "getInternalProduct") + .serviceDetails("ProductInternal", "GetInternalProduct", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(GetInternalProductRequest::builder) + .basePath("/20250610") + .appendPathParam("internal") + .appendPathParam("product") + .appendPathParam(request.getProductId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleBody( + com.oracle.bmc.ociproductcatalog.model.Product.class, + GetInternalProductResponse.Builder::product) + .handleResponseHeaderString( + "opc-request-id", GetInternalProductResponse.Builder::opcRequestId) + .handleResponseHeaderString("etag", GetInternalProductResponse.Builder::etag) + .callSync(); + } + + @Override + public ListInternalProductsResponse listInternalProducts(ListInternalProductsRequest request) { + Objects.requireNonNull(request.getCompartmentId(), "compartmentId is required"); + + return clientCall(request, ListInternalProductsResponse::builder) + .logger(LOG, "listInternalProducts") + .serviceDetails("ProductInternal", "ListInternalProducts", "") + .method(com.oracle.bmc.http.client.Method.GET) + .requestBuilder(ListInternalProductsRequest::builder) + .basePath("/20250610") + .appendPathParam("internal") + .appendPathParam("products") + .appendQueryParam("page", request.getPage()) + .appendQueryParam("limit", request.getLimit()) + .appendQueryParam("name", request.getName()) + .appendQueryParam("compartmentId", request.getCompartmentId()) + .appendQueryParam("id", request.getId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .operationUsesDefaultRetries() + .handleBody( + com.oracle.bmc.ociproductcatalog.model.ProductCollection.class, + ListInternalProductsResponse.Builder::productCollection) + .handleResponseHeaderString( + "opc-request-id", ListInternalProductsResponse.Builder::opcRequestId) + .handleResponseHeaderString( + "opc-next-page", ListInternalProductsResponse.Builder::opcNextPage) + .callSync(); + } + + @Override + public UpdateInternalProductResponse updateInternalProduct( + UpdateInternalProductRequest request) { + + Validate.notBlank(request.getProductId(), "productId must not be blank"); + Objects.requireNonNull( + request.getUpdateProductDetails(), "updateProductDetails is required"); + + return clientCall(request, UpdateInternalProductResponse::builder) + .logger(LOG, "updateInternalProduct") + .serviceDetails("ProductInternal", "UpdateInternalProduct", "") + .method(com.oracle.bmc.http.client.Method.PUT) + .requestBuilder(UpdateInternalProductRequest::builder) + .basePath("/20250610") + .appendPathParam("internal") + .appendPathParam("product") + .appendPathParam(request.getProductId()) + .accept("application/json") + .appendHeader("opc-request-id", request.getOpcRequestId()) + .appendHeader("if-match", request.getIfMatch()) + .operationUsesDefaultRetries() + .hasBody() + .handleBody( + com.oracle.bmc.ociproductcatalog.model.Product.class, + UpdateInternalProductResponse.Builder::product) + .handleResponseHeaderString( + "opc-request-id", UpdateInternalProductResponse.Builder::opcRequestId) + .handleResponseHeaderString("etag", UpdateInternalProductResponse.Builder::etag) + .callSync(); + } + + @Override + public ProductInternalPaginators getPaginators() { + return paginators; + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductInternalClient( + com.oracle.bmc.auth.BasicAuthenticationDetailsProvider authenticationDetailsProvider) { + this(builder(), authenticationDetailsProvider); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductInternalClient( + com.oracle.bmc.auth.BasicAuthenticationDetailsProvider authenticationDetailsProvider, + com.oracle.bmc.ClientConfiguration configuration) { + this(builder().configuration(configuration), authenticationDetailsProvider); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductInternalClient( + com.oracle.bmc.auth.BasicAuthenticationDetailsProvider authenticationDetailsProvider, + com.oracle.bmc.ClientConfiguration configuration, + com.oracle.bmc.http.ClientConfigurator clientConfigurator) { + this( + builder().configuration(configuration).clientConfigurator(clientConfigurator), + authenticationDetailsProvider); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductInternalClient( + 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( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory), + authenticationDetailsProvider); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @param additionalClientConfigurators {@link Builder#additionalClientConfigurators} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductInternalClient( + 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( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory) + .additionalClientConfigurators(additionalClientConfigurators), + authenticationDetailsProvider); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @param additionalClientConfigurators {@link Builder#additionalClientConfigurators} + * @param endpoint {@link Builder#endpoint} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductInternalClient( + 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( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory) + .additionalClientConfigurators(additionalClientConfigurators) + .endpoint(endpoint), + authenticationDetailsProvider); + } + + /** + * Create a new client instance. + * + * @param authenticationDetailsProvider The authentication details (see {@link Builder#build}) + * @param configuration {@link Builder#configuration} + * @param clientConfigurator {@link Builder#clientConfigurator} + * @param defaultRequestSignerFactory {@link Builder#requestSignerFactory} + * @param additionalClientConfigurators {@link Builder#additionalClientConfigurators} + * @param endpoint {@link Builder#endpoint} + * @param signingStrategyRequestSignerFactories {@link + * Builder#signingStrategyRequestSignerFactories} + * @deprecated Use the {@link #builder() builder} instead. + */ + @Deprecated + public ProductInternalClient( + 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( + builder() + .configuration(configuration) + .clientConfigurator(clientConfigurator) + .requestSignerFactory(defaultRequestSignerFactory) + .additionalClientConfigurators(additionalClientConfigurators) + .endpoint(endpoint) + .signingStrategyRequestSignerFactories( + signingStrategyRequestSignerFactories), + authenticationDetailsProvider); + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductInternalPaginators.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductInternalPaginators.java new file mode 100644 index 00000000000..35080845d9b --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductInternalPaginators.java @@ -0,0 +1,162 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog; + +import com.oracle.bmc.ociproductcatalog.requests.*; +import com.oracle.bmc.ociproductcatalog.responses.*; + +/** + * Collection of helper methods that can be used to provide an {@link java.lang.Iterable} interface + * to any list operations of ProductInternal 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. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class ProductInternalPaginators { + private final ProductInternal client; + + public ProductInternalPaginators(ProductInternal client) { + this.client = client; + } + + /** + * Creates a new iterable which will iterate over the responses received from the + * listInternalProducts 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 listInternalProductsResponseIterator( + final ListInternalProductsRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseIterable< + ListInternalProductsRequest.Builder, + ListInternalProductsRequest, + ListInternalProductsResponse>( + new java.util.function.Supplier() { + @Override + public ListInternalProductsRequest.Builder get() { + return ListInternalProductsRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListInternalProductsResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListInternalProductsRequest.Builder>, + ListInternalProductsRequest>() { + @Override + public ListInternalProductsRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListInternalProductsRequest.Builder> + input) { + if (input.getNextPageToken() == null) { + return input.getRequestBuilder().build(); + } else { + return input.getRequestBuilder() + .page(input.getNextPageToken().orElse(null)) + .build(); + } + } + }, + new java.util.function.Function< + ListInternalProductsRequest, ListInternalProductsResponse>() { + @Override + public ListInternalProductsResponse apply(ListInternalProductsRequest request) { + return client.listInternalProducts(request); + } + }); + } + + /** + * Creates a new iterable which will iterate over the {@link + * com.oracle.bmc.ociproductcatalog.model.ProductSummary} objects contained in responses from + * the listInternalProducts 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.ociproductcatalog.model.ProductSummary} objects contained in responses + * received from the service. + */ + public Iterable + listInternalProductsRecordIterator(final ListInternalProductsRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseRecordIterable< + ListInternalProductsRequest.Builder, + ListInternalProductsRequest, + ListInternalProductsResponse, + com.oracle.bmc.ociproductcatalog.model.ProductSummary>( + new java.util.function.Supplier() { + @Override + public ListInternalProductsRequest.Builder get() { + return ListInternalProductsRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListInternalProductsResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListInternalProductsRequest.Builder>, + ListInternalProductsRequest>() { + @Override + public ListInternalProductsRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListInternalProductsRequest.Builder> + input) { + if (input.getNextPageToken() == null) { + return input.getRequestBuilder().build(); + } else { + return input.getRequestBuilder() + .page(input.getNextPageToken().orElse(null)) + .build(); + } + } + }, + new java.util.function.Function< + ListInternalProductsRequest, ListInternalProductsResponse>() { + @Override + public ListInternalProductsResponse apply(ListInternalProductsRequest request) { + return client.listInternalProducts(request); + } + }, + new java.util.function.Function< + ListInternalProductsResponse, + java.util.List>() { + @Override + public java.util.List + apply(ListInternalProductsResponse response) { + return response.getProductCollection().getItems(); + } + }); + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductPaginators.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductPaginators.java new file mode 100644 index 00000000000..a009a46a124 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductPaginators.java @@ -0,0 +1,157 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog; + +import com.oracle.bmc.ociproductcatalog.requests.*; +import com.oracle.bmc.ociproductcatalog.responses.*; + +/** + * Collection of helper methods that can be used to provide an {@link java.lang.Iterable} interface + * to any list operations of Product 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. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class ProductPaginators { + private final Product client; + + public ProductPaginators(Product client) { + this.client = client; + } + + /** + * Creates a new iterable which will iterate over the responses received from the listProducts + * 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 listProductsResponseIterator( + final ListProductsRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseIterable< + ListProductsRequest.Builder, ListProductsRequest, ListProductsResponse>( + new java.util.function.Supplier() { + @Override + public ListProductsRequest.Builder get() { + return ListProductsRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListProductsResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListProductsRequest.Builder>, + ListProductsRequest>() { + @Override + public ListProductsRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListProductsRequest.Builder> + input) { + if (input.getNextPageToken() == null) { + return input.getRequestBuilder().build(); + } else { + return input.getRequestBuilder() + .page(input.getNextPageToken().orElse(null)) + .build(); + } + } + }, + new java.util.function.Function() { + @Override + public ListProductsResponse apply(ListProductsRequest request) { + return client.listProducts(request); + } + }); + } + + /** + * Creates a new iterable which will iterate over the {@link + * com.oracle.bmc.ociproductcatalog.model.ProductSummary} objects contained in responses from + * the listProducts 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.ociproductcatalog.model.ProductSummary} objects contained in responses + * received from the service. + */ + public Iterable + listProductsRecordIterator(final ListProductsRequest request) { + return new com.oracle.bmc.paginator.internal.ResponseRecordIterable< + ListProductsRequest.Builder, + ListProductsRequest, + ListProductsResponse, + com.oracle.bmc.ociproductcatalog.model.ProductSummary>( + new java.util.function.Supplier() { + @Override + public ListProductsRequest.Builder get() { + return ListProductsRequest.builder().copy(request); + } + }, + new java.util.function.Function() { + @Override + public String apply(ListProductsResponse response) { + return response.getOpcNextPage(); + } + }, + new java.util.function.Function< + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListProductsRequest.Builder>, + ListProductsRequest>() { + @Override + public ListProductsRequest apply( + com.oracle.bmc.paginator.internal.RequestBuilderAndToken< + ListProductsRequest.Builder> + input) { + if (input.getNextPageToken() == null) { + return input.getRequestBuilder().build(); + } else { + return input.getRequestBuilder() + .page(input.getNextPageToken().orElse(null)) + .build(); + } + } + }, + new java.util.function.Function() { + @Override + public ListProductsResponse apply(ListProductsRequest request) { + return client.listProducts(request); + } + }, + new java.util.function.Function< + ListProductsResponse, + java.util.List>() { + @Override + public java.util.List + apply(ListProductsResponse response) { + return response.getProductCollection().getItems(); + } + }); + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductWaiters.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductWaiters.java new file mode 100644 index 00000000000..d8cdcd9dde9 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/ProductWaiters.java @@ -0,0 +1,124 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog; + +import com.oracle.bmc.ociproductcatalog.requests.*; +import com.oracle.bmc.ociproductcatalog.responses.*; + +/** + * Collection of helper methods to produce {@link com.oracle.bmc.waiter.Waiter}s for different + * resources of Product. + * + *

The default configuration used is defined by {@link + * com.oracle.bmc.waiter.Waiters.Waiters#DEFAULT_POLLING_WAITER}. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class ProductWaiters { + private final java.util.concurrent.ExecutorService executorService; + private final Product client; + + public ProductWaiters(java.util.concurrent.ExecutorService executorService, Product client) { + this.executorService = executorService; + this.client = client; + } + + /** + * Creates a new {@link com.oracle.bmc.waiter.Waiter} using the default configuration. + * + * @param request the request to send + * @param targetStates the desired states to wait for. If multiple states are provided then the + * waiter will return once the resource reaches any of the provided states + * @return a new {@code Waiter} instance + */ + public com.oracle.bmc.waiter.Waiter forProduct( + GetProductRequest request, + com.oracle.bmc.ociproductcatalog.model.Product.LifecycleState... targetStates) { + com.oracle.bmc.util.internal.Validate.notEmpty( + targetStates, "At least one targetState must be provided"); + com.oracle.bmc.util.internal.Validate.noNullElements( + targetStates, "Null targetState values are not permitted"); + + return forProduct( + com.oracle.bmc.waiter.Waiters.DEFAULT_POLLING_WAITER, request, targetStates); + } + + /** + * Creates a new {@link com.oracle.bmc.waiter.Waiter} using the provided configuration. + * + * @param request the request to send + * @param targetState the desired state to wait for + * @param terminationStrategy the {@link com.oracle.bmc.waiter.TerminationStrategy} to use + * @param delayStrategy the {@link com.oracle.bmc.waiter.DelayStrategy} to use + * @return a new {@code com.oracle.bmc.waiter.Waiter} instance + */ + public com.oracle.bmc.waiter.Waiter forProduct( + GetProductRequest request, + com.oracle.bmc.ociproductcatalog.model.Product.LifecycleState targetState, + com.oracle.bmc.waiter.TerminationStrategy terminationStrategy, + com.oracle.bmc.waiter.DelayStrategy delayStrategy) { + com.oracle.bmc.util.internal.Validate.notNull( + targetState, "The targetState cannot be null"); + + return forProduct( + com.oracle.bmc.waiter.Waiters.newWaiter(terminationStrategy, delayStrategy), + request, + targetState); + } + + /** + * Creates a new {@link com.oracle.bmc.waiter.Waiter} using the provided configuration. + * + * @param request the request to send + * @param terminationStrategy the {@link com.oracle.bmc.waiter.TerminationStrategy} to use + * @param delayStrategy the {@link com.oracle.bmc.waiter.DelayStrategy} to use + * @param targetStates the desired states to wait for. The waiter will return once the resource + * reaches any of the provided states + * @return a new {@code com.oracle.bmc.waiter.Waiter} instance + */ + public com.oracle.bmc.waiter.Waiter forProduct( + GetProductRequest request, + com.oracle.bmc.waiter.TerminationStrategy terminationStrategy, + com.oracle.bmc.waiter.DelayStrategy delayStrategy, + com.oracle.bmc.ociproductcatalog.model.Product.LifecycleState... targetStates) { + com.oracle.bmc.util.internal.Validate.notEmpty( + targetStates, "At least one target state must be provided"); + com.oracle.bmc.util.internal.Validate.noNullElements( + targetStates, "Null target states are not permitted"); + + return forProduct( + com.oracle.bmc.waiter.Waiters.newWaiter(terminationStrategy, delayStrategy), + request, + targetStates); + } + + // Helper method to create a new Waiter for Product. + private com.oracle.bmc.waiter.Waiter forProduct( + com.oracle.bmc.waiter.BmcGenericWaiter waiter, + final GetProductRequest request, + final com.oracle.bmc.ociproductcatalog.model.Product.LifecycleState... targetStates) { + final java.util.Set + targetStatesSet = new java.util.HashSet<>(java.util.Arrays.asList(targetStates)); + + return new com.oracle.bmc.waiter.internal.SimpleWaiterImpl<>( + executorService, + waiter.toCallable( + () -> request, + new java.util.function.Function() { + @Override + public GetProductResponse apply(GetProductRequest request) { + return client.getProduct(request); + } + }, + new java.util.function.Predicate() { + @Override + public boolean test(GetProductResponse response) { + return targetStatesSet.contains( + response.getProduct().getLifecycleState()); + } + }, + false), + request); + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/AdminProduct.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/AdminProduct.java new file mode 100644 index 00000000000..070e3f5f194 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/AdminProduct.java @@ -0,0 +1,957 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.model; + +/** + * The properties of a product
+ * 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 Builder#__explicitlySet__}. The {@link + * #hashCode()} and {@link #equals(Object)} methods are implemented to take the explicitly set + * fields into account. The constructor, on the other hand, does not take the explicitly set fields + * into account (since the constructor cannot distinguish explicit {@code null} from unset {@code + * null}). + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = AdminProduct.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class AdminProduct extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "id", + "compartmentId", + "name", + "description", + "lifecycleState", + "lifecycleDetails", + "meterwithSKUs", + "serviceName", + "limits", + "timeCreated", + "timeUpdated", + "timeReady", + "timeLaunched", + "isExcluded", + "timeExcluded", + "freeformTags", + "definedTags", + "systemTags" + }) + public AdminProduct( + String id, + String compartmentId, + String name, + String description, + LifecycleState lifecycleState, + String lifecycleDetails, + java.util.List meterwithSKUs, + String serviceName, + java.util.List limits, + java.util.Date timeCreated, + java.util.Date timeUpdated, + java.util.Date timeReady, + java.util.Date timeLaunched, + Boolean isExcluded, + java.util.Date timeExcluded, + java.util.Map freeformTags, + java.util.Map> definedTags, + java.util.Map> systemTags) { + super(); + this.id = id; + this.compartmentId = compartmentId; + this.name = name; + this.description = description; + this.lifecycleState = lifecycleState; + this.lifecycleDetails = lifecycleDetails; + this.meterwithSKUs = meterwithSKUs; + this.serviceName = serviceName; + this.limits = limits; + this.timeCreated = timeCreated; + this.timeUpdated = timeUpdated; + this.timeReady = timeReady; + this.timeLaunched = timeLaunched; + this.isExcluded = isExcluded; + this.timeExcluded = timeExcluded; + this.freeformTags = freeformTags; + this.definedTags = definedTags; + this.systemTags = systemTags; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** OCID of the product */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private String id; + + /** + * OCID of the product + * + * @param id the value to set + * @return this builder + */ + public Builder id(String id) { + this.id = id; + this.__explicitlySet__.add("id"); + return this; + } + /** + * The OCID of the compartment (remember that the tenancy is simply the root compartment). + */ + @com.fasterxml.jackson.annotation.JsonProperty("compartmentId") + private String compartmentId; + + /** + * The OCID of the compartment (remember that the tenancy is simply the root compartment). + * + * @param compartmentId the value to set + * @return this builder + */ + public Builder compartmentId(String compartmentId) { + this.compartmentId = compartmentId; + this.__explicitlySet__.add("compartmentId"); + return this; + } + /** Name of the product, defined by service teams. Unique within one service */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private String name; + + /** + * Name of the product, defined by service teams. Unique within one service + * + * @param name the value to set + * @return this builder + */ + public Builder name(String name) { + this.name = name; + this.__explicitlySet__.add("name"); + return this; + } + /** description to the product */ + @com.fasterxml.jackson.annotation.JsonProperty("description") + private String description; + + /** + * description to the product + * + * @param description the value to set + * @return this builder + */ + public Builder description(String description) { + this.description = description; + this.__explicitlySet__.add("description"); + return this; + } + /** + * The status of a product following the OCI standard. ACTIVE: resources of this product can + * be used by the end customer. INACTIVE: resources of this product can't be used by the end + * customer. Product needs manual approval. NEEDS_ATTENTION: operator action is needed. + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private LifecycleState lifecycleState; + + /** + * The status of a product following the OCI standard. ACTIVE: resources of this product can + * be used by the end customer. INACTIVE: resources of this product can't be used by the end + * customer. Product needs manual approval. NEEDS_ATTENTION: operator action is needed. + * + * @param lifecycleState the value to set + * @return this builder + */ + public Builder lifecycleState(LifecycleState lifecycleState) { + this.lifecycleState = lifecycleState; + this.__explicitlySet__.add("lifecycleState"); + return this; + } + /** + * The displayed status of a product. lifecycleState to lifecycleDetails mapping: INACTIVE + * -> "Not yet launched" ACTIVE -> "Launched" NEEDS_ATTENTION -> "Pricing not set" + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleDetails") + private String lifecycleDetails; + + /** + * The displayed status of a product. lifecycleState to lifecycleDetails mapping: INACTIVE + * -> "Not yet launched" ACTIVE -> "Launched" NEEDS_ATTENTION -> "Pricing not set" + * + * @param lifecycleDetails the value to set + * @return this builder + */ + public Builder lifecycleDetails(String lifecycleDetails) { + this.lifecycleDetails = lifecycleDetails; + this.__explicitlySet__.add("lifecycleDetails"); + return this; + } + /** List of meters associated with this product, including SKU information */ + @com.fasterxml.jackson.annotation.JsonProperty("meterwithSKUs") + private java.util.List meterwithSKUs; + + /** + * List of meters associated with this product, including SKU information + * + * @param meterwithSKUs the value to set + * @return this builder + */ + public Builder meterwithSKUs(java.util.List meterwithSKUs) { + this.meterwithSKUs = meterwithSKUs; + this.__explicitlySet__.add("meterwithSKUs"); + return this; + } + /** Name of the metering service this product relates to. */ + @com.fasterxml.jackson.annotation.JsonProperty("serviceName") + private String serviceName; + + /** + * Name of the metering service this product relates to. + * + * @param serviceName the value to set + * @return this builder + */ + public Builder serviceName(String serviceName) { + this.serviceName = serviceName; + this.__explicitlySet__.add("serviceName"); + return this; + } + /** List of limits that this product is associated with. */ + @com.fasterxml.jackson.annotation.JsonProperty("limits") + private java.util.List limits; + + /** + * List of limits that this product is associated with. + * + * @param limits the value to set + * @return this builder + */ + public Builder limits(java.util.List limits) { + this.limits = limits; + this.__explicitlySet__.add("limits"); + return this; + } + /** Date and time when the product was created Example: {@code 2022-01-25T21:10:29.600Z} */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private java.util.Date timeCreated; + + /** + * Date and time when the product was created Example: {@code 2022-01-25T21:10:29.600Z} + * + * @param timeCreated the value to set + * @return this builder + */ + public Builder timeCreated(java.util.Date timeCreated) { + this.timeCreated = timeCreated; + this.__explicitlySet__.add("timeCreated"); + return this; + } + /** + * Date and time when the product was updated. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private java.util.Date timeUpdated; + + /** + * Date and time when the product was updated. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + * + * @param timeUpdated the value to set + * @return this builder + */ + public Builder timeUpdated(java.util.Date timeUpdated) { + this.timeUpdated = timeUpdated; + this.__explicitlySet__.add("timeUpdated"); + return this; + } + /** + * Date and time when the product was set to ready. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeReady") + private java.util.Date timeReady; + + /** + * Date and time when the product was set to ready. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + * + * @param timeReady the value to set + * @return this builder + */ + public Builder timeReady(java.util.Date timeReady) { + this.timeReady = timeReady; + this.__explicitlySet__.add("timeReady"); + return this; + } + /** + * Date and time when the product was launched. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeLaunched") + private java.util.Date timeLaunched; + + /** + * Date and time when the product was launched. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + * + * @param timeLaunched the value to set + * @return this builder + */ + public Builder timeLaunched(java.util.Date timeLaunched) { + this.timeLaunched = timeLaunched; + this.__explicitlySet__.add("timeLaunched"); + return this; + } + /** + * Whether the product is currently excluded from SKU processing flows. Nullable when the + * exclusion flag has not been explicitly set. + */ + @com.fasterxml.jackson.annotation.JsonProperty("isExcluded") + private Boolean isExcluded; + + /** + * Whether the product is currently excluded from SKU processing flows. Nullable when the + * exclusion flag has not been explicitly set. + * + * @param isExcluded the value to set + * @return this builder + */ + public Builder isExcluded(Boolean isExcluded) { + this.isExcluded = isExcluded; + this.__explicitlySet__.add("isExcluded"); + return this; + } + /** + * Date and time when the product was marked as excluded. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeExcluded") + private java.util.Date timeExcluded; + + /** + * Date and time when the product was marked as excluded. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + * + * @param timeExcluded the value to set + * @return this builder + */ + public Builder timeExcluded(java.util.Date timeExcluded) { + this.timeExcluded = timeExcluded; + this.__explicitlySet__.add("timeExcluded"); + return this; + } + /** + * Free-form tags for this resource. Each tag is a simple key-value pair with no predefined + * name, type, or namespace. For more information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Department": "Finance"}} + */ + @com.fasterxml.jackson.annotation.JsonProperty("freeformTags") + private java.util.Map freeformTags; + + /** + * Free-form tags for this resource. Each tag is a simple key-value pair with no predefined + * name, type, or namespace. For more information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Department": "Finance"}} + * + * @param freeformTags the value to set + * @return this builder + */ + public Builder freeformTags(java.util.Map freeformTags) { + this.freeformTags = freeformTags; + this.__explicitlySet__.add("freeformTags"); + return this; + } + /** + * Defined tags for this resource. Each key is predefined and scoped to a namespace. For + * more information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Operations": {"CostCenter": "42"}}} + */ + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + private java.util.Map> definedTags; + + /** + * Defined tags for this resource. Each key is predefined and scoped to a namespace. For + * more information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Operations": {"CostCenter": "42"}}} + * + * @param definedTags the value to set + * @return this builder + */ + public Builder definedTags( + java.util.Map> definedTags) { + this.definedTags = definedTags; + this.__explicitlySet__.add("definedTags"); + return this; + } + /** + * System tags for this resource. Each key is predefined and scoped to a namespace. + * + *

Example: {@code {"orcl-cloud": {"free-tier-retained": "true"}}} + */ + @com.fasterxml.jackson.annotation.JsonProperty("systemTags") + private java.util.Map> systemTags; + + /** + * System tags for this resource. Each key is predefined and scoped to a namespace. + * + *

Example: {@code {"orcl-cloud": {"free-tier-retained": "true"}}} + * + * @param systemTags the value to set + * @return this builder + */ + public Builder systemTags(java.util.Map> systemTags) { + this.systemTags = systemTags; + this.__explicitlySet__.add("systemTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public AdminProduct build() { + AdminProduct model = + new AdminProduct( + this.id, + this.compartmentId, + this.name, + this.description, + this.lifecycleState, + this.lifecycleDetails, + this.meterwithSKUs, + this.serviceName, + this.limits, + this.timeCreated, + this.timeUpdated, + this.timeReady, + this.timeLaunched, + this.isExcluded, + this.timeExcluded, + this.freeformTags, + this.definedTags, + this.systemTags); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(AdminProduct model) { + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + if (model.wasPropertyExplicitlySet("compartmentId")) { + this.compartmentId(model.getCompartmentId()); + } + if (model.wasPropertyExplicitlySet("name")) { + this.name(model.getName()); + } + if (model.wasPropertyExplicitlySet("description")) { + this.description(model.getDescription()); + } + if (model.wasPropertyExplicitlySet("lifecycleState")) { + this.lifecycleState(model.getLifecycleState()); + } + if (model.wasPropertyExplicitlySet("lifecycleDetails")) { + this.lifecycleDetails(model.getLifecycleDetails()); + } + if (model.wasPropertyExplicitlySet("meterwithSKUs")) { + this.meterwithSKUs(model.getMeterwithSKUs()); + } + if (model.wasPropertyExplicitlySet("serviceName")) { + this.serviceName(model.getServiceName()); + } + if (model.wasPropertyExplicitlySet("limits")) { + this.limits(model.getLimits()); + } + if (model.wasPropertyExplicitlySet("timeCreated")) { + this.timeCreated(model.getTimeCreated()); + } + if (model.wasPropertyExplicitlySet("timeUpdated")) { + this.timeUpdated(model.getTimeUpdated()); + } + if (model.wasPropertyExplicitlySet("timeReady")) { + this.timeReady(model.getTimeReady()); + } + if (model.wasPropertyExplicitlySet("timeLaunched")) { + this.timeLaunched(model.getTimeLaunched()); + } + if (model.wasPropertyExplicitlySet("isExcluded")) { + this.isExcluded(model.getIsExcluded()); + } + if (model.wasPropertyExplicitlySet("timeExcluded")) { + this.timeExcluded(model.getTimeExcluded()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + if (model.wasPropertyExplicitlySet("systemTags")) { + this.systemTags(model.getSystemTags()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** OCID of the product */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private final String id; + + /** + * OCID of the product + * + * @return the value + */ + public String getId() { + return id; + } + + /** The OCID of the compartment (remember that the tenancy is simply the root compartment). */ + @com.fasterxml.jackson.annotation.JsonProperty("compartmentId") + private final String compartmentId; + + /** + * The OCID of the compartment (remember that the tenancy is simply the root compartment). + * + * @return the value + */ + public String getCompartmentId() { + return compartmentId; + } + + /** Name of the product, defined by service teams. Unique within one service */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private final String name; + + /** + * Name of the product, defined by service teams. Unique within one service + * + * @return the value + */ + public String getName() { + return name; + } + + /** description to the product */ + @com.fasterxml.jackson.annotation.JsonProperty("description") + private final String description; + + /** + * description to the product + * + * @return the value + */ + public String getDescription() { + return description; + } + + /** + * The status of a product following the OCI standard. ACTIVE: resources of this product can be + * used by the end customer. INACTIVE: resources of this product can't be used by the end + * customer. Product needs manual approval. NEEDS_ATTENTION: operator action is needed. + */ + public enum LifecycleState implements com.oracle.bmc.http.internal.BmcEnum { + Active("ACTIVE"), + Inactive("INACTIVE"), + NeedsAttention("NEEDS_ATTENTION"), + + /** + * This value is used if a service returns a value for this enum that is not recognized by + * this version of the SDK. + */ + UnknownEnumValue(null); + + private static final org.slf4j.Logger LOG = + org.slf4j.LoggerFactory.getLogger(LifecycleState.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (LifecycleState v : LifecycleState.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + LifecycleState(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static LifecycleState create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'LifecycleState', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; + /** + * The status of a product following the OCI standard. ACTIVE: resources of this product can be + * used by the end customer. INACTIVE: resources of this product can't be used by the end + * customer. Product needs manual approval. NEEDS_ATTENTION: operator action is needed. + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private final LifecycleState lifecycleState; + + /** + * The status of a product following the OCI standard. ACTIVE: resources of this product can be + * used by the end customer. INACTIVE: resources of this product can't be used by the end + * customer. Product needs manual approval. NEEDS_ATTENTION: operator action is needed. + * + * @return the value + */ + public LifecycleState getLifecycleState() { + return lifecycleState; + } + + /** + * The displayed status of a product. lifecycleState to lifecycleDetails mapping: INACTIVE -> + * "Not yet launched" ACTIVE -> "Launched" NEEDS_ATTENTION -> "Pricing not set" + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleDetails") + private final String lifecycleDetails; + + /** + * The displayed status of a product. lifecycleState to lifecycleDetails mapping: INACTIVE -> + * "Not yet launched" ACTIVE -> "Launched" NEEDS_ATTENTION -> "Pricing not set" + * + * @return the value + */ + public String getLifecycleDetails() { + return lifecycleDetails; + } + + /** List of meters associated with this product, including SKU information */ + @com.fasterxml.jackson.annotation.JsonProperty("meterwithSKUs") + private final java.util.List meterwithSKUs; + + /** + * List of meters associated with this product, including SKU information + * + * @return the value + */ + public java.util.List getMeterwithSKUs() { + return meterwithSKUs; + } + + /** Name of the metering service this product relates to. */ + @com.fasterxml.jackson.annotation.JsonProperty("serviceName") + private final String serviceName; + + /** + * Name of the metering service this product relates to. + * + * @return the value + */ + public String getServiceName() { + return serviceName; + } + + /** List of limits that this product is associated with. */ + @com.fasterxml.jackson.annotation.JsonProperty("limits") + private final java.util.List limits; + + /** + * List of limits that this product is associated with. + * + * @return the value + */ + public java.util.List getLimits() { + return limits; + } + + /** Date and time when the product was created Example: {@code 2022-01-25T21:10:29.600Z} */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private final java.util.Date timeCreated; + + /** + * Date and time when the product was created Example: {@code 2022-01-25T21:10:29.600Z} + * + * @return the value + */ + public java.util.Date getTimeCreated() { + return timeCreated; + } + + /** + * Date and time when the product was updated. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private final java.util.Date timeUpdated; + + /** + * Date and time when the product was updated. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + * + * @return the value + */ + public java.util.Date getTimeUpdated() { + return timeUpdated; + } + + /** + * Date and time when the product was set to ready. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeReady") + private final java.util.Date timeReady; + + /** + * Date and time when the product was set to ready. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + * + * @return the value + */ + public java.util.Date getTimeReady() { + return timeReady; + } + + /** + * Date and time when the product was launched. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeLaunched") + private final java.util.Date timeLaunched; + + /** + * Date and time when the product was launched. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + * + * @return the value + */ + public java.util.Date getTimeLaunched() { + return timeLaunched; + } + + /** + * Whether the product is currently excluded from SKU processing flows. Nullable when the + * exclusion flag has not been explicitly set. + */ + @com.fasterxml.jackson.annotation.JsonProperty("isExcluded") + private final Boolean isExcluded; + + /** + * Whether the product is currently excluded from SKU processing flows. Nullable when the + * exclusion flag has not been explicitly set. + * + * @return the value + */ + public Boolean getIsExcluded() { + return isExcluded; + } + + /** + * Date and time when the product was marked as excluded. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeExcluded") + private final java.util.Date timeExcluded; + + /** + * Date and time when the product was marked as excluded. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + * + * @return the value + */ + public java.util.Date getTimeExcluded() { + return timeExcluded; + } + + /** + * Free-form tags for this resource. Each tag is a simple key-value pair with no predefined + * name, type, or namespace. For more information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Department": "Finance"}} + */ + @com.fasterxml.jackson.annotation.JsonProperty("freeformTags") + private final java.util.Map freeformTags; + + /** + * Free-form tags for this resource. Each tag is a simple key-value pair with no predefined + * name, type, or namespace. For more information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Department": "Finance"}} + * + * @return the value + */ + public java.util.Map getFreeformTags() { + return freeformTags; + } + + /** + * Defined tags for this resource. Each key is predefined and scoped to a namespace. For more + * information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Operations": {"CostCenter": "42"}}} + */ + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + private final java.util.Map> definedTags; + + /** + * Defined tags for this resource. Each key is predefined and scoped to a namespace. For more + * information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Operations": {"CostCenter": "42"}}} + * + * @return the value + */ + public java.util.Map> getDefinedTags() { + return definedTags; + } + + /** + * System tags for this resource. Each key is predefined and scoped to a namespace. + * + *

Example: {@code {"orcl-cloud": {"free-tier-retained": "true"}}} + */ + @com.fasterxml.jackson.annotation.JsonProperty("systemTags") + private final java.util.Map> systemTags; + + /** + * System tags for this resource. Each key is predefined and scoped to a namespace. + * + *

Example: {@code {"orcl-cloud": {"free-tier-retained": "true"}}} + * + * @return the value + */ + public java.util.Map> getSystemTags() { + return systemTags; + } + + @Override + public String toString() { + return this.toString(true); + } + + /** + * Return a string representation of the object. + * + * @param includeByteArrayContents true to include the full contents of byte arrays + * @return string representation + */ + public String toString(boolean includeByteArrayContents) { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("AdminProduct("); + sb.append("super=").append(super.toString()); + sb.append("id=").append(String.valueOf(this.id)); + sb.append(", compartmentId=").append(String.valueOf(this.compartmentId)); + sb.append(", name=").append(String.valueOf(this.name)); + sb.append(", description=").append(String.valueOf(this.description)); + sb.append(", lifecycleState=").append(String.valueOf(this.lifecycleState)); + sb.append(", lifecycleDetails=").append(String.valueOf(this.lifecycleDetails)); + sb.append(", meterwithSKUs=").append(String.valueOf(this.meterwithSKUs)); + sb.append(", serviceName=").append(String.valueOf(this.serviceName)); + sb.append(", limits=").append(String.valueOf(this.limits)); + sb.append(", timeCreated=").append(String.valueOf(this.timeCreated)); + sb.append(", timeUpdated=").append(String.valueOf(this.timeUpdated)); + sb.append(", timeReady=").append(String.valueOf(this.timeReady)); + sb.append(", timeLaunched=").append(String.valueOf(this.timeLaunched)); + sb.append(", isExcluded=").append(String.valueOf(this.isExcluded)); + sb.append(", timeExcluded=").append(String.valueOf(this.timeExcluded)); + sb.append(", freeformTags=").append(String.valueOf(this.freeformTags)); + sb.append(", definedTags=").append(String.valueOf(this.definedTags)); + sb.append(", systemTags=").append(String.valueOf(this.systemTags)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof AdminProduct)) { + return false; + } + + AdminProduct other = (AdminProduct) o; + return java.util.Objects.equals(this.id, other.id) + && java.util.Objects.equals(this.compartmentId, other.compartmentId) + && java.util.Objects.equals(this.name, other.name) + && java.util.Objects.equals(this.description, other.description) + && java.util.Objects.equals(this.lifecycleState, other.lifecycleState) + && java.util.Objects.equals(this.lifecycleDetails, other.lifecycleDetails) + && java.util.Objects.equals(this.meterwithSKUs, other.meterwithSKUs) + && java.util.Objects.equals(this.serviceName, other.serviceName) + && java.util.Objects.equals(this.limits, other.limits) + && java.util.Objects.equals(this.timeCreated, other.timeCreated) + && java.util.Objects.equals(this.timeUpdated, other.timeUpdated) + && java.util.Objects.equals(this.timeReady, other.timeReady) + && java.util.Objects.equals(this.timeLaunched, other.timeLaunched) + && java.util.Objects.equals(this.isExcluded, other.isExcluded) + && java.util.Objects.equals(this.timeExcluded, other.timeExcluded) + && java.util.Objects.equals(this.freeformTags, other.freeformTags) + && java.util.Objects.equals(this.definedTags, other.definedTags) + && java.util.Objects.equals(this.systemTags, other.systemTags) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.id == null ? 43 : this.id.hashCode()); + result = + (result * PRIME) + + (this.compartmentId == null ? 43 : this.compartmentId.hashCode()); + result = (result * PRIME) + (this.name == null ? 43 : this.name.hashCode()); + result = (result * PRIME) + (this.description == null ? 43 : this.description.hashCode()); + result = + (result * PRIME) + + (this.lifecycleState == null ? 43 : this.lifecycleState.hashCode()); + result = + (result * PRIME) + + (this.lifecycleDetails == null ? 43 : this.lifecycleDetails.hashCode()); + result = + (result * PRIME) + + (this.meterwithSKUs == null ? 43 : this.meterwithSKUs.hashCode()); + result = (result * PRIME) + (this.serviceName == null ? 43 : this.serviceName.hashCode()); + result = (result * PRIME) + (this.limits == null ? 43 : this.limits.hashCode()); + result = (result * PRIME) + (this.timeCreated == null ? 43 : this.timeCreated.hashCode()); + result = (result * PRIME) + (this.timeUpdated == null ? 43 : this.timeUpdated.hashCode()); + result = (result * PRIME) + (this.timeReady == null ? 43 : this.timeReady.hashCode()); + result = (result * PRIME) + (this.timeLaunched == null ? 43 : this.timeLaunched.hashCode()); + result = (result * PRIME) + (this.isExcluded == null ? 43 : this.isExcluded.hashCode()); + result = (result * PRIME) + (this.timeExcluded == null ? 43 : this.timeExcluded.hashCode()); + result = (result * PRIME) + (this.freeformTags == null ? 43 : this.freeformTags.hashCode()); + result = (result * PRIME) + (this.definedTags == null ? 43 : this.definedTags.hashCode()); + result = (result * PRIME) + (this.systemTags == null ? 43 : this.systemTags.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/AdminProductSummary.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/AdminProductSummary.java new file mode 100644 index 00000000000..be89f8ce83e --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/AdminProductSummary.java @@ -0,0 +1,959 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.model; + +/** + * The properties of a product returned by the admin get API
+ * 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 Builder#__explicitlySet__}. The {@link + * #hashCode()} and {@link #equals(Object)} methods are implemented to take the explicitly set + * fields into account. The constructor, on the other hand, does not take the explicitly set fields + * into account (since the constructor cannot distinguish explicit {@code null} from unset {@code + * null}). + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = AdminProductSummary.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class AdminProductSummary + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "id", + "compartmentId", + "name", + "description", + "lifecycleState", + "lifecycleDetails", + "meterwithSKUs", + "serviceName", + "limits", + "timeCreated", + "timeUpdated", + "timeReady", + "timeLaunched", + "isExcluded", + "timeExcluded", + "freeformTags", + "definedTags", + "systemTags" + }) + public AdminProductSummary( + String id, + String compartmentId, + String name, + String description, + LifecycleState lifecycleState, + String lifecycleDetails, + java.util.List meterwithSKUs, + String serviceName, + java.util.List limits, + java.util.Date timeCreated, + java.util.Date timeUpdated, + java.util.Date timeReady, + java.util.Date timeLaunched, + Boolean isExcluded, + java.util.Date timeExcluded, + java.util.Map freeformTags, + java.util.Map> definedTags, + java.util.Map> systemTags) { + super(); + this.id = id; + this.compartmentId = compartmentId; + this.name = name; + this.description = description; + this.lifecycleState = lifecycleState; + this.lifecycleDetails = lifecycleDetails; + this.meterwithSKUs = meterwithSKUs; + this.serviceName = serviceName; + this.limits = limits; + this.timeCreated = timeCreated; + this.timeUpdated = timeUpdated; + this.timeReady = timeReady; + this.timeLaunched = timeLaunched; + this.isExcluded = isExcluded; + this.timeExcluded = timeExcluded; + this.freeformTags = freeformTags; + this.definedTags = definedTags; + this.systemTags = systemTags; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** OCID of the product */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private String id; + + /** + * OCID of the product + * + * @param id the value to set + * @return this builder + */ + public Builder id(String id) { + this.id = id; + this.__explicitlySet__.add("id"); + return this; + } + /** + * The OCID of the compartment (remember that the tenancy is simply the root compartment). + */ + @com.fasterxml.jackson.annotation.JsonProperty("compartmentId") + private String compartmentId; + + /** + * The OCID of the compartment (remember that the tenancy is simply the root compartment). + * + * @param compartmentId the value to set + * @return this builder + */ + public Builder compartmentId(String compartmentId) { + this.compartmentId = compartmentId; + this.__explicitlySet__.add("compartmentId"); + return this; + } + /** Name of the product, defined by service teams. Unique within one service */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private String name; + + /** + * Name of the product, defined by service teams. Unique within one service + * + * @param name the value to set + * @return this builder + */ + public Builder name(String name) { + this.name = name; + this.__explicitlySet__.add("name"); + return this; + } + /** description to the product */ + @com.fasterxml.jackson.annotation.JsonProperty("description") + private String description; + + /** + * description to the product + * + * @param description the value to set + * @return this builder + */ + public Builder description(String description) { + this.description = description; + this.__explicitlySet__.add("description"); + return this; + } + /** + * The status of a product following the OCI standard. ACTIVE: resources of this product can + * be used by the end customer. INACTIVE: resources of this product can't be used by the end + * customer. Product needs manual approval. NEEDS_ATTENTION: operator action is needed. + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private LifecycleState lifecycleState; + + /** + * The status of a product following the OCI standard. ACTIVE: resources of this product can + * be used by the end customer. INACTIVE: resources of this product can't be used by the end + * customer. Product needs manual approval. NEEDS_ATTENTION: operator action is needed. + * + * @param lifecycleState the value to set + * @return this builder + */ + public Builder lifecycleState(LifecycleState lifecycleState) { + this.lifecycleState = lifecycleState; + this.__explicitlySet__.add("lifecycleState"); + return this; + } + /** + * The displayed status of a product. lifecycleState to lifecycleDetails mapping: INACTIVE + * -> "Not yet launched" ACTIVE -> "Launched" NEEDS_ATTENTION -> "Pricing not set" + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleDetails") + private String lifecycleDetails; + + /** + * The displayed status of a product. lifecycleState to lifecycleDetails mapping: INACTIVE + * -> "Not yet launched" ACTIVE -> "Launched" NEEDS_ATTENTION -> "Pricing not set" + * + * @param lifecycleDetails the value to set + * @return this builder + */ + public Builder lifecycleDetails(String lifecycleDetails) { + this.lifecycleDetails = lifecycleDetails; + this.__explicitlySet__.add("lifecycleDetails"); + return this; + } + /** List of meters associated with this product, including SKU information */ + @com.fasterxml.jackson.annotation.JsonProperty("meterwithSKUs") + private java.util.List meterwithSKUs; + + /** + * List of meters associated with this product, including SKU information + * + * @param meterwithSKUs the value to set + * @return this builder + */ + public Builder meterwithSKUs(java.util.List meterwithSKUs) { + this.meterwithSKUs = meterwithSKUs; + this.__explicitlySet__.add("meterwithSKUs"); + return this; + } + /** Name of the metering service this product relates to. */ + @com.fasterxml.jackson.annotation.JsonProperty("serviceName") + private String serviceName; + + /** + * Name of the metering service this product relates to. + * + * @param serviceName the value to set + * @return this builder + */ + public Builder serviceName(String serviceName) { + this.serviceName = serviceName; + this.__explicitlySet__.add("serviceName"); + return this; + } + /** List of limits that this product is associated with. */ + @com.fasterxml.jackson.annotation.JsonProperty("limits") + private java.util.List limits; + + /** + * List of limits that this product is associated with. + * + * @param limits the value to set + * @return this builder + */ + public Builder limits(java.util.List limits) { + this.limits = limits; + this.__explicitlySet__.add("limits"); + return this; + } + /** Date and time when the product was created Example: {@code 2022-01-25T21:10:29.600Z} */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private java.util.Date timeCreated; + + /** + * Date and time when the product was created Example: {@code 2022-01-25T21:10:29.600Z} + * + * @param timeCreated the value to set + * @return this builder + */ + public Builder timeCreated(java.util.Date timeCreated) { + this.timeCreated = timeCreated; + this.__explicitlySet__.add("timeCreated"); + return this; + } + /** + * Date and time when the product was updated. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private java.util.Date timeUpdated; + + /** + * Date and time when the product was updated. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + * + * @param timeUpdated the value to set + * @return this builder + */ + public Builder timeUpdated(java.util.Date timeUpdated) { + this.timeUpdated = timeUpdated; + this.__explicitlySet__.add("timeUpdated"); + return this; + } + /** + * Date and time when the product was set to ready. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeReady") + private java.util.Date timeReady; + + /** + * Date and time when the product was set to ready. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + * + * @param timeReady the value to set + * @return this builder + */ + public Builder timeReady(java.util.Date timeReady) { + this.timeReady = timeReady; + this.__explicitlySet__.add("timeReady"); + return this; + } + /** + * Date and time when the product was launched. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeLaunched") + private java.util.Date timeLaunched; + + /** + * Date and time when the product was launched. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + * + * @param timeLaunched the value to set + * @return this builder + */ + public Builder timeLaunched(java.util.Date timeLaunched) { + this.timeLaunched = timeLaunched; + this.__explicitlySet__.add("timeLaunched"); + return this; + } + /** + * Whether the product is currently excluded from SKU processing flows. Nullable when the + * exclusion flag has not been explicitly set. + */ + @com.fasterxml.jackson.annotation.JsonProperty("isExcluded") + private Boolean isExcluded; + + /** + * Whether the product is currently excluded from SKU processing flows. Nullable when the + * exclusion flag has not been explicitly set. + * + * @param isExcluded the value to set + * @return this builder + */ + public Builder isExcluded(Boolean isExcluded) { + this.isExcluded = isExcluded; + this.__explicitlySet__.add("isExcluded"); + return this; + } + /** + * Date and time when the product was marked as excluded. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeExcluded") + private java.util.Date timeExcluded; + + /** + * Date and time when the product was marked as excluded. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + * + * @param timeExcluded the value to set + * @return this builder + */ + public Builder timeExcluded(java.util.Date timeExcluded) { + this.timeExcluded = timeExcluded; + this.__explicitlySet__.add("timeExcluded"); + return this; + } + /** + * Free-form tags for this resource. Each tag is a simple key-value pair with no predefined + * name, type, or namespace. For more information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Department": "Finance"}} + */ + @com.fasterxml.jackson.annotation.JsonProperty("freeformTags") + private java.util.Map freeformTags; + + /** + * Free-form tags for this resource. Each tag is a simple key-value pair with no predefined + * name, type, or namespace. For more information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Department": "Finance"}} + * + * @param freeformTags the value to set + * @return this builder + */ + public Builder freeformTags(java.util.Map freeformTags) { + this.freeformTags = freeformTags; + this.__explicitlySet__.add("freeformTags"); + return this; + } + /** + * Defined tags for this resource. Each key is predefined and scoped to a namespace. For + * more information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Operations": {"CostCenter": "42"}}} + */ + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + private java.util.Map> definedTags; + + /** + * Defined tags for this resource. Each key is predefined and scoped to a namespace. For + * more information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Operations": {"CostCenter": "42"}}} + * + * @param definedTags the value to set + * @return this builder + */ + public Builder definedTags( + java.util.Map> definedTags) { + this.definedTags = definedTags; + this.__explicitlySet__.add("definedTags"); + return this; + } + /** + * System tags for this resource. Each key is predefined and scoped to a namespace. + * + *

Example: {@code {"orcl-cloud": {"free-tier-retained": "true"}}} + */ + @com.fasterxml.jackson.annotation.JsonProperty("systemTags") + private java.util.Map> systemTags; + + /** + * System tags for this resource. Each key is predefined and scoped to a namespace. + * + *

Example: {@code {"orcl-cloud": {"free-tier-retained": "true"}}} + * + * @param systemTags the value to set + * @return this builder + */ + public Builder systemTags(java.util.Map> systemTags) { + this.systemTags = systemTags; + this.__explicitlySet__.add("systemTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public AdminProductSummary build() { + AdminProductSummary model = + new AdminProductSummary( + this.id, + this.compartmentId, + this.name, + this.description, + this.lifecycleState, + this.lifecycleDetails, + this.meterwithSKUs, + this.serviceName, + this.limits, + this.timeCreated, + this.timeUpdated, + this.timeReady, + this.timeLaunched, + this.isExcluded, + this.timeExcluded, + this.freeformTags, + this.definedTags, + this.systemTags); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(AdminProductSummary model) { + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + if (model.wasPropertyExplicitlySet("compartmentId")) { + this.compartmentId(model.getCompartmentId()); + } + if (model.wasPropertyExplicitlySet("name")) { + this.name(model.getName()); + } + if (model.wasPropertyExplicitlySet("description")) { + this.description(model.getDescription()); + } + if (model.wasPropertyExplicitlySet("lifecycleState")) { + this.lifecycleState(model.getLifecycleState()); + } + if (model.wasPropertyExplicitlySet("lifecycleDetails")) { + this.lifecycleDetails(model.getLifecycleDetails()); + } + if (model.wasPropertyExplicitlySet("meterwithSKUs")) { + this.meterwithSKUs(model.getMeterwithSKUs()); + } + if (model.wasPropertyExplicitlySet("serviceName")) { + this.serviceName(model.getServiceName()); + } + if (model.wasPropertyExplicitlySet("limits")) { + this.limits(model.getLimits()); + } + if (model.wasPropertyExplicitlySet("timeCreated")) { + this.timeCreated(model.getTimeCreated()); + } + if (model.wasPropertyExplicitlySet("timeUpdated")) { + this.timeUpdated(model.getTimeUpdated()); + } + if (model.wasPropertyExplicitlySet("timeReady")) { + this.timeReady(model.getTimeReady()); + } + if (model.wasPropertyExplicitlySet("timeLaunched")) { + this.timeLaunched(model.getTimeLaunched()); + } + if (model.wasPropertyExplicitlySet("isExcluded")) { + this.isExcluded(model.getIsExcluded()); + } + if (model.wasPropertyExplicitlySet("timeExcluded")) { + this.timeExcluded(model.getTimeExcluded()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + if (model.wasPropertyExplicitlySet("systemTags")) { + this.systemTags(model.getSystemTags()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** OCID of the product */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private final String id; + + /** + * OCID of the product + * + * @return the value + */ + public String getId() { + return id; + } + + /** The OCID of the compartment (remember that the tenancy is simply the root compartment). */ + @com.fasterxml.jackson.annotation.JsonProperty("compartmentId") + private final String compartmentId; + + /** + * The OCID of the compartment (remember that the tenancy is simply the root compartment). + * + * @return the value + */ + public String getCompartmentId() { + return compartmentId; + } + + /** Name of the product, defined by service teams. Unique within one service */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private final String name; + + /** + * Name of the product, defined by service teams. Unique within one service + * + * @return the value + */ + public String getName() { + return name; + } + + /** description to the product */ + @com.fasterxml.jackson.annotation.JsonProperty("description") + private final String description; + + /** + * description to the product + * + * @return the value + */ + public String getDescription() { + return description; + } + + /** + * The status of a product following the OCI standard. ACTIVE: resources of this product can be + * used by the end customer. INACTIVE: resources of this product can't be used by the end + * customer. Product needs manual approval. NEEDS_ATTENTION: operator action is needed. + */ + public enum LifecycleState implements com.oracle.bmc.http.internal.BmcEnum { + Active("ACTIVE"), + Inactive("INACTIVE"), + NeedsAttention("NEEDS_ATTENTION"), + + /** + * This value is used if a service returns a value for this enum that is not recognized by + * this version of the SDK. + */ + UnknownEnumValue(null); + + private static final org.slf4j.Logger LOG = + org.slf4j.LoggerFactory.getLogger(LifecycleState.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (LifecycleState v : LifecycleState.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + LifecycleState(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static LifecycleState create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'LifecycleState', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; + /** + * The status of a product following the OCI standard. ACTIVE: resources of this product can be + * used by the end customer. INACTIVE: resources of this product can't be used by the end + * customer. Product needs manual approval. NEEDS_ATTENTION: operator action is needed. + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private final LifecycleState lifecycleState; + + /** + * The status of a product following the OCI standard. ACTIVE: resources of this product can be + * used by the end customer. INACTIVE: resources of this product can't be used by the end + * customer. Product needs manual approval. NEEDS_ATTENTION: operator action is needed. + * + * @return the value + */ + public LifecycleState getLifecycleState() { + return lifecycleState; + } + + /** + * The displayed status of a product. lifecycleState to lifecycleDetails mapping: INACTIVE -> + * "Not yet launched" ACTIVE -> "Launched" NEEDS_ATTENTION -> "Pricing not set" + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleDetails") + private final String lifecycleDetails; + + /** + * The displayed status of a product. lifecycleState to lifecycleDetails mapping: INACTIVE -> + * "Not yet launched" ACTIVE -> "Launched" NEEDS_ATTENTION -> "Pricing not set" + * + * @return the value + */ + public String getLifecycleDetails() { + return lifecycleDetails; + } + + /** List of meters associated with this product, including SKU information */ + @com.fasterxml.jackson.annotation.JsonProperty("meterwithSKUs") + private final java.util.List meterwithSKUs; + + /** + * List of meters associated with this product, including SKU information + * + * @return the value + */ + public java.util.List getMeterwithSKUs() { + return meterwithSKUs; + } + + /** Name of the metering service this product relates to. */ + @com.fasterxml.jackson.annotation.JsonProperty("serviceName") + private final String serviceName; + + /** + * Name of the metering service this product relates to. + * + * @return the value + */ + public String getServiceName() { + return serviceName; + } + + /** List of limits that this product is associated with. */ + @com.fasterxml.jackson.annotation.JsonProperty("limits") + private final java.util.List limits; + + /** + * List of limits that this product is associated with. + * + * @return the value + */ + public java.util.List getLimits() { + return limits; + } + + /** Date and time when the product was created Example: {@code 2022-01-25T21:10:29.600Z} */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private final java.util.Date timeCreated; + + /** + * Date and time when the product was created Example: {@code 2022-01-25T21:10:29.600Z} + * + * @return the value + */ + public java.util.Date getTimeCreated() { + return timeCreated; + } + + /** + * Date and time when the product was updated. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeUpdated") + private final java.util.Date timeUpdated; + + /** + * Date and time when the product was updated. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + * + * @return the value + */ + public java.util.Date getTimeUpdated() { + return timeUpdated; + } + + /** + * Date and time when the product was set to ready. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeReady") + private final java.util.Date timeReady; + + /** + * Date and time when the product was set to ready. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + * + * @return the value + */ + public java.util.Date getTimeReady() { + return timeReady; + } + + /** + * Date and time when the product was launched. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeLaunched") + private final java.util.Date timeLaunched; + + /** + * Date and time when the product was launched. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + * + * @return the value + */ + public java.util.Date getTimeLaunched() { + return timeLaunched; + } + + /** + * Whether the product is currently excluded from SKU processing flows. Nullable when the + * exclusion flag has not been explicitly set. + */ + @com.fasterxml.jackson.annotation.JsonProperty("isExcluded") + private final Boolean isExcluded; + + /** + * Whether the product is currently excluded from SKU processing flows. Nullable when the + * exclusion flag has not been explicitly set. + * + * @return the value + */ + public Boolean getIsExcluded() { + return isExcluded; + } + + /** + * Date and time when the product was marked as excluded. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeExcluded") + private final java.util.Date timeExcluded; + + /** + * Date and time when the product was marked as excluded. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + * + * @return the value + */ + public java.util.Date getTimeExcluded() { + return timeExcluded; + } + + /** + * Free-form tags for this resource. Each tag is a simple key-value pair with no predefined + * name, type, or namespace. For more information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Department": "Finance"}} + */ + @com.fasterxml.jackson.annotation.JsonProperty("freeformTags") + private final java.util.Map freeformTags; + + /** + * Free-form tags for this resource. Each tag is a simple key-value pair with no predefined + * name, type, or namespace. For more information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Department": "Finance"}} + * + * @return the value + */ + public java.util.Map getFreeformTags() { + return freeformTags; + } + + /** + * Defined tags for this resource. Each key is predefined and scoped to a namespace. For more + * information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Operations": {"CostCenter": "42"}}} + */ + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + private final java.util.Map> definedTags; + + /** + * Defined tags for this resource. Each key is predefined and scoped to a namespace. For more + * information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Operations": {"CostCenter": "42"}}} + * + * @return the value + */ + public java.util.Map> getDefinedTags() { + return definedTags; + } + + /** + * System tags for this resource. Each key is predefined and scoped to a namespace. + * + *

Example: {@code {"orcl-cloud": {"free-tier-retained": "true"}}} + */ + @com.fasterxml.jackson.annotation.JsonProperty("systemTags") + private final java.util.Map> systemTags; + + /** + * System tags for this resource. Each key is predefined and scoped to a namespace. + * + *

Example: {@code {"orcl-cloud": {"free-tier-retained": "true"}}} + * + * @return the value + */ + public java.util.Map> getSystemTags() { + return systemTags; + } + + @Override + public String toString() { + return this.toString(true); + } + + /** + * Return a string representation of the object. + * + * @param includeByteArrayContents true to include the full contents of byte arrays + * @return string representation + */ + public String toString(boolean includeByteArrayContents) { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("AdminProductSummary("); + sb.append("super=").append(super.toString()); + sb.append("id=").append(String.valueOf(this.id)); + sb.append(", compartmentId=").append(String.valueOf(this.compartmentId)); + sb.append(", name=").append(String.valueOf(this.name)); + sb.append(", description=").append(String.valueOf(this.description)); + sb.append(", lifecycleState=").append(String.valueOf(this.lifecycleState)); + sb.append(", lifecycleDetails=").append(String.valueOf(this.lifecycleDetails)); + sb.append(", meterwithSKUs=").append(String.valueOf(this.meterwithSKUs)); + sb.append(", serviceName=").append(String.valueOf(this.serviceName)); + sb.append(", limits=").append(String.valueOf(this.limits)); + sb.append(", timeCreated=").append(String.valueOf(this.timeCreated)); + sb.append(", timeUpdated=").append(String.valueOf(this.timeUpdated)); + sb.append(", timeReady=").append(String.valueOf(this.timeReady)); + sb.append(", timeLaunched=").append(String.valueOf(this.timeLaunched)); + sb.append(", isExcluded=").append(String.valueOf(this.isExcluded)); + sb.append(", timeExcluded=").append(String.valueOf(this.timeExcluded)); + sb.append(", freeformTags=").append(String.valueOf(this.freeformTags)); + sb.append(", definedTags=").append(String.valueOf(this.definedTags)); + sb.append(", systemTags=").append(String.valueOf(this.systemTags)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof AdminProductSummary)) { + return false; + } + + AdminProductSummary other = (AdminProductSummary) o; + return java.util.Objects.equals(this.id, other.id) + && java.util.Objects.equals(this.compartmentId, other.compartmentId) + && java.util.Objects.equals(this.name, other.name) + && java.util.Objects.equals(this.description, other.description) + && java.util.Objects.equals(this.lifecycleState, other.lifecycleState) + && java.util.Objects.equals(this.lifecycleDetails, other.lifecycleDetails) + && java.util.Objects.equals(this.meterwithSKUs, other.meterwithSKUs) + && java.util.Objects.equals(this.serviceName, other.serviceName) + && java.util.Objects.equals(this.limits, other.limits) + && java.util.Objects.equals(this.timeCreated, other.timeCreated) + && java.util.Objects.equals(this.timeUpdated, other.timeUpdated) + && java.util.Objects.equals(this.timeReady, other.timeReady) + && java.util.Objects.equals(this.timeLaunched, other.timeLaunched) + && java.util.Objects.equals(this.isExcluded, other.isExcluded) + && java.util.Objects.equals(this.timeExcluded, other.timeExcluded) + && java.util.Objects.equals(this.freeformTags, other.freeformTags) + && java.util.Objects.equals(this.definedTags, other.definedTags) + && java.util.Objects.equals(this.systemTags, other.systemTags) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.id == null ? 43 : this.id.hashCode()); + result = + (result * PRIME) + + (this.compartmentId == null ? 43 : this.compartmentId.hashCode()); + result = (result * PRIME) + (this.name == null ? 43 : this.name.hashCode()); + result = (result * PRIME) + (this.description == null ? 43 : this.description.hashCode()); + result = + (result * PRIME) + + (this.lifecycleState == null ? 43 : this.lifecycleState.hashCode()); + result = + (result * PRIME) + + (this.lifecycleDetails == null ? 43 : this.lifecycleDetails.hashCode()); + result = + (result * PRIME) + + (this.meterwithSKUs == null ? 43 : this.meterwithSKUs.hashCode()); + result = (result * PRIME) + (this.serviceName == null ? 43 : this.serviceName.hashCode()); + result = (result * PRIME) + (this.limits == null ? 43 : this.limits.hashCode()); + result = (result * PRIME) + (this.timeCreated == null ? 43 : this.timeCreated.hashCode()); + result = (result * PRIME) + (this.timeUpdated == null ? 43 : this.timeUpdated.hashCode()); + result = (result * PRIME) + (this.timeReady == null ? 43 : this.timeReady.hashCode()); + result = (result * PRIME) + (this.timeLaunched == null ? 43 : this.timeLaunched.hashCode()); + result = (result * PRIME) + (this.isExcluded == null ? 43 : this.isExcluded.hashCode()); + result = (result * PRIME) + (this.timeExcluded == null ? 43 : this.timeExcluded.hashCode()); + result = (result * PRIME) + (this.freeformTags == null ? 43 : this.freeformTags.hashCode()); + result = (result * PRIME) + (this.definedTags == null ? 43 : this.definedTags.hashCode()); + result = (result * PRIME) + (this.systemTags == null ? 43 : this.systemTags.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/ChangeProductCompartmentDetails.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/ChangeProductCompartmentDetails.java new file mode 100644 index 00000000000..9fcec47c077 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/ChangeProductCompartmentDetails.java @@ -0,0 +1,137 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.model; + +/** + * The details to change the product's compartment.
+ * 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 Builder#__explicitlySet__}. The {@link + * #hashCode()} and {@link #equals(Object)} methods are implemented to take the explicitly set + * fields into account. The constructor, on the other hand, does not take the explicitly set fields + * into account (since the constructor cannot distinguish explicit {@code null} from unset {@code + * null}). + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = ChangeProductCompartmentDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class ChangeProductCompartmentDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"newCompartmentId"}) + public ChangeProductCompartmentDetails(String newCompartmentId) { + super(); + this.newCompartmentId = newCompartmentId; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** The new product compartment OCID. */ + @com.fasterxml.jackson.annotation.JsonProperty("newCompartmentId") + private String newCompartmentId; + + /** + * The new product compartment OCID. + * + * @param newCompartmentId the value to set + * @return this builder + */ + public Builder newCompartmentId(String newCompartmentId) { + this.newCompartmentId = newCompartmentId; + this.__explicitlySet__.add("newCompartmentId"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public ChangeProductCompartmentDetails build() { + ChangeProductCompartmentDetails model = + new ChangeProductCompartmentDetails(this.newCompartmentId); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(ChangeProductCompartmentDetails model) { + if (model.wasPropertyExplicitlySet("newCompartmentId")) { + this.newCompartmentId(model.getNewCompartmentId()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** The new product compartment OCID. */ + @com.fasterxml.jackson.annotation.JsonProperty("newCompartmentId") + private final String newCompartmentId; + + /** + * The new product compartment OCID. + * + * @return the value + */ + public String getNewCompartmentId() { + return newCompartmentId; + } + + @Override + public String toString() { + return this.toString(true); + } + + /** + * Return a string representation of the object. + * + * @param includeByteArrayContents true to include the full contents of byte arrays + * @return string representation + */ + public String toString(boolean includeByteArrayContents) { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("ChangeProductCompartmentDetails("); + sb.append("super=").append(super.toString()); + sb.append("newCompartmentId=").append(String.valueOf(this.newCompartmentId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ChangeProductCompartmentDetails)) { + return false; + } + + ChangeProductCompartmentDetails other = (ChangeProductCompartmentDetails) o; + return java.util.Objects.equals(this.newCompartmentId, other.newCompartmentId) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = + (result * PRIME) + + (this.newCompartmentId == null ? 43 : this.newCompartmentId.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/CreateProductDetails.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/CreateProductDetails.java new file mode 100644 index 00000000000..9429e710fce --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/CreateProductDetails.java @@ -0,0 +1,469 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.model; + +/** + * The properties of a product
+ * 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 Builder#__explicitlySet__}. The {@link + * #hashCode()} and {@link #equals(Object)} methods are implemented to take the explicitly set + * fields into account. The constructor, on the other hand, does not take the explicitly set fields + * into account (since the constructor cannot distinguish explicit {@code null} from unset {@code + * null}). + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = CreateProductDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class CreateProductDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "compartmentId", + "name", + "description", + "meters", + "serviceName", + "limits", + "backfillEligibility", + "isExcluded" + }) + public CreateProductDetails( + String compartmentId, + String name, + String description, + java.util.List meters, + String serviceName, + java.util.List limits, + BackfillEligibility backfillEligibility, + Boolean isExcluded) { + super(); + this.compartmentId = compartmentId; + this.name = name; + this.description = description; + this.meters = meters; + this.serviceName = serviceName; + this.limits = limits; + this.backfillEligibility = backfillEligibility; + this.isExcluded = isExcluded; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** + * The OCID of the compartment (remember that the tenancy is simply the root compartment). + */ + @com.fasterxml.jackson.annotation.JsonProperty("compartmentId") + private String compartmentId; + + /** + * The OCID of the compartment (remember that the tenancy is simply the root compartment). + * + * @param compartmentId the value to set + * @return this builder + */ + public Builder compartmentId(String compartmentId) { + this.compartmentId = compartmentId; + this.__explicitlySet__.add("compartmentId"); + return this; + } + /** Name of the product, defined by service teams. Unique within one service */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private String name; + + /** + * Name of the product, defined by service teams. Unique within one service + * + * @param name the value to set + * @return this builder + */ + public Builder name(String name) { + this.name = name; + this.__explicitlySet__.add("name"); + return this; + } + /** description to the product */ + @com.fasterxml.jackson.annotation.JsonProperty("description") + private String description; + + /** + * description to the product + * + * @param description the value to set + * @return this builder + */ + public Builder description(String description) { + this.description = description; + this.__explicitlySet__.add("description"); + return this; + } + /** List of meters associated with this product */ + @com.fasterxml.jackson.annotation.JsonProperty("meters") + private java.util.List meters; + + /** + * List of meters associated with this product + * + * @param meters the value to set + * @return this builder + */ + public Builder meters(java.util.List meters) { + this.meters = meters; + this.__explicitlySet__.add("meters"); + return this; + } + /** Name of the metering service this product relates to. */ + @com.fasterxml.jackson.annotation.JsonProperty("serviceName") + private String serviceName; + + /** + * Name of the metering service this product relates to. + * + * @param serviceName the value to set + * @return this builder + */ + public Builder serviceName(String serviceName) { + this.serviceName = serviceName; + this.__explicitlySet__.add("serviceName"); + return this; + } + /** List of limits that this product is associated with. */ + @com.fasterxml.jackson.annotation.JsonProperty("limits") + private java.util.List limits; + + /** + * List of limits that this product is associated with. + * + * @param limits the value to set + * @return this builder + */ + public Builder limits(java.util.List limits) { + this.limits = limits; + this.__explicitlySet__.add("limits"); + return this; + } + /** + * Optional create-time signal that marks the product as eligible for the backfill flow in + * existing Alloy regions. Omit this field to preserve the current create behavior. Final + * runtime backfill and auto-enable decisions remain worker-side. + */ + @com.fasterxml.jackson.annotation.JsonProperty("backfillEligibility") + private BackfillEligibility backfillEligibility; + + /** + * Optional create-time signal that marks the product as eligible for the backfill flow in + * existing Alloy regions. Omit this field to preserve the current create behavior. Final + * runtime backfill and auto-enable decisions remain worker-side. + * + * @param backfillEligibility the value to set + * @return this builder + */ + public Builder backfillEligibility(BackfillEligibility backfillEligibility) { + this.backfillEligibility = backfillEligibility; + this.__explicitlySet__.add("backfillEligibility"); + return this; + } + /** + * Optional create-time exclusion flag. When true, the product is created in an excluded + * state. Omit this field to preserve backward-compatible create behavior. + */ + @com.fasterxml.jackson.annotation.JsonProperty("isExcluded") + private Boolean isExcluded; + + /** + * Optional create-time exclusion flag. When true, the product is created in an excluded + * state. Omit this field to preserve backward-compatible create behavior. + * + * @param isExcluded the value to set + * @return this builder + */ + public Builder isExcluded(Boolean isExcluded) { + this.isExcluded = isExcluded; + this.__explicitlySet__.add("isExcluded"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public CreateProductDetails build() { + CreateProductDetails model = + new CreateProductDetails( + this.compartmentId, + this.name, + this.description, + this.meters, + this.serviceName, + this.limits, + this.backfillEligibility, + this.isExcluded); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(CreateProductDetails model) { + if (model.wasPropertyExplicitlySet("compartmentId")) { + this.compartmentId(model.getCompartmentId()); + } + if (model.wasPropertyExplicitlySet("name")) { + this.name(model.getName()); + } + if (model.wasPropertyExplicitlySet("description")) { + this.description(model.getDescription()); + } + if (model.wasPropertyExplicitlySet("meters")) { + this.meters(model.getMeters()); + } + if (model.wasPropertyExplicitlySet("serviceName")) { + this.serviceName(model.getServiceName()); + } + if (model.wasPropertyExplicitlySet("limits")) { + this.limits(model.getLimits()); + } + if (model.wasPropertyExplicitlySet("backfillEligibility")) { + this.backfillEligibility(model.getBackfillEligibility()); + } + if (model.wasPropertyExplicitlySet("isExcluded")) { + this.isExcluded(model.getIsExcluded()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** The OCID of the compartment (remember that the tenancy is simply the root compartment). */ + @com.fasterxml.jackson.annotation.JsonProperty("compartmentId") + private final String compartmentId; + + /** + * The OCID of the compartment (remember that the tenancy is simply the root compartment). + * + * @return the value + */ + public String getCompartmentId() { + return compartmentId; + } + + /** Name of the product, defined by service teams. Unique within one service */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private final String name; + + /** + * Name of the product, defined by service teams. Unique within one service + * + * @return the value + */ + public String getName() { + return name; + } + + /** description to the product */ + @com.fasterxml.jackson.annotation.JsonProperty("description") + private final String description; + + /** + * description to the product + * + * @return the value + */ + public String getDescription() { + return description; + } + + /** List of meters associated with this product */ + @com.fasterxml.jackson.annotation.JsonProperty("meters") + private final java.util.List meters; + + /** + * List of meters associated with this product + * + * @return the value + */ + public java.util.List getMeters() { + return meters; + } + + /** Name of the metering service this product relates to. */ + @com.fasterxml.jackson.annotation.JsonProperty("serviceName") + private final String serviceName; + + /** + * Name of the metering service this product relates to. + * + * @return the value + */ + public String getServiceName() { + return serviceName; + } + + /** List of limits that this product is associated with. */ + @com.fasterxml.jackson.annotation.JsonProperty("limits") + private final java.util.List limits; + + /** + * List of limits that this product is associated with. + * + * @return the value + */ + public java.util.List getLimits() { + return limits; + } + + /** + * Optional create-time signal that marks the product as eligible for the backfill flow in + * existing Alloy regions. Omit this field to preserve the current create behavior. Final + * runtime backfill and auto-enable decisions remain worker-side. + */ + public enum BackfillEligibility implements com.oracle.bmc.http.internal.BmcEnum { + BackfillEligible("BACKFILL_ELIGIBLE"), + ; + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (BackfillEligibility v : BackfillEligibility.values()) { + map.put(v.getValue(), v); + } + } + + BackfillEligibility(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static BackfillEligibility create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + throw new IllegalArgumentException("Invalid BackfillEligibility: " + key); + } + }; + /** + * Optional create-time signal that marks the product as eligible for the backfill flow in + * existing Alloy regions. Omit this field to preserve the current create behavior. Final + * runtime backfill and auto-enable decisions remain worker-side. + */ + @com.fasterxml.jackson.annotation.JsonProperty("backfillEligibility") + private final BackfillEligibility backfillEligibility; + + /** + * Optional create-time signal that marks the product as eligible for the backfill flow in + * existing Alloy regions. Omit this field to preserve the current create behavior. Final + * runtime backfill and auto-enable decisions remain worker-side. + * + * @return the value + */ + public BackfillEligibility getBackfillEligibility() { + return backfillEligibility; + } + + /** + * Optional create-time exclusion flag. When true, the product is created in an excluded state. + * Omit this field to preserve backward-compatible create behavior. + */ + @com.fasterxml.jackson.annotation.JsonProperty("isExcluded") + private final Boolean isExcluded; + + /** + * Optional create-time exclusion flag. When true, the product is created in an excluded state. + * Omit this field to preserve backward-compatible create behavior. + * + * @return the value + */ + public Boolean getIsExcluded() { + return isExcluded; + } + + @Override + public String toString() { + return this.toString(true); + } + + /** + * Return a string representation of the object. + * + * @param includeByteArrayContents true to include the full contents of byte arrays + * @return string representation + */ + public String toString(boolean includeByteArrayContents) { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("CreateProductDetails("); + sb.append("super=").append(super.toString()); + sb.append("compartmentId=").append(String.valueOf(this.compartmentId)); + sb.append(", name=").append(String.valueOf(this.name)); + sb.append(", description=").append(String.valueOf(this.description)); + sb.append(", meters=").append(String.valueOf(this.meters)); + sb.append(", serviceName=").append(String.valueOf(this.serviceName)); + sb.append(", limits=").append(String.valueOf(this.limits)); + sb.append(", backfillEligibility=").append(String.valueOf(this.backfillEligibility)); + sb.append(", isExcluded=").append(String.valueOf(this.isExcluded)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateProductDetails)) { + return false; + } + + CreateProductDetails other = (CreateProductDetails) o; + return java.util.Objects.equals(this.compartmentId, other.compartmentId) + && java.util.Objects.equals(this.name, other.name) + && java.util.Objects.equals(this.description, other.description) + && java.util.Objects.equals(this.meters, other.meters) + && java.util.Objects.equals(this.serviceName, other.serviceName) + && java.util.Objects.equals(this.limits, other.limits) + && java.util.Objects.equals(this.backfillEligibility, other.backfillEligibility) + && java.util.Objects.equals(this.isExcluded, other.isExcluded) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = + (result * PRIME) + + (this.compartmentId == null ? 43 : this.compartmentId.hashCode()); + result = (result * PRIME) + (this.name == null ? 43 : this.name.hashCode()); + result = (result * PRIME) + (this.description == null ? 43 : this.description.hashCode()); + result = (result * PRIME) + (this.meters == null ? 43 : this.meters.hashCode()); + result = (result * PRIME) + (this.serviceName == null ? 43 : this.serviceName.hashCode()); + result = (result * PRIME) + (this.limits == null ? 43 : this.limits.hashCode()); + result = + (result * PRIME) + + (this.backfillEligibility == null + ? 43 + : this.backfillEligibility.hashCode()); + result = (result * PRIME) + (this.isExcluded == null ? 43 : this.isExcluded.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/Limit.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/Limit.java new file mode 100644 index 00000000000..0933db127c8 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/Limit.java @@ -0,0 +1,171 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.model; + +/** + * Limit that the use of a resource is controlled with
+ * 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 Builder#__explicitlySet__}. The {@link + * #hashCode()} and {@link #equals(Object)} methods are implemented to take the explicitly set + * fields into account. The constructor, on the other hand, does not take the explicitly set fields + * into account (since the constructor cannot distinguish explicit {@code null} from unset {@code + * null}). + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = Limit.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class Limit extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"publicLimitName", "publicServiceName"}) + public Limit(String publicLimitName, String publicServiceName) { + super(); + this.publicLimitName = publicLimitName; + this.publicServiceName = publicServiceName; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** public name of the limit */ + @com.fasterxml.jackson.annotation.JsonProperty("publicLimitName") + private String publicLimitName; + + /** + * public name of the limit + * + * @param publicLimitName the value to set + * @return this builder + */ + public Builder publicLimitName(String publicLimitName) { + this.publicLimitName = publicLimitName; + this.__explicitlySet__.add("publicLimitName"); + return this; + } + /** public name of the limit service */ + @com.fasterxml.jackson.annotation.JsonProperty("publicServiceName") + private String publicServiceName; + + /** + * public name of the limit service + * + * @param publicServiceName the value to set + * @return this builder + */ + public Builder publicServiceName(String publicServiceName) { + this.publicServiceName = publicServiceName; + this.__explicitlySet__.add("publicServiceName"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public Limit build() { + Limit model = new Limit(this.publicLimitName, this.publicServiceName); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(Limit model) { + if (model.wasPropertyExplicitlySet("publicLimitName")) { + this.publicLimitName(model.getPublicLimitName()); + } + if (model.wasPropertyExplicitlySet("publicServiceName")) { + this.publicServiceName(model.getPublicServiceName()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** public name of the limit */ + @com.fasterxml.jackson.annotation.JsonProperty("publicLimitName") + private final String publicLimitName; + + /** + * public name of the limit + * + * @return the value + */ + public String getPublicLimitName() { + return publicLimitName; + } + + /** public name of the limit service */ + @com.fasterxml.jackson.annotation.JsonProperty("publicServiceName") + private final String publicServiceName; + + /** + * public name of the limit service + * + * @return the value + */ + public String getPublicServiceName() { + return publicServiceName; + } + + @Override + public String toString() { + return this.toString(true); + } + + /** + * Return a string representation of the object. + * + * @param includeByteArrayContents true to include the full contents of byte arrays + * @return string representation + */ + public String toString(boolean includeByteArrayContents) { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("Limit("); + sb.append("super=").append(super.toString()); + sb.append("publicLimitName=").append(String.valueOf(this.publicLimitName)); + sb.append(", publicServiceName=").append(String.valueOf(this.publicServiceName)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof Limit)) { + return false; + } + + Limit other = (Limit) o; + return java.util.Objects.equals(this.publicLimitName, other.publicLimitName) + && java.util.Objects.equals(this.publicServiceName, other.publicServiceName) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = + (result * PRIME) + + (this.publicLimitName == null ? 43 : this.publicLimitName.hashCode()); + result = + (result * PRIME) + + (this.publicServiceName == null ? 43 : this.publicServiceName.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/Meter.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/Meter.java new file mode 100644 index 00000000000..5281d8742ec --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/Meter.java @@ -0,0 +1,131 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.model; + +/** + * Meter defined in metering service
+ * 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 Builder#__explicitlySet__}. The {@link + * #hashCode()} and {@link #equals(Object)} methods are implemented to take the explicitly set + * fields into account. The constructor, on the other hand, does not take the explicitly set fields + * into account (since the constructor cannot distinguish explicit {@code null} from unset {@code + * null}). + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = Meter.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class Meter extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"name"}) + public Meter(String name) { + super(); + this.name = name; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Name of the meter */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private String name; + + /** + * Name of the meter + * + * @param name the value to set + * @return this builder + */ + public Builder name(String name) { + this.name = name; + this.__explicitlySet__.add("name"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public Meter build() { + Meter model = new Meter(this.name); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(Meter model) { + if (model.wasPropertyExplicitlySet("name")) { + this.name(model.getName()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Name of the meter */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private final String name; + + /** + * Name of the meter + * + * @return the value + */ + public String getName() { + return name; + } + + @Override + public String toString() { + return this.toString(true); + } + + /** + * Return a string representation of the object. + * + * @param includeByteArrayContents true to include the full contents of byte arrays + * @return string representation + */ + public String toString(boolean includeByteArrayContents) { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("Meter("); + sb.append("super=").append(super.toString()); + sb.append("name=").append(String.valueOf(this.name)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof Meter)) { + return false; + } + + Meter other = (Meter) o; + return java.util.Objects.equals(this.name, other.name) && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.name == null ? 43 : this.name.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/MeterWithSKU.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/MeterWithSKU.java new file mode 100644 index 00000000000..53ec27854fe --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/MeterWithSKU.java @@ -0,0 +1,204 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.model; + +/** + * Meter defined in metering service with the associated SKU
+ * 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 Builder#__explicitlySet__}. The {@link + * #hashCode()} and {@link #equals(Object)} methods are implemented to take the explicitly set + * fields into account. The constructor, on the other hand, does not take the explicitly set fields + * into account (since the constructor cannot distinguish explicit {@code null} from unset {@code + * null}). + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = MeterWithSKU.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class MeterWithSKU extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"name", "skuBNumber", "skuDescription"}) + public MeterWithSKU(String name, String skuBNumber, String skuDescription) { + super(); + this.name = name; + this.skuBNumber = skuBNumber; + this.skuDescription = skuDescription; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Name of the meter */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private String name; + + /** + * Name of the meter + * + * @param name the value to set + * @return this builder + */ + public Builder name(String name) { + this.name = name; + this.__explicitlySet__.add("name"); + return this; + } + /** B number of the SKU associated with the meter */ + @com.fasterxml.jackson.annotation.JsonProperty("skuBNumber") + private String skuBNumber; + + /** + * B number of the SKU associated with the meter + * + * @param skuBNumber the value to set + * @return this builder + */ + public Builder skuBNumber(String skuBNumber) { + this.skuBNumber = skuBNumber; + this.__explicitlySet__.add("skuBNumber"); + return this; + } + /** Description of the SKU associated with the meter */ + @com.fasterxml.jackson.annotation.JsonProperty("skuDescription") + private String skuDescription; + + /** + * Description of the SKU associated with the meter + * + * @param skuDescription the value to set + * @return this builder + */ + public Builder skuDescription(String skuDescription) { + this.skuDescription = skuDescription; + this.__explicitlySet__.add("skuDescription"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public MeterWithSKU build() { + MeterWithSKU model = new MeterWithSKU(this.name, this.skuBNumber, this.skuDescription); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(MeterWithSKU model) { + if (model.wasPropertyExplicitlySet("name")) { + this.name(model.getName()); + } + if (model.wasPropertyExplicitlySet("skuBNumber")) { + this.skuBNumber(model.getSkuBNumber()); + } + if (model.wasPropertyExplicitlySet("skuDescription")) { + this.skuDescription(model.getSkuDescription()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Name of the meter */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private final String name; + + /** + * Name of the meter + * + * @return the value + */ + public String getName() { + return name; + } + + /** B number of the SKU associated with the meter */ + @com.fasterxml.jackson.annotation.JsonProperty("skuBNumber") + private final String skuBNumber; + + /** + * B number of the SKU associated with the meter + * + * @return the value + */ + public String getSkuBNumber() { + return skuBNumber; + } + + /** Description of the SKU associated with the meter */ + @com.fasterxml.jackson.annotation.JsonProperty("skuDescription") + private final String skuDescription; + + /** + * Description of the SKU associated with the meter + * + * @return the value + */ + public String getSkuDescription() { + return skuDescription; + } + + @Override + public String toString() { + return this.toString(true); + } + + /** + * Return a string representation of the object. + * + * @param includeByteArrayContents true to include the full contents of byte arrays + * @return string representation + */ + public String toString(boolean includeByteArrayContents) { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("MeterWithSKU("); + sb.append("super=").append(super.toString()); + sb.append("name=").append(String.valueOf(this.name)); + sb.append(", skuBNumber=").append(String.valueOf(this.skuBNumber)); + sb.append(", skuDescription=").append(String.valueOf(this.skuDescription)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof MeterWithSKU)) { + return false; + } + + MeterWithSKU other = (MeterWithSKU) o; + return java.util.Objects.equals(this.name, other.name) + && java.util.Objects.equals(this.skuBNumber, other.skuBNumber) + && java.util.Objects.equals(this.skuDescription, other.skuDescription) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.name == null ? 43 : this.name.hashCode()); + result = (result * PRIME) + (this.skuBNumber == null ? 43 : this.skuBNumber.hashCode()); + result = + (result * PRIME) + + (this.skuDescription == null ? 43 : this.skuDescription.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/Product.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/Product.java new file mode 100644 index 00000000000..f842cd905c4 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/Product.java @@ -0,0 +1,783 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.model; + +/** + * The fields of a product to be displayed to the operator in OCI Console
+ * 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 Builder#__explicitlySet__}. The {@link + * #hashCode()} and {@link #equals(Object)} methods are implemented to take the explicitly set + * fields into account. The constructor, on the other hand, does not take the explicitly set fields + * into account (since the constructor cannot distinguish explicit {@code null} from unset {@code + * null}). + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = Product.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class Product extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "description", + "id", + "name", + "skus", + "serviceName", + "lifecycleState", + "lifecycleDetails", + "timeCreated", + "timeLaunched", + "timeReady", + "isExcluded", + "freeformTags", + "definedTags", + "systemTags" + }) + public Product( + String description, + String id, + String name, + java.util.List skus, + String serviceName, + LifecycleState lifecycleState, + String lifecycleDetails, + java.util.Date timeCreated, + java.util.Date timeLaunched, + java.util.Date timeReady, + Boolean isExcluded, + java.util.Map freeformTags, + java.util.Map> definedTags, + java.util.Map> systemTags) { + super(); + this.description = description; + this.id = id; + this.name = name; + this.skus = skus; + this.serviceName = serviceName; + this.lifecycleState = lifecycleState; + this.lifecycleDetails = lifecycleDetails; + this.timeCreated = timeCreated; + this.timeLaunched = timeLaunched; + this.timeReady = timeReady; + this.isExcluded = isExcluded; + this.freeformTags = freeformTags; + this.definedTags = definedTags; + this.systemTags = systemTags; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** description to the product */ + @com.fasterxml.jackson.annotation.JsonProperty("description") + private String description; + + /** + * description to the product + * + * @param description the value to set + * @return this builder + */ + public Builder description(String description) { + this.description = description; + this.__explicitlySet__.add("description"); + return this; + } + /** OCID of the product */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private String id; + + /** + * OCID of the product + * + * @param id the value to set + * @return this builder + */ + public Builder id(String id) { + this.id = id; + this.__explicitlySet__.add("id"); + return this; + } + /** Name of the product, defined by service teams. Unique within one service */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private String name; + + /** + * Name of the product, defined by service teams. Unique within one service + * + * @param name the value to set + * @return this builder + */ + public Builder name(String name) { + this.name = name; + this.__explicitlySet__.add("name"); + return this; + } + /** List of skus associated with this product. */ + @com.fasterxml.jackson.annotation.JsonProperty("skus") + private java.util.List skus; + + /** + * List of skus associated with this product. + * + * @param skus the value to set + * @return this builder + */ + public Builder skus(java.util.List skus) { + this.skus = skus; + this.__explicitlySet__.add("skus"); + return this; + } + /** Name of the metering service this product relates to. */ + @com.fasterxml.jackson.annotation.JsonProperty("serviceName") + private String serviceName; + + /** + * Name of the metering service this product relates to. + * + * @param serviceName the value to set + * @return this builder + */ + public Builder serviceName(String serviceName) { + this.serviceName = serviceName; + this.__explicitlySet__.add("serviceName"); + return this; + } + /** + * The status of a product following the OCI standard. ACTIVE: resources of this product can + * be used by the end customer. INACTIVE: resources of this product can't be used by the end + * customer. Product needs manual approval. NEEDS_ATTENTION: operator action is needed. + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private LifecycleState lifecycleState; + + /** + * The status of a product following the OCI standard. ACTIVE: resources of this product can + * be used by the end customer. INACTIVE: resources of this product can't be used by the end + * customer. Product needs manual approval. NEEDS_ATTENTION: operator action is needed. + * + * @param lifecycleState the value to set + * @return this builder + */ + public Builder lifecycleState(LifecycleState lifecycleState) { + this.lifecycleState = lifecycleState; + this.__explicitlySet__.add("lifecycleState"); + return this; + } + /** + * The displayed status of a product. lifecycleState to lifecycleDetails mapping: INACTIVE + * -> "Not yet launched" ACTIVE -> "Launched" NEEDS_ATTENTION -> "Pricing not set" + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleDetails") + private String lifecycleDetails; + + /** + * The displayed status of a product. lifecycleState to lifecycleDetails mapping: INACTIVE + * -> "Not yet launched" ACTIVE -> "Launched" NEEDS_ATTENTION -> "Pricing not set" + * + * @param lifecycleDetails the value to set + * @return this builder + */ + public Builder lifecycleDetails(String lifecycleDetails) { + this.lifecycleDetails = lifecycleDetails; + this.__explicitlySet__.add("lifecycleDetails"); + return this; + } + /** Date and time when the product is created Example: {@code 2022-01-25T21:10:29.600Z} */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private java.util.Date timeCreated; + + /** + * Date and time when the product is created Example: {@code 2022-01-25T21:10:29.600Z} + * + * @param timeCreated the value to set + * @return this builder + */ + public Builder timeCreated(java.util.Date timeCreated) { + this.timeCreated = timeCreated; + this.__explicitlySet__.add("timeCreated"); + return this; + } + /** + * Date and time when the product is launched. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeLaunched") + private java.util.Date timeLaunched; + + /** + * Date and time when the product is launched. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + * + * @param timeLaunched the value to set + * @return this builder + */ + public Builder timeLaunched(java.util.Date timeLaunched) { + this.timeLaunched = timeLaunched; + this.__explicitlySet__.add("timeLaunched"); + return this; + } + /** + * Date and time when the product is ready to be launched. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeReady") + private java.util.Date timeReady; + + /** + * Date and time when the product is ready to be launched. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + * + * @param timeReady the value to set + * @return this builder + */ + public Builder timeReady(java.util.Date timeReady) { + this.timeReady = timeReady; + this.__explicitlySet__.add("timeReady"); + return this; + } + /** + * Indicates whether the product is currently excluded from SKU processing flows. This field + * is nullable when the exclusion flag has not been explicitly set. + */ + @com.fasterxml.jackson.annotation.JsonProperty("isExcluded") + private Boolean isExcluded; + + /** + * Indicates whether the product is currently excluded from SKU processing flows. This field + * is nullable when the exclusion flag has not been explicitly set. + * + * @param isExcluded the value to set + * @return this builder + */ + public Builder isExcluded(Boolean isExcluded) { + this.isExcluded = isExcluded; + this.__explicitlySet__.add("isExcluded"); + return this; + } + /** + * Free-form tags for this resource. Each tag is a simple key-value pair with no predefined + * name, type, or namespace. For more information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Department": "Finance"}} + */ + @com.fasterxml.jackson.annotation.JsonProperty("freeformTags") + private java.util.Map freeformTags; + + /** + * Free-form tags for this resource. Each tag is a simple key-value pair with no predefined + * name, type, or namespace. For more information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Department": "Finance"}} + * + * @param freeformTags the value to set + * @return this builder + */ + public Builder freeformTags(java.util.Map freeformTags) { + this.freeformTags = freeformTags; + this.__explicitlySet__.add("freeformTags"); + return this; + } + /** + * Defined tags for this resource. Each key is predefined and scoped to a namespace. For + * more information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Operations": {"CostCenter": "42"}}} + */ + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + private java.util.Map> definedTags; + + /** + * Defined tags for this resource. Each key is predefined and scoped to a namespace. For + * more information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Operations": {"CostCenter": "42"}}} + * + * @param definedTags the value to set + * @return this builder + */ + public Builder definedTags( + java.util.Map> definedTags) { + this.definedTags = definedTags; + this.__explicitlySet__.add("definedTags"); + return this; + } + /** + * System tags for this resource. Each key is predefined and scoped to a namespace. + * + *

Example: {@code {"orcl-cloud": {"free-tier-retained": "true"}}} + */ + @com.fasterxml.jackson.annotation.JsonProperty("systemTags") + private java.util.Map> systemTags; + + /** + * System tags for this resource. Each key is predefined and scoped to a namespace. + * + *

Example: {@code {"orcl-cloud": {"free-tier-retained": "true"}}} + * + * @param systemTags the value to set + * @return this builder + */ + public Builder systemTags(java.util.Map> systemTags) { + this.systemTags = systemTags; + this.__explicitlySet__.add("systemTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public Product build() { + Product model = + new Product( + this.description, + this.id, + this.name, + this.skus, + this.serviceName, + this.lifecycleState, + this.lifecycleDetails, + this.timeCreated, + this.timeLaunched, + this.timeReady, + this.isExcluded, + this.freeformTags, + this.definedTags, + this.systemTags); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(Product model) { + if (model.wasPropertyExplicitlySet("description")) { + this.description(model.getDescription()); + } + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + if (model.wasPropertyExplicitlySet("name")) { + this.name(model.getName()); + } + if (model.wasPropertyExplicitlySet("skus")) { + this.skus(model.getSkus()); + } + if (model.wasPropertyExplicitlySet("serviceName")) { + this.serviceName(model.getServiceName()); + } + if (model.wasPropertyExplicitlySet("lifecycleState")) { + this.lifecycleState(model.getLifecycleState()); + } + if (model.wasPropertyExplicitlySet("lifecycleDetails")) { + this.lifecycleDetails(model.getLifecycleDetails()); + } + if (model.wasPropertyExplicitlySet("timeCreated")) { + this.timeCreated(model.getTimeCreated()); + } + if (model.wasPropertyExplicitlySet("timeLaunched")) { + this.timeLaunched(model.getTimeLaunched()); + } + if (model.wasPropertyExplicitlySet("timeReady")) { + this.timeReady(model.getTimeReady()); + } + if (model.wasPropertyExplicitlySet("isExcluded")) { + this.isExcluded(model.getIsExcluded()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + if (model.wasPropertyExplicitlySet("systemTags")) { + this.systemTags(model.getSystemTags()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** description to the product */ + @com.fasterxml.jackson.annotation.JsonProperty("description") + private final String description; + + /** + * description to the product + * + * @return the value + */ + public String getDescription() { + return description; + } + + /** OCID of the product */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private final String id; + + /** + * OCID of the product + * + * @return the value + */ + public String getId() { + return id; + } + + /** Name of the product, defined by service teams. Unique within one service */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private final String name; + + /** + * Name of the product, defined by service teams. Unique within one service + * + * @return the value + */ + public String getName() { + return name; + } + + /** List of skus associated with this product. */ + @com.fasterxml.jackson.annotation.JsonProperty("skus") + private final java.util.List skus; + + /** + * List of skus associated with this product. + * + * @return the value + */ + public java.util.List getSkus() { + return skus; + } + + /** Name of the metering service this product relates to. */ + @com.fasterxml.jackson.annotation.JsonProperty("serviceName") + private final String serviceName; + + /** + * Name of the metering service this product relates to. + * + * @return the value + */ + public String getServiceName() { + return serviceName; + } + + /** + * The status of a product following the OCI standard. ACTIVE: resources of this product can be + * used by the end customer. INACTIVE: resources of this product can't be used by the end + * customer. Product needs manual approval. NEEDS_ATTENTION: operator action is needed. + */ + public enum LifecycleState implements com.oracle.bmc.http.internal.BmcEnum { + Active("ACTIVE"), + Inactive("INACTIVE"), + NeedsAttention("NEEDS_ATTENTION"), + + /** + * This value is used if a service returns a value for this enum that is not recognized by + * this version of the SDK. + */ + UnknownEnumValue(null); + + private static final org.slf4j.Logger LOG = + org.slf4j.LoggerFactory.getLogger(LifecycleState.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (LifecycleState v : LifecycleState.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + LifecycleState(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static LifecycleState create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'LifecycleState', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; + /** + * The status of a product following the OCI standard. ACTIVE: resources of this product can be + * used by the end customer. INACTIVE: resources of this product can't be used by the end + * customer. Product needs manual approval. NEEDS_ATTENTION: operator action is needed. + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private final LifecycleState lifecycleState; + + /** + * The status of a product following the OCI standard. ACTIVE: resources of this product can be + * used by the end customer. INACTIVE: resources of this product can't be used by the end + * customer. Product needs manual approval. NEEDS_ATTENTION: operator action is needed. + * + * @return the value + */ + public LifecycleState getLifecycleState() { + return lifecycleState; + } + + /** + * The displayed status of a product. lifecycleState to lifecycleDetails mapping: INACTIVE -> + * "Not yet launched" ACTIVE -> "Launched" NEEDS_ATTENTION -> "Pricing not set" + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleDetails") + private final String lifecycleDetails; + + /** + * The displayed status of a product. lifecycleState to lifecycleDetails mapping: INACTIVE -> + * "Not yet launched" ACTIVE -> "Launched" NEEDS_ATTENTION -> "Pricing not set" + * + * @return the value + */ + public String getLifecycleDetails() { + return lifecycleDetails; + } + + /** Date and time when the product is created Example: {@code 2022-01-25T21:10:29.600Z} */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private final java.util.Date timeCreated; + + /** + * Date and time when the product is created Example: {@code 2022-01-25T21:10:29.600Z} + * + * @return the value + */ + public java.util.Date getTimeCreated() { + return timeCreated; + } + + /** + * Date and time when the product is launched. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeLaunched") + private final java.util.Date timeLaunched; + + /** + * Date and time when the product is launched. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + * + * @return the value + */ + public java.util.Date getTimeLaunched() { + return timeLaunched; + } + + /** + * Date and time when the product is ready to be launched. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeReady") + private final java.util.Date timeReady; + + /** + * Date and time when the product is ready to be launched. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + * + * @return the value + */ + public java.util.Date getTimeReady() { + return timeReady; + } + + /** + * Indicates whether the product is currently excluded from SKU processing flows. This field is + * nullable when the exclusion flag has not been explicitly set. + */ + @com.fasterxml.jackson.annotation.JsonProperty("isExcluded") + private final Boolean isExcluded; + + /** + * Indicates whether the product is currently excluded from SKU processing flows. This field is + * nullable when the exclusion flag has not been explicitly set. + * + * @return the value + */ + public Boolean getIsExcluded() { + return isExcluded; + } + + /** + * Free-form tags for this resource. Each tag is a simple key-value pair with no predefined + * name, type, or namespace. For more information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Department": "Finance"}} + */ + @com.fasterxml.jackson.annotation.JsonProperty("freeformTags") + private final java.util.Map freeformTags; + + /** + * Free-form tags for this resource. Each tag is a simple key-value pair with no predefined + * name, type, or namespace. For more information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Department": "Finance"}} + * + * @return the value + */ + public java.util.Map getFreeformTags() { + return freeformTags; + } + + /** + * Defined tags for this resource. Each key is predefined and scoped to a namespace. For more + * information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Operations": {"CostCenter": "42"}}} + */ + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + private final java.util.Map> definedTags; + + /** + * Defined tags for this resource. Each key is predefined and scoped to a namespace. For more + * information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Operations": {"CostCenter": "42"}}} + * + * @return the value + */ + public java.util.Map> getDefinedTags() { + return definedTags; + } + + /** + * System tags for this resource. Each key is predefined and scoped to a namespace. + * + *

Example: {@code {"orcl-cloud": {"free-tier-retained": "true"}}} + */ + @com.fasterxml.jackson.annotation.JsonProperty("systemTags") + private final java.util.Map> systemTags; + + /** + * System tags for this resource. Each key is predefined and scoped to a namespace. + * + *

Example: {@code {"orcl-cloud": {"free-tier-retained": "true"}}} + * + * @return the value + */ + public java.util.Map> getSystemTags() { + return systemTags; + } + + @Override + public String toString() { + return this.toString(true); + } + + /** + * Return a string representation of the object. + * + * @param includeByteArrayContents true to include the full contents of byte arrays + * @return string representation + */ + public String toString(boolean includeByteArrayContents) { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("Product("); + sb.append("super=").append(super.toString()); + sb.append("description=").append(String.valueOf(this.description)); + sb.append(", id=").append(String.valueOf(this.id)); + sb.append(", name=").append(String.valueOf(this.name)); + sb.append(", skus=").append(String.valueOf(this.skus)); + sb.append(", serviceName=").append(String.valueOf(this.serviceName)); + sb.append(", lifecycleState=").append(String.valueOf(this.lifecycleState)); + sb.append(", lifecycleDetails=").append(String.valueOf(this.lifecycleDetails)); + sb.append(", timeCreated=").append(String.valueOf(this.timeCreated)); + sb.append(", timeLaunched=").append(String.valueOf(this.timeLaunched)); + sb.append(", timeReady=").append(String.valueOf(this.timeReady)); + sb.append(", isExcluded=").append(String.valueOf(this.isExcluded)); + sb.append(", freeformTags=").append(String.valueOf(this.freeformTags)); + sb.append(", definedTags=").append(String.valueOf(this.definedTags)); + sb.append(", systemTags=").append(String.valueOf(this.systemTags)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof Product)) { + return false; + } + + Product other = (Product) o; + return java.util.Objects.equals(this.description, other.description) + && java.util.Objects.equals(this.id, other.id) + && java.util.Objects.equals(this.name, other.name) + && java.util.Objects.equals(this.skus, other.skus) + && java.util.Objects.equals(this.serviceName, other.serviceName) + && java.util.Objects.equals(this.lifecycleState, other.lifecycleState) + && java.util.Objects.equals(this.lifecycleDetails, other.lifecycleDetails) + && java.util.Objects.equals(this.timeCreated, other.timeCreated) + && java.util.Objects.equals(this.timeLaunched, other.timeLaunched) + && java.util.Objects.equals(this.timeReady, other.timeReady) + && java.util.Objects.equals(this.isExcluded, other.isExcluded) + && java.util.Objects.equals(this.freeformTags, other.freeformTags) + && java.util.Objects.equals(this.definedTags, other.definedTags) + && java.util.Objects.equals(this.systemTags, other.systemTags) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.description == null ? 43 : this.description.hashCode()); + result = (result * PRIME) + (this.id == null ? 43 : this.id.hashCode()); + result = (result * PRIME) + (this.name == null ? 43 : this.name.hashCode()); + result = (result * PRIME) + (this.skus == null ? 43 : this.skus.hashCode()); + result = (result * PRIME) + (this.serviceName == null ? 43 : this.serviceName.hashCode()); + result = + (result * PRIME) + + (this.lifecycleState == null ? 43 : this.lifecycleState.hashCode()); + result = + (result * PRIME) + + (this.lifecycleDetails == null ? 43 : this.lifecycleDetails.hashCode()); + result = (result * PRIME) + (this.timeCreated == null ? 43 : this.timeCreated.hashCode()); + result = (result * PRIME) + (this.timeLaunched == null ? 43 : this.timeLaunched.hashCode()); + result = (result * PRIME) + (this.timeReady == null ? 43 : this.timeReady.hashCode()); + result = (result * PRIME) + (this.isExcluded == null ? 43 : this.isExcluded.hashCode()); + result = (result * PRIME) + (this.freeformTags == null ? 43 : this.freeformTags.hashCode()); + result = (result * PRIME) + (this.definedTags == null ? 43 : this.definedTags.hashCode()); + result = (result * PRIME) + (this.systemTags == null ? 43 : this.systemTags.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/ProductCollection.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/ProductCollection.java new file mode 100644 index 00000000000..a0e4d96dd05 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/ProductCollection.java @@ -0,0 +1,133 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.model; + +/** + * List of Products
+ * 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 Builder#__explicitlySet__}. The {@link + * #hashCode()} and {@link #equals(Object)} methods are implemented to take the explicitly set + * fields into account. The constructor, on the other hand, does not take the explicitly set fields + * into account (since the constructor cannot distinguish explicit {@code null} from unset {@code + * null}). + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = ProductCollection.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class ProductCollection + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"items"}) + public ProductCollection(java.util.List items) { + super(); + this.items = items; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** List of Products */ + @com.fasterxml.jackson.annotation.JsonProperty("items") + private java.util.List items; + + /** + * List of Products + * + * @param items the value to set + * @return this builder + */ + public Builder items(java.util.List items) { + this.items = items; + this.__explicitlySet__.add("items"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public ProductCollection build() { + ProductCollection model = new ProductCollection(this.items); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(ProductCollection model) { + if (model.wasPropertyExplicitlySet("items")) { + this.items(model.getItems()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** List of Products */ + @com.fasterxml.jackson.annotation.JsonProperty("items") + private final java.util.List items; + + /** + * List of Products + * + * @return the value + */ + public java.util.List getItems() { + return items; + } + + @Override + public String toString() { + return this.toString(true); + } + + /** + * Return a string representation of the object. + * + * @param includeByteArrayContents true to include the full contents of byte arrays + * @return string representation + */ + public String toString(boolean includeByteArrayContents) { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("ProductCollection("); + sb.append("super=").append(super.toString()); + sb.append("items=").append(String.valueOf(this.items)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ProductCollection)) { + return false; + } + + ProductCollection other = (ProductCollection) o; + return java.util.Objects.equals(this.items, other.items) && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.items == null ? 43 : this.items.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/ProductSummary.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/ProductSummary.java new file mode 100644 index 00000000000..fb20b3c569e --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/ProductSummary.java @@ -0,0 +1,746 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.model; + +/** + * The fields of a product to be displayed to the operator in OCI Console
+ * 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 Builder#__explicitlySet__}. The {@link + * #hashCode()} and {@link #equals(Object)} methods are implemented to take the explicitly set + * fields into account. The constructor, on the other hand, does not take the explicitly set fields + * into account (since the constructor cannot distinguish explicit {@code null} from unset {@code + * null}). + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = ProductSummary.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class ProductSummary + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "id", + "name", + "skus", + "serviceName", + "lifecycleState", + "lifecycleDetails", + "timeCreated", + "timeLaunched", + "timeReady", + "isExcluded", + "freeformTags", + "definedTags", + "systemTags" + }) + public ProductSummary( + String id, + String name, + java.util.List skus, + String serviceName, + LifecycleState lifecycleState, + String lifecycleDetails, + java.util.Date timeCreated, + java.util.Date timeLaunched, + java.util.Date timeReady, + Boolean isExcluded, + java.util.Map freeformTags, + java.util.Map> definedTags, + java.util.Map> systemTags) { + super(); + this.id = id; + this.name = name; + this.skus = skus; + this.serviceName = serviceName; + this.lifecycleState = lifecycleState; + this.lifecycleDetails = lifecycleDetails; + this.timeCreated = timeCreated; + this.timeLaunched = timeLaunched; + this.timeReady = timeReady; + this.isExcluded = isExcluded; + this.freeformTags = freeformTags; + this.definedTags = definedTags; + this.systemTags = systemTags; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** OCID of the product */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private String id; + + /** + * OCID of the product + * + * @param id the value to set + * @return this builder + */ + public Builder id(String id) { + this.id = id; + this.__explicitlySet__.add("id"); + return this; + } + /** Name of the product, defined by service teams. Unique within one service */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private String name; + + /** + * Name of the product, defined by service teams. Unique within one service + * + * @param name the value to set + * @return this builder + */ + public Builder name(String name) { + this.name = name; + this.__explicitlySet__.add("name"); + return this; + } + /** List of skus associated with this product. */ + @com.fasterxml.jackson.annotation.JsonProperty("skus") + private java.util.List skus; + + /** + * List of skus associated with this product. + * + * @param skus the value to set + * @return this builder + */ + public Builder skus(java.util.List skus) { + this.skus = skus; + this.__explicitlySet__.add("skus"); + return this; + } + /** Name of the metering service this product relates to. */ + @com.fasterxml.jackson.annotation.JsonProperty("serviceName") + private String serviceName; + + /** + * Name of the metering service this product relates to. + * + * @param serviceName the value to set + * @return this builder + */ + public Builder serviceName(String serviceName) { + this.serviceName = serviceName; + this.__explicitlySet__.add("serviceName"); + return this; + } + /** + * The status of a product following the OCI standard. ACTIVE: resources of this product can + * be used by the end customer. INACTIVE: resources of this product can't be used by the end + * customer. Product needs manual approval. NEEDS_ATTENTION: operator action is needed. + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private LifecycleState lifecycleState; + + /** + * The status of a product following the OCI standard. ACTIVE: resources of this product can + * be used by the end customer. INACTIVE: resources of this product can't be used by the end + * customer. Product needs manual approval. NEEDS_ATTENTION: operator action is needed. + * + * @param lifecycleState the value to set + * @return this builder + */ + public Builder lifecycleState(LifecycleState lifecycleState) { + this.lifecycleState = lifecycleState; + this.__explicitlySet__.add("lifecycleState"); + return this; + } + /** + * The displayed status of a product. lifecycleState to lifecycleDetails mapping: INACTIVE + * -> "Not yet launched" ACTIVE -> "Launched" NEEDS_ATTENTION -> "Pricing not set" + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleDetails") + private String lifecycleDetails; + + /** + * The displayed status of a product. lifecycleState to lifecycleDetails mapping: INACTIVE + * -> "Not yet launched" ACTIVE -> "Launched" NEEDS_ATTENTION -> "Pricing not set" + * + * @param lifecycleDetails the value to set + * @return this builder + */ + public Builder lifecycleDetails(String lifecycleDetails) { + this.lifecycleDetails = lifecycleDetails; + this.__explicitlySet__.add("lifecycleDetails"); + return this; + } + /** Date and time when the product is created Example: {@code 2022-01-25T21:10:29.600Z} */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private java.util.Date timeCreated; + + /** + * Date and time when the product is created Example: {@code 2022-01-25T21:10:29.600Z} + * + * @param timeCreated the value to set + * @return this builder + */ + public Builder timeCreated(java.util.Date timeCreated) { + this.timeCreated = timeCreated; + this.__explicitlySet__.add("timeCreated"); + return this; + } + /** + * Date and time when the product is launched. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeLaunched") + private java.util.Date timeLaunched; + + /** + * Date and time when the product is launched. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + * + * @param timeLaunched the value to set + * @return this builder + */ + public Builder timeLaunched(java.util.Date timeLaunched) { + this.timeLaunched = timeLaunched; + this.__explicitlySet__.add("timeLaunched"); + return this; + } + /** + * Date and time when the product is ready to be launched. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeReady") + private java.util.Date timeReady; + + /** + * Date and time when the product is ready to be launched. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + * + * @param timeReady the value to set + * @return this builder + */ + public Builder timeReady(java.util.Date timeReady) { + this.timeReady = timeReady; + this.__explicitlySet__.add("timeReady"); + return this; + } + /** + * Indicates whether the product is currently excluded from SKU processing flows. This field + * is nullable when the exclusion flag has not been explicitly set. + */ + @com.fasterxml.jackson.annotation.JsonProperty("isExcluded") + private Boolean isExcluded; + + /** + * Indicates whether the product is currently excluded from SKU processing flows. This field + * is nullable when the exclusion flag has not been explicitly set. + * + * @param isExcluded the value to set + * @return this builder + */ + public Builder isExcluded(Boolean isExcluded) { + this.isExcluded = isExcluded; + this.__explicitlySet__.add("isExcluded"); + return this; + } + /** + * Free-form tags for this resource. Each tag is a simple key-value pair with no predefined + * name, type, or namespace. For more information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Department": "Finance"}} + */ + @com.fasterxml.jackson.annotation.JsonProperty("freeformTags") + private java.util.Map freeformTags; + + /** + * Free-form tags for this resource. Each tag is a simple key-value pair with no predefined + * name, type, or namespace. For more information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Department": "Finance"}} + * + * @param freeformTags the value to set + * @return this builder + */ + public Builder freeformTags(java.util.Map freeformTags) { + this.freeformTags = freeformTags; + this.__explicitlySet__.add("freeformTags"); + return this; + } + /** + * Defined tags for this resource. Each key is predefined and scoped to a namespace. For + * more information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Operations": {"CostCenter": "42"}}} + */ + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + private java.util.Map> definedTags; + + /** + * Defined tags for this resource. Each key is predefined and scoped to a namespace. For + * more information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Operations": {"CostCenter": "42"}}} + * + * @param definedTags the value to set + * @return this builder + */ + public Builder definedTags( + java.util.Map> definedTags) { + this.definedTags = definedTags; + this.__explicitlySet__.add("definedTags"); + return this; + } + /** + * System tags for this resource. Each key is predefined and scoped to a namespace. + * + *

Example: {@code {"orcl-cloud": {"free-tier-retained": "true"}}} + */ + @com.fasterxml.jackson.annotation.JsonProperty("systemTags") + private java.util.Map> systemTags; + + /** + * System tags for this resource. Each key is predefined and scoped to a namespace. + * + *

Example: {@code {"orcl-cloud": {"free-tier-retained": "true"}}} + * + * @param systemTags the value to set + * @return this builder + */ + public Builder systemTags(java.util.Map> systemTags) { + this.systemTags = systemTags; + this.__explicitlySet__.add("systemTags"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public ProductSummary build() { + ProductSummary model = + new ProductSummary( + this.id, + this.name, + this.skus, + this.serviceName, + this.lifecycleState, + this.lifecycleDetails, + this.timeCreated, + this.timeLaunched, + this.timeReady, + this.isExcluded, + this.freeformTags, + this.definedTags, + this.systemTags); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(ProductSummary model) { + if (model.wasPropertyExplicitlySet("id")) { + this.id(model.getId()); + } + if (model.wasPropertyExplicitlySet("name")) { + this.name(model.getName()); + } + if (model.wasPropertyExplicitlySet("skus")) { + this.skus(model.getSkus()); + } + if (model.wasPropertyExplicitlySet("serviceName")) { + this.serviceName(model.getServiceName()); + } + if (model.wasPropertyExplicitlySet("lifecycleState")) { + this.lifecycleState(model.getLifecycleState()); + } + if (model.wasPropertyExplicitlySet("lifecycleDetails")) { + this.lifecycleDetails(model.getLifecycleDetails()); + } + if (model.wasPropertyExplicitlySet("timeCreated")) { + this.timeCreated(model.getTimeCreated()); + } + if (model.wasPropertyExplicitlySet("timeLaunched")) { + this.timeLaunched(model.getTimeLaunched()); + } + if (model.wasPropertyExplicitlySet("timeReady")) { + this.timeReady(model.getTimeReady()); + } + if (model.wasPropertyExplicitlySet("isExcluded")) { + this.isExcluded(model.getIsExcluded()); + } + if (model.wasPropertyExplicitlySet("freeformTags")) { + this.freeformTags(model.getFreeformTags()); + } + if (model.wasPropertyExplicitlySet("definedTags")) { + this.definedTags(model.getDefinedTags()); + } + if (model.wasPropertyExplicitlySet("systemTags")) { + this.systemTags(model.getSystemTags()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** OCID of the product */ + @com.fasterxml.jackson.annotation.JsonProperty("id") + private final String id; + + /** + * OCID of the product + * + * @return the value + */ + public String getId() { + return id; + } + + /** Name of the product, defined by service teams. Unique within one service */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private final String name; + + /** + * Name of the product, defined by service teams. Unique within one service + * + * @return the value + */ + public String getName() { + return name; + } + + /** List of skus associated with this product. */ + @com.fasterxml.jackson.annotation.JsonProperty("skus") + private final java.util.List skus; + + /** + * List of skus associated with this product. + * + * @return the value + */ + public java.util.List getSkus() { + return skus; + } + + /** Name of the metering service this product relates to. */ + @com.fasterxml.jackson.annotation.JsonProperty("serviceName") + private final String serviceName; + + /** + * Name of the metering service this product relates to. + * + * @return the value + */ + public String getServiceName() { + return serviceName; + } + + /** + * The status of a product following the OCI standard. ACTIVE: resources of this product can be + * used by the end customer. INACTIVE: resources of this product can't be used by the end + * customer. Product needs manual approval. NEEDS_ATTENTION: operator action is needed. + */ + public enum LifecycleState implements com.oracle.bmc.http.internal.BmcEnum { + Active("ACTIVE"), + Inactive("INACTIVE"), + NeedsAttention("NEEDS_ATTENTION"), + + /** + * This value is used if a service returns a value for this enum that is not recognized by + * this version of the SDK. + */ + UnknownEnumValue(null); + + private static final org.slf4j.Logger LOG = + org.slf4j.LoggerFactory.getLogger(LifecycleState.class); + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (LifecycleState v : LifecycleState.values()) { + if (v != UnknownEnumValue) { + map.put(v.getValue(), v); + } + } + } + + LifecycleState(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static LifecycleState create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + LOG.warn( + "Received unknown value '{}' for enum 'LifecycleState', returning UnknownEnumValue", + key); + return UnknownEnumValue; + } + }; + /** + * The status of a product following the OCI standard. ACTIVE: resources of this product can be + * used by the end customer. INACTIVE: resources of this product can't be used by the end + * customer. Product needs manual approval. NEEDS_ATTENTION: operator action is needed. + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleState") + private final LifecycleState lifecycleState; + + /** + * The status of a product following the OCI standard. ACTIVE: resources of this product can be + * used by the end customer. INACTIVE: resources of this product can't be used by the end + * customer. Product needs manual approval. NEEDS_ATTENTION: operator action is needed. + * + * @return the value + */ + public LifecycleState getLifecycleState() { + return lifecycleState; + } + + /** + * The displayed status of a product. lifecycleState to lifecycleDetails mapping: INACTIVE -> + * "Not yet launched" ACTIVE -> "Launched" NEEDS_ATTENTION -> "Pricing not set" + */ + @com.fasterxml.jackson.annotation.JsonProperty("lifecycleDetails") + private final String lifecycleDetails; + + /** + * The displayed status of a product. lifecycleState to lifecycleDetails mapping: INACTIVE -> + * "Not yet launched" ACTIVE -> "Launched" NEEDS_ATTENTION -> "Pricing not set" + * + * @return the value + */ + public String getLifecycleDetails() { + return lifecycleDetails; + } + + /** Date and time when the product is created Example: {@code 2022-01-25T21:10:29.600Z} */ + @com.fasterxml.jackson.annotation.JsonProperty("timeCreated") + private final java.util.Date timeCreated; + + /** + * Date and time when the product is created Example: {@code 2022-01-25T21:10:29.600Z} + * + * @return the value + */ + public java.util.Date getTimeCreated() { + return timeCreated; + } + + /** + * Date and time when the product is launched. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeLaunched") + private final java.util.Date timeLaunched; + + /** + * Date and time when the product is launched. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + * + * @return the value + */ + public java.util.Date getTimeLaunched() { + return timeLaunched; + } + + /** + * Date and time when the product is ready to be launched. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + */ + @com.fasterxml.jackson.annotation.JsonProperty("timeReady") + private final java.util.Date timeReady; + + /** + * Date and time when the product is ready to be launched. Nullable Example: {@code + * 2022-01-25T21:10:29.600Z} + * + * @return the value + */ + public java.util.Date getTimeReady() { + return timeReady; + } + + /** + * Indicates whether the product is currently excluded from SKU processing flows. This field is + * nullable when the exclusion flag has not been explicitly set. + */ + @com.fasterxml.jackson.annotation.JsonProperty("isExcluded") + private final Boolean isExcluded; + + /** + * Indicates whether the product is currently excluded from SKU processing flows. This field is + * nullable when the exclusion flag has not been explicitly set. + * + * @return the value + */ + public Boolean getIsExcluded() { + return isExcluded; + } + + /** + * Free-form tags for this resource. Each tag is a simple key-value pair with no predefined + * name, type, or namespace. For more information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Department": "Finance"}} + */ + @com.fasterxml.jackson.annotation.JsonProperty("freeformTags") + private final java.util.Map freeformTags; + + /** + * Free-form tags for this resource. Each tag is a simple key-value pair with no predefined + * name, type, or namespace. For more information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Department": "Finance"}} + * + * @return the value + */ + public java.util.Map getFreeformTags() { + return freeformTags; + } + + /** + * Defined tags for this resource. Each key is predefined and scoped to a namespace. For more + * information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Operations": {"CostCenter": "42"}}} + */ + @com.fasterxml.jackson.annotation.JsonProperty("definedTags") + private final java.util.Map> definedTags; + + /** + * Defined tags for this resource. Each key is predefined and scoped to a namespace. For more + * information, see [Resource + * Tags](https://docs.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). + * + *

Example: {@code {"Operations": {"CostCenter": "42"}}} + * + * @return the value + */ + public java.util.Map> getDefinedTags() { + return definedTags; + } + + /** + * System tags for this resource. Each key is predefined and scoped to a namespace. + * + *

Example: {@code {"orcl-cloud": {"free-tier-retained": "true"}}} + */ + @com.fasterxml.jackson.annotation.JsonProperty("systemTags") + private final java.util.Map> systemTags; + + /** + * System tags for this resource. Each key is predefined and scoped to a namespace. + * + *

Example: {@code {"orcl-cloud": {"free-tier-retained": "true"}}} + * + * @return the value + */ + public java.util.Map> getSystemTags() { + return systemTags; + } + + @Override + public String toString() { + return this.toString(true); + } + + /** + * Return a string representation of the object. + * + * @param includeByteArrayContents true to include the full contents of byte arrays + * @return string representation + */ + public String toString(boolean includeByteArrayContents) { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("ProductSummary("); + sb.append("super=").append(super.toString()); + sb.append("id=").append(String.valueOf(this.id)); + sb.append(", name=").append(String.valueOf(this.name)); + sb.append(", skus=").append(String.valueOf(this.skus)); + sb.append(", serviceName=").append(String.valueOf(this.serviceName)); + sb.append(", lifecycleState=").append(String.valueOf(this.lifecycleState)); + sb.append(", lifecycleDetails=").append(String.valueOf(this.lifecycleDetails)); + sb.append(", timeCreated=").append(String.valueOf(this.timeCreated)); + sb.append(", timeLaunched=").append(String.valueOf(this.timeLaunched)); + sb.append(", timeReady=").append(String.valueOf(this.timeReady)); + sb.append(", isExcluded=").append(String.valueOf(this.isExcluded)); + sb.append(", freeformTags=").append(String.valueOf(this.freeformTags)); + sb.append(", definedTags=").append(String.valueOf(this.definedTags)); + sb.append(", systemTags=").append(String.valueOf(this.systemTags)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ProductSummary)) { + return false; + } + + ProductSummary other = (ProductSummary) o; + return java.util.Objects.equals(this.id, other.id) + && java.util.Objects.equals(this.name, other.name) + && java.util.Objects.equals(this.skus, other.skus) + && java.util.Objects.equals(this.serviceName, other.serviceName) + && java.util.Objects.equals(this.lifecycleState, other.lifecycleState) + && java.util.Objects.equals(this.lifecycleDetails, other.lifecycleDetails) + && java.util.Objects.equals(this.timeCreated, other.timeCreated) + && java.util.Objects.equals(this.timeLaunched, other.timeLaunched) + && java.util.Objects.equals(this.timeReady, other.timeReady) + && java.util.Objects.equals(this.isExcluded, other.isExcluded) + && java.util.Objects.equals(this.freeformTags, other.freeformTags) + && java.util.Objects.equals(this.definedTags, other.definedTags) + && java.util.Objects.equals(this.systemTags, other.systemTags) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.id == null ? 43 : this.id.hashCode()); + result = (result * PRIME) + (this.name == null ? 43 : this.name.hashCode()); + result = (result * PRIME) + (this.skus == null ? 43 : this.skus.hashCode()); + result = (result * PRIME) + (this.serviceName == null ? 43 : this.serviceName.hashCode()); + result = + (result * PRIME) + + (this.lifecycleState == null ? 43 : this.lifecycleState.hashCode()); + result = + (result * PRIME) + + (this.lifecycleDetails == null ? 43 : this.lifecycleDetails.hashCode()); + result = (result * PRIME) + (this.timeCreated == null ? 43 : this.timeCreated.hashCode()); + result = (result * PRIME) + (this.timeLaunched == null ? 43 : this.timeLaunched.hashCode()); + result = (result * PRIME) + (this.timeReady == null ? 43 : this.timeReady.hashCode()); + result = (result * PRIME) + (this.isExcluded == null ? 43 : this.isExcluded.hashCode()); + result = (result * PRIME) + (this.freeformTags == null ? 43 : this.freeformTags.hashCode()); + result = (result * PRIME) + (this.definedTags == null ? 43 : this.definedTags.hashCode()); + result = (result * PRIME) + (this.systemTags == null ? 43 : this.systemTags.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/SkuSummary.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/SkuSummary.java new file mode 100644 index 00000000000..df6b134b3ff --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/SkuSummary.java @@ -0,0 +1,167 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.model; + +/** + * The details of a sku
+ * 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 Builder#__explicitlySet__}. The {@link + * #hashCode()} and {@link #equals(Object)} methods are implemented to take the explicitly set + * fields into account. The constructor, on the other hand, does not take the explicitly set fields + * into account (since the constructor cannot distinguish explicit {@code null} from unset {@code + * null}). + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize(builder = SkuSummary.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class SkuSummary extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({"bpartNumber", "description"}) + public SkuSummary(String bpartNumber, String description) { + super(); + this.bpartNumber = bpartNumber; + this.description = description; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** sku bpartNumber */ + @com.fasterxml.jackson.annotation.JsonProperty("bpartNumber") + private String bpartNumber; + + /** + * sku bpartNumber + * + * @param bpartNumber the value to set + * @return this builder + */ + public Builder bpartNumber(String bpartNumber) { + this.bpartNumber = bpartNumber; + this.__explicitlySet__.add("bpartNumber"); + return this; + } + /** description of the sku */ + @com.fasterxml.jackson.annotation.JsonProperty("description") + private String description; + + /** + * description of the sku + * + * @param description the value to set + * @return this builder + */ + public Builder description(String description) { + this.description = description; + this.__explicitlySet__.add("description"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public SkuSummary build() { + SkuSummary model = new SkuSummary(this.bpartNumber, this.description); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(SkuSummary model) { + if (model.wasPropertyExplicitlySet("bpartNumber")) { + this.bpartNumber(model.getBpartNumber()); + } + if (model.wasPropertyExplicitlySet("description")) { + this.description(model.getDescription()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** sku bpartNumber */ + @com.fasterxml.jackson.annotation.JsonProperty("bpartNumber") + private final String bpartNumber; + + /** + * sku bpartNumber + * + * @return the value + */ + public String getBpartNumber() { + return bpartNumber; + } + + /** description of the sku */ + @com.fasterxml.jackson.annotation.JsonProperty("description") + private final String description; + + /** + * description of the sku + * + * @return the value + */ + public String getDescription() { + return description; + } + + @Override + public String toString() { + return this.toString(true); + } + + /** + * Return a string representation of the object. + * + * @param includeByteArrayContents true to include the full contents of byte arrays + * @return string representation + */ + public String toString(boolean includeByteArrayContents) { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("SkuSummary("); + sb.append("super=").append(super.toString()); + sb.append("bpartNumber=").append(String.valueOf(this.bpartNumber)); + sb.append(", description=").append(String.valueOf(this.description)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof SkuSummary)) { + return false; + } + + SkuSummary other = (SkuSummary) o; + return java.util.Objects.equals(this.bpartNumber, other.bpartNumber) + && java.util.Objects.equals(this.description, other.description) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.bpartNumber == null ? 43 : this.bpartNumber.hashCode()); + result = (result * PRIME) + (this.description == null ? 43 : this.description.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/UpdateProductDetails.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/UpdateProductDetails.java new file mode 100644 index 00000000000..c9bdbbfe80b --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/model/UpdateProductDetails.java @@ -0,0 +1,429 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.model; + +/** + * The properties of a product
+ * 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 Builder#__explicitlySet__}. The {@link + * #hashCode()} and {@link #equals(Object)} methods are implemented to take the explicitly set + * fields into account. The constructor, on the other hand, does not take the explicitly set fields + * into account (since the constructor cannot distinguish explicit {@code null} from unset {@code + * null}). + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +@com.fasterxml.jackson.databind.annotation.JsonDeserialize( + builder = UpdateProductDetails.Builder.class) +@com.fasterxml.jackson.annotation.JsonFilter( + com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel.EXPLICITLY_SET_FILTER_NAME) +public final class UpdateProductDetails + extends com.oracle.bmc.http.client.internal.ExplicitlySetBmcModel { + @Deprecated + @java.beans.ConstructorProperties({ + "name", + "description", + "state", + "meters", + "serviceName", + "limits", + "isExcluded" + }) + public UpdateProductDetails( + String name, + String description, + State state, + java.util.List meters, + String serviceName, + java.util.List limits, + Boolean isExcluded) { + super(); + this.name = name; + this.description = description; + this.state = state; + this.meters = meters; + this.serviceName = serviceName; + this.limits = limits; + this.isExcluded = isExcluded; + } + + @com.fasterxml.jackson.databind.annotation.JsonPOJOBuilder(withPrefix = "") + public static class Builder { + /** Name of the product, defined by service teams. Unique within one service */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private String name; + + /** + * Name of the product, defined by service teams. Unique within one service + * + * @param name the value to set + * @return this builder + */ + public Builder name(String name) { + this.name = name; + this.__explicitlySet__.add("name"); + return this; + } + /** description to the product */ + @com.fasterxml.jackson.annotation.JsonProperty("description") + private String description; + + /** + * description to the product + * + * @param description the value to set + * @return this builder + */ + public Builder description(String description) { + this.description = description; + this.__explicitlySet__.add("description"); + return this; + } + /** + * The current state of the product. READY - The product is fully configured and ready for + * activation. ENABLED - The product is active. DISABLED - The product is inactive and not + * ready for activation. DELETED - The product has been deleted. NEEDS_ATTENTION - Pricing + * not set. + */ + @com.fasterxml.jackson.annotation.JsonProperty("state") + private State state; + + /** + * The current state of the product. READY - The product is fully configured and ready for + * activation. ENABLED - The product is active. DISABLED - The product is inactive and not + * ready for activation. DELETED - The product has been deleted. NEEDS_ATTENTION - Pricing + * not set. + * + * @param state the value to set + * @return this builder + */ + public Builder state(State state) { + this.state = state; + this.__explicitlySet__.add("state"); + return this; + } + /** List of meters associated with this product */ + @com.fasterxml.jackson.annotation.JsonProperty("meters") + private java.util.List meters; + + /** + * List of meters associated with this product + * + * @param meters the value to set + * @return this builder + */ + public Builder meters(java.util.List meters) { + this.meters = meters; + this.__explicitlySet__.add("meters"); + return this; + } + /** Name of the metering service this product relates to. */ + @com.fasterxml.jackson.annotation.JsonProperty("serviceName") + private String serviceName; + + /** + * Name of the metering service this product relates to. + * + * @param serviceName the value to set + * @return this builder + */ + public Builder serviceName(String serviceName) { + this.serviceName = serviceName; + this.__explicitlySet__.add("serviceName"); + return this; + } + /** List of limits that this product is associated with. */ + @com.fasterxml.jackson.annotation.JsonProperty("limits") + private java.util.List limits; + + /** + * List of limits that this product is associated with. + * + * @param limits the value to set + * @return this builder + */ + public Builder limits(java.util.List limits) { + this.limits = limits; + this.__explicitlySet__.add("limits"); + return this; + } + /** + * Optional exclusion flag update. When true, marks the product as excluded. When false, + * clears the exclusion state. + */ + @com.fasterxml.jackson.annotation.JsonProperty("isExcluded") + private Boolean isExcluded; + + /** + * Optional exclusion flag update. When true, marks the product as excluded. When false, + * clears the exclusion state. + * + * @param isExcluded the value to set + * @return this builder + */ + public Builder isExcluded(Boolean isExcluded) { + this.isExcluded = isExcluded; + this.__explicitlySet__.add("isExcluded"); + return this; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + private final java.util.Set __explicitlySet__ = new java.util.HashSet(); + + public UpdateProductDetails build() { + UpdateProductDetails model = + new UpdateProductDetails( + this.name, + this.description, + this.state, + this.meters, + this.serviceName, + this.limits, + this.isExcluded); + for (String explicitlySetProperty : this.__explicitlySet__) { + model.markPropertyAsExplicitlySet(explicitlySetProperty); + } + return model; + } + + @com.fasterxml.jackson.annotation.JsonIgnore + public Builder copy(UpdateProductDetails model) { + if (model.wasPropertyExplicitlySet("name")) { + this.name(model.getName()); + } + if (model.wasPropertyExplicitlySet("description")) { + this.description(model.getDescription()); + } + if (model.wasPropertyExplicitlySet("state")) { + this.state(model.getState()); + } + if (model.wasPropertyExplicitlySet("meters")) { + this.meters(model.getMeters()); + } + if (model.wasPropertyExplicitlySet("serviceName")) { + this.serviceName(model.getServiceName()); + } + if (model.wasPropertyExplicitlySet("limits")) { + this.limits(model.getLimits()); + } + if (model.wasPropertyExplicitlySet("isExcluded")) { + this.isExcluded(model.getIsExcluded()); + } + return this; + } + } + + /** Create a new builder. */ + public static Builder builder() { + return new Builder(); + } + + public Builder toBuilder() { + return new Builder().copy(this); + } + + /** Name of the product, defined by service teams. Unique within one service */ + @com.fasterxml.jackson.annotation.JsonProperty("name") + private final String name; + + /** + * Name of the product, defined by service teams. Unique within one service + * + * @return the value + */ + public String getName() { + return name; + } + + /** description to the product */ + @com.fasterxml.jackson.annotation.JsonProperty("description") + private final String description; + + /** + * description to the product + * + * @return the value + */ + public String getDescription() { + return description; + } + + /** + * The current state of the product. READY - The product is fully configured and ready for + * activation. ENABLED - The product is active. DISABLED - The product is inactive and not ready + * for activation. DELETED - The product has been deleted. NEEDS_ATTENTION - Pricing not set. + */ + public enum State implements com.oracle.bmc.http.internal.BmcEnum { + Ready("READY"), + Enabled("ENABLED"), + Disabled("DISABLED"), + Deleted("DELETED"), + NeedsAttention("NEEDS_ATTENTION"), + ; + + private final String value; + private static java.util.Map map; + + static { + map = new java.util.HashMap<>(); + for (State v : State.values()) { + map.put(v.getValue(), v); + } + } + + State(String value) { + this.value = value; + } + + @com.fasterxml.jackson.annotation.JsonValue + public String getValue() { + return value; + } + + @com.fasterxml.jackson.annotation.JsonCreator + public static State create(String key) { + if (map.containsKey(key)) { + return map.get(key); + } + throw new IllegalArgumentException("Invalid State: " + key); + } + }; + /** + * The current state of the product. READY - The product is fully configured and ready for + * activation. ENABLED - The product is active. DISABLED - The product is inactive and not ready + * for activation. DELETED - The product has been deleted. NEEDS_ATTENTION - Pricing not set. + */ + @com.fasterxml.jackson.annotation.JsonProperty("state") + private final State state; + + /** + * The current state of the product. READY - The product is fully configured and ready for + * activation. ENABLED - The product is active. DISABLED - The product is inactive and not ready + * for activation. DELETED - The product has been deleted. NEEDS_ATTENTION - Pricing not set. + * + * @return the value + */ + public State getState() { + return state; + } + + /** List of meters associated with this product */ + @com.fasterxml.jackson.annotation.JsonProperty("meters") + private final java.util.List meters; + + /** + * List of meters associated with this product + * + * @return the value + */ + public java.util.List getMeters() { + return meters; + } + + /** Name of the metering service this product relates to. */ + @com.fasterxml.jackson.annotation.JsonProperty("serviceName") + private final String serviceName; + + /** + * Name of the metering service this product relates to. + * + * @return the value + */ + public String getServiceName() { + return serviceName; + } + + /** List of limits that this product is associated with. */ + @com.fasterxml.jackson.annotation.JsonProperty("limits") + private final java.util.List limits; + + /** + * List of limits that this product is associated with. + * + * @return the value + */ + public java.util.List getLimits() { + return limits; + } + + /** + * Optional exclusion flag update. When true, marks the product as excluded. When false, clears + * the exclusion state. + */ + @com.fasterxml.jackson.annotation.JsonProperty("isExcluded") + private final Boolean isExcluded; + + /** + * Optional exclusion flag update. When true, marks the product as excluded. When false, clears + * the exclusion state. + * + * @return the value + */ + public Boolean getIsExcluded() { + return isExcluded; + } + + @Override + public String toString() { + return this.toString(true); + } + + /** + * Return a string representation of the object. + * + * @param includeByteArrayContents true to include the full contents of byte arrays + * @return string representation + */ + public String toString(boolean includeByteArrayContents) { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("UpdateProductDetails("); + sb.append("super=").append(super.toString()); + sb.append("name=").append(String.valueOf(this.name)); + sb.append(", description=").append(String.valueOf(this.description)); + sb.append(", state=").append(String.valueOf(this.state)); + sb.append(", meters=").append(String.valueOf(this.meters)); + sb.append(", serviceName=").append(String.valueOf(this.serviceName)); + sb.append(", limits=").append(String.valueOf(this.limits)); + sb.append(", isExcluded=").append(String.valueOf(this.isExcluded)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateProductDetails)) { + return false; + } + + UpdateProductDetails other = (UpdateProductDetails) o; + return java.util.Objects.equals(this.name, other.name) + && java.util.Objects.equals(this.description, other.description) + && java.util.Objects.equals(this.state, other.state) + && java.util.Objects.equals(this.meters, other.meters) + && java.util.Objects.equals(this.serviceName, other.serviceName) + && java.util.Objects.equals(this.limits, other.limits) + && java.util.Objects.equals(this.isExcluded, other.isExcluded) + && super.equals(other); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = 1; + result = (result * PRIME) + (this.name == null ? 43 : this.name.hashCode()); + result = (result * PRIME) + (this.description == null ? 43 : this.description.hashCode()); + result = (result * PRIME) + (this.state == null ? 43 : this.state.hashCode()); + result = (result * PRIME) + (this.meters == null ? 43 : this.meters.hashCode()); + result = (result * PRIME) + (this.serviceName == null ? 43 : this.serviceName.hashCode()); + result = (result * PRIME) + (this.limits == null ? 43 : this.limits.hashCode()); + result = (result * PRIME) + (this.isExcluded == null ? 43 : this.isExcluded.hashCode()); + result = (result * PRIME) + super.hashCode(); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/ActivateProductRequest.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/ActivateProductRequest.java new file mode 100644 index 00000000000..a70a90ec948 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/ActivateProductRequest.java @@ -0,0 +1,286 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.requests; + +import com.oracle.bmc.ociproductcatalog.model.*; +/** + * Example: Click here to see how to use ActivateProductRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class ActivateProductRequest extends com.oracle.bmc.requests.BmcRequest { + + /** OCID of the product */ + private String productId; + + /** OCID of the product */ + public String getProductId() { + return productId; + } + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + */ + public String getOpcRequestId() { + return 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. + */ + private String opcRetryToken; + + /** + * 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. + */ + public String getOpcRetryToken() { + return opcRetryToken; + } + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the {@code + * if-match} parameter to the value of the etag from a previous GET or POST response for that + * resource. The resource is updated or deleted only if the etag you provide matches the + * resource's current etag value. + */ + private String ifMatch; + + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the {@code + * if-match} parameter to the value of the etag from a previous GET or POST response for that + * resource. The resource is updated or deleted only if the etag you provide matches the + * resource's current etag value. + */ + public String getIfMatch() { + return ifMatch; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + ActivateProductRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** OCID of the product */ + private String productId = null; + + /** + * OCID of the product + * + * @param productId the value to set + * @return this builder instance + */ + public Builder productId(String productId) { + this.productId = productId; + return this; + } + + /** + * 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 = null; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder instance + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** + * 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. + */ + private String opcRetryToken = null; + + /** + * 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. + * + * @param opcRetryToken the value to set + * @return this builder instance + */ + public Builder opcRetryToken(String opcRetryToken) { + this.opcRetryToken = opcRetryToken; + return this; + } + + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + * {@code if-match} parameter to the value of the etag from a previous GET or POST response + * for that resource. The resource is updated or deleted only if the etag you provide + * matches the resource's current etag value. + */ + private String ifMatch = null; + + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + * {@code if-match} parameter to the value of the etag from a previous GET or POST response + * for that resource. The resource is updated or deleted only if the etag you provide + * matches the resource's current etag value. + * + * @param ifMatch the value to set + * @return this builder instance + */ + public Builder ifMatch(String ifMatch) { + this.ifMatch = ifMatch; + return this; + } + + /** + * 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.http.client.RequestInterceptor 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(ActivateProductRequest o) { + productId(o.getProductId()); + opcRequestId(o.getOpcRequestId()); + opcRetryToken(o.getOpcRetryToken()); + ifMatch(o.getIfMatch()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of ActivateProductRequest as configured by this builder + * + *

Note that this method takes calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#buildWithoutInvocationCallback} does not. + * + *

This is the preferred method to build an instance. + * + * @return instance of ActivateProductRequest + */ + public ActivateProductRequest build() { + ActivateProductRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of ActivateProductRequest as configured by this builder + * + *

Note that this method does not take calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#build} does + * + * @return instance of ActivateProductRequest + */ + public ActivateProductRequest buildWithoutInvocationCallback() { + ActivateProductRequest request = new ActivateProductRequest(); + request.productId = productId; + request.opcRequestId = opcRequestId; + request.opcRetryToken = opcRetryToken; + request.ifMatch = ifMatch; + return request; + // new ActivateProductRequest(productId, opcRequestId, opcRetryToken, ifMatch); + } + } + + /** + * Return an instance of {@link Builder} that allows you to modify request properties. + * + * @return instance of {@link Builder} that allows you to modify request properties. + */ + public Builder toBuilder() { + return new Builder() + .productId(productId) + .opcRequestId(opcRequestId) + .opcRetryToken(opcRetryToken) + .ifMatch(ifMatch); + } + + /** + * Return a new builder for this request object. + * + * @return builder for the request object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",productId=").append(String.valueOf(this.productId)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(",opcRetryToken=").append(String.valueOf(this.opcRetryToken)); + sb.append(",ifMatch=").append(String.valueOf(this.ifMatch)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ActivateProductRequest)) { + return false; + } + + ActivateProductRequest other = (ActivateProductRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.productId, other.productId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.opcRetryToken, other.opcRetryToken) + && java.util.Objects.equals(this.ifMatch, other.ifMatch); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.productId == null ? 43 : this.productId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = + (result * PRIME) + + (this.opcRetryToken == null ? 43 : this.opcRetryToken.hashCode()); + result = (result * PRIME) + (this.ifMatch == null ? 43 : this.ifMatch.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/ChangeAdminProductCompartmentRequest.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/ChangeAdminProductCompartmentRequest.java new file mode 100644 index 00000000000..9ed1bf26969 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/ChangeAdminProductCompartmentRequest.java @@ -0,0 +1,354 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.requests; + +import com.oracle.bmc.ociproductcatalog.model.*; +/** + * Example: Click here to see how to use + * ChangeAdminProductCompartmentRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class ChangeAdminProductCompartmentRequest + extends com.oracle.bmc.requests.BmcRequest< + com.oracle.bmc.ociproductcatalog.model.ChangeProductCompartmentDetails> { + + /** OCID of the product */ + private String productId; + + /** OCID of the product */ + public String getProductId() { + return productId; + } + /** The payload for moving a product to a different compartment. */ + private com.oracle.bmc.ociproductcatalog.model.ChangeProductCompartmentDetails + changeProductCompartmentDetails; + + /** The payload for moving a product to a different compartment. */ + public com.oracle.bmc.ociproductcatalog.model.ChangeProductCompartmentDetails + getChangeProductCompartmentDetails() { + return changeProductCompartmentDetails; + } + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + */ + public String getOpcRequestId() { + return 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. + */ + private String opcRetryToken; + + /** + * 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. + */ + public String getOpcRetryToken() { + return opcRetryToken; + } + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the {@code + * if-match} parameter to the value of the etag from a previous GET or POST response for that + * resource. The resource is updated or deleted only if the etag you provide matches the + * resource's current etag value. + */ + private String ifMatch; + + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the {@code + * if-match} parameter to the value of the etag from a previous GET or POST response for that + * resource. The resource is updated or deleted only if the etag you provide matches the + * resource's current etag value. + */ + public String getIfMatch() { + return ifMatch; + } + + /** + * Alternative accessor for the body parameter. + * + * @return body parameter + */ + @Override + @com.oracle.bmc.InternalSdk + public com.oracle.bmc.ociproductcatalog.model.ChangeProductCompartmentDetails getBody$() { + return changeProductCompartmentDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + ChangeAdminProductCompartmentRequest, + com.oracle.bmc.ociproductcatalog.model.ChangeProductCompartmentDetails> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** OCID of the product */ + private String productId = null; + + /** + * OCID of the product + * + * @param productId the value to set + * @return this builder instance + */ + public Builder productId(String productId) { + this.productId = productId; + return this; + } + + /** The payload for moving a product to a different compartment. */ + private com.oracle.bmc.ociproductcatalog.model.ChangeProductCompartmentDetails + changeProductCompartmentDetails = null; + + /** + * The payload for moving a product to a different compartment. + * + * @param changeProductCompartmentDetails the value to set + * @return this builder instance + */ + public Builder changeProductCompartmentDetails( + com.oracle.bmc.ociproductcatalog.model.ChangeProductCompartmentDetails + changeProductCompartmentDetails) { + this.changeProductCompartmentDetails = changeProductCompartmentDetails; + return this; + } + + /** + * 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 = null; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder instance + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** + * 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. + */ + private String opcRetryToken = null; + + /** + * 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. + * + * @param opcRetryToken the value to set + * @return this builder instance + */ + public Builder opcRetryToken(String opcRetryToken) { + this.opcRetryToken = opcRetryToken; + return this; + } + + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + * {@code if-match} parameter to the value of the etag from a previous GET or POST response + * for that resource. The resource is updated or deleted only if the etag you provide + * matches the resource's current etag value. + */ + private String ifMatch = null; + + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + * {@code if-match} parameter to the value of the etag from a previous GET or POST response + * for that resource. The resource is updated or deleted only if the etag you provide + * matches the resource's current etag value. + * + * @param ifMatch the value to set + * @return this builder instance + */ + public Builder ifMatch(String ifMatch) { + this.ifMatch = ifMatch; + return this; + } + + /** + * 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.http.client.RequestInterceptor 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(ChangeAdminProductCompartmentRequest o) { + productId(o.getProductId()); + changeProductCompartmentDetails(o.getChangeProductCompartmentDetails()); + opcRequestId(o.getOpcRequestId()); + opcRetryToken(o.getOpcRetryToken()); + ifMatch(o.getIfMatch()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of ChangeAdminProductCompartmentRequest as configured by this builder + * + *

Note that this method takes calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#buildWithoutInvocationCallback} does not. + * + *

This is the preferred method to build an instance. + * + * @return instance of ChangeAdminProductCompartmentRequest + */ + public ChangeAdminProductCompartmentRequest build() { + ChangeAdminProductCompartmentRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Alternative setter for the body parameter. + * + * @param body the body parameter + * @return this builder instance + */ + @com.oracle.bmc.InternalSdk + public Builder body$( + com.oracle.bmc.ociproductcatalog.model.ChangeProductCompartmentDetails body) { + changeProductCompartmentDetails(body); + return this; + } + + /** + * Build the instance of ChangeAdminProductCompartmentRequest as configured by this builder + * + *

Note that this method does not take calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#build} does + * + * @return instance of ChangeAdminProductCompartmentRequest + */ + public ChangeAdminProductCompartmentRequest buildWithoutInvocationCallback() { + ChangeAdminProductCompartmentRequest request = + new ChangeAdminProductCompartmentRequest(); + request.productId = productId; + request.changeProductCompartmentDetails = changeProductCompartmentDetails; + request.opcRequestId = opcRequestId; + request.opcRetryToken = opcRetryToken; + request.ifMatch = ifMatch; + return request; + // new ChangeAdminProductCompartmentRequest(productId, changeProductCompartmentDetails, + // opcRequestId, opcRetryToken, ifMatch); + } + } + + /** + * Return an instance of {@link Builder} that allows you to modify request properties. + * + * @return instance of {@link Builder} that allows you to modify request properties. + */ + public Builder toBuilder() { + return new Builder() + .productId(productId) + .changeProductCompartmentDetails(changeProductCompartmentDetails) + .opcRequestId(opcRequestId) + .opcRetryToken(opcRetryToken) + .ifMatch(ifMatch); + } + + /** + * Return a new builder for this request object. + * + * @return builder for the request object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",productId=").append(String.valueOf(this.productId)); + sb.append(",changeProductCompartmentDetails=") + .append(String.valueOf(this.changeProductCompartmentDetails)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(",opcRetryToken=").append(String.valueOf(this.opcRetryToken)); + sb.append(",ifMatch=").append(String.valueOf(this.ifMatch)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ChangeAdminProductCompartmentRequest)) { + return false; + } + + ChangeAdminProductCompartmentRequest other = (ChangeAdminProductCompartmentRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.productId, other.productId) + && java.util.Objects.equals( + this.changeProductCompartmentDetails, other.changeProductCompartmentDetails) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.opcRetryToken, other.opcRetryToken) + && java.util.Objects.equals(this.ifMatch, other.ifMatch); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.productId == null ? 43 : this.productId.hashCode()); + result = + (result * PRIME) + + (this.changeProductCompartmentDetails == null + ? 43 + : this.changeProductCompartmentDetails.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = + (result * PRIME) + + (this.opcRetryToken == null ? 43 : this.opcRetryToken.hashCode()); + result = (result * PRIME) + (this.ifMatch == null ? 43 : this.ifMatch.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/ChangeInternalProductCompartmentRequest.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/ChangeInternalProductCompartmentRequest.java new file mode 100644 index 00000000000..5b60bfa1416 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/ChangeInternalProductCompartmentRequest.java @@ -0,0 +1,356 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.requests; + +import com.oracle.bmc.ociproductcatalog.model.*; +/** + * Example: Click here to see how to use + * ChangeInternalProductCompartmentRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class ChangeInternalProductCompartmentRequest + extends com.oracle.bmc.requests.BmcRequest< + com.oracle.bmc.ociproductcatalog.model.ChangeProductCompartmentDetails> { + + /** OCID of the product */ + private String productId; + + /** OCID of the product */ + public String getProductId() { + return productId; + } + /** The payload for moving a product to a different compartment. */ + private com.oracle.bmc.ociproductcatalog.model.ChangeProductCompartmentDetails + changeProductCompartmentDetails; + + /** The payload for moving a product to a different compartment. */ + public com.oracle.bmc.ociproductcatalog.model.ChangeProductCompartmentDetails + getChangeProductCompartmentDetails() { + return changeProductCompartmentDetails; + } + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + */ + public String getOpcRequestId() { + return 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. + */ + private String opcRetryToken; + + /** + * 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. + */ + public String getOpcRetryToken() { + return opcRetryToken; + } + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the {@code + * if-match} parameter to the value of the etag from a previous GET or POST response for that + * resource. The resource is updated or deleted only if the etag you provide matches the + * resource's current etag value. + */ + private String ifMatch; + + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the {@code + * if-match} parameter to the value of the etag from a previous GET or POST response for that + * resource. The resource is updated or deleted only if the etag you provide matches the + * resource's current etag value. + */ + public String getIfMatch() { + return ifMatch; + } + + /** + * Alternative accessor for the body parameter. + * + * @return body parameter + */ + @Override + @com.oracle.bmc.InternalSdk + public com.oracle.bmc.ociproductcatalog.model.ChangeProductCompartmentDetails getBody$() { + return changeProductCompartmentDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + ChangeInternalProductCompartmentRequest, + com.oracle.bmc.ociproductcatalog.model.ChangeProductCompartmentDetails> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** OCID of the product */ + private String productId = null; + + /** + * OCID of the product + * + * @param productId the value to set + * @return this builder instance + */ + public Builder productId(String productId) { + this.productId = productId; + return this; + } + + /** The payload for moving a product to a different compartment. */ + private com.oracle.bmc.ociproductcatalog.model.ChangeProductCompartmentDetails + changeProductCompartmentDetails = null; + + /** + * The payload for moving a product to a different compartment. + * + * @param changeProductCompartmentDetails the value to set + * @return this builder instance + */ + public Builder changeProductCompartmentDetails( + com.oracle.bmc.ociproductcatalog.model.ChangeProductCompartmentDetails + changeProductCompartmentDetails) { + this.changeProductCompartmentDetails = changeProductCompartmentDetails; + return this; + } + + /** + * 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 = null; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder instance + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** + * 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. + */ + private String opcRetryToken = null; + + /** + * 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. + * + * @param opcRetryToken the value to set + * @return this builder instance + */ + public Builder opcRetryToken(String opcRetryToken) { + this.opcRetryToken = opcRetryToken; + return this; + } + + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + * {@code if-match} parameter to the value of the etag from a previous GET or POST response + * for that resource. The resource is updated or deleted only if the etag you provide + * matches the resource's current etag value. + */ + private String ifMatch = null; + + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + * {@code if-match} parameter to the value of the etag from a previous GET or POST response + * for that resource. The resource is updated or deleted only if the etag you provide + * matches the resource's current etag value. + * + * @param ifMatch the value to set + * @return this builder instance + */ + public Builder ifMatch(String ifMatch) { + this.ifMatch = ifMatch; + return this; + } + + /** + * 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.http.client.RequestInterceptor 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(ChangeInternalProductCompartmentRequest o) { + productId(o.getProductId()); + changeProductCompartmentDetails(o.getChangeProductCompartmentDetails()); + opcRequestId(o.getOpcRequestId()); + opcRetryToken(o.getOpcRetryToken()); + ifMatch(o.getIfMatch()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of ChangeInternalProductCompartmentRequest as configured by this + * builder + * + *

Note that this method takes calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#buildWithoutInvocationCallback} does not. + * + *

This is the preferred method to build an instance. + * + * @return instance of ChangeInternalProductCompartmentRequest + */ + public ChangeInternalProductCompartmentRequest build() { + ChangeInternalProductCompartmentRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Alternative setter for the body parameter. + * + * @param body the body parameter + * @return this builder instance + */ + @com.oracle.bmc.InternalSdk + public Builder body$( + com.oracle.bmc.ociproductcatalog.model.ChangeProductCompartmentDetails body) { + changeProductCompartmentDetails(body); + return this; + } + + /** + * Build the instance of ChangeInternalProductCompartmentRequest as configured by this + * builder + * + *

Note that this method does not take calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#build} does + * + * @return instance of ChangeInternalProductCompartmentRequest + */ + public ChangeInternalProductCompartmentRequest buildWithoutInvocationCallback() { + ChangeInternalProductCompartmentRequest request = + new ChangeInternalProductCompartmentRequest(); + request.productId = productId; + request.changeProductCompartmentDetails = changeProductCompartmentDetails; + request.opcRequestId = opcRequestId; + request.opcRetryToken = opcRetryToken; + request.ifMatch = ifMatch; + return request; + // new ChangeInternalProductCompartmentRequest(productId, + // changeProductCompartmentDetails, opcRequestId, opcRetryToken, ifMatch); + } + } + + /** + * Return an instance of {@link Builder} that allows you to modify request properties. + * + * @return instance of {@link Builder} that allows you to modify request properties. + */ + public Builder toBuilder() { + return new Builder() + .productId(productId) + .changeProductCompartmentDetails(changeProductCompartmentDetails) + .opcRequestId(opcRequestId) + .opcRetryToken(opcRetryToken) + .ifMatch(ifMatch); + } + + /** + * Return a new builder for this request object. + * + * @return builder for the request object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",productId=").append(String.valueOf(this.productId)); + sb.append(",changeProductCompartmentDetails=") + .append(String.valueOf(this.changeProductCompartmentDetails)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(",opcRetryToken=").append(String.valueOf(this.opcRetryToken)); + sb.append(",ifMatch=").append(String.valueOf(this.ifMatch)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ChangeInternalProductCompartmentRequest)) { + return false; + } + + ChangeInternalProductCompartmentRequest other = (ChangeInternalProductCompartmentRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.productId, other.productId) + && java.util.Objects.equals( + this.changeProductCompartmentDetails, other.changeProductCompartmentDetails) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.opcRetryToken, other.opcRetryToken) + && java.util.Objects.equals(this.ifMatch, other.ifMatch); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.productId == null ? 43 : this.productId.hashCode()); + result = + (result * PRIME) + + (this.changeProductCompartmentDetails == null + ? 43 + : this.changeProductCompartmentDetails.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = + (result * PRIME) + + (this.opcRetryToken == null ? 43 : this.opcRetryToken.hashCode()); + result = (result * PRIME) + (this.ifMatch == null ? 43 : this.ifMatch.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/CreateAdminProductRequest.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/CreateAdminProductRequest.java new file mode 100644 index 00000000000..47017c8e317 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/CreateAdminProductRequest.java @@ -0,0 +1,273 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.requests; + +import com.oracle.bmc.ociproductcatalog.model.*; +/** + * Example: Click here to see how to use CreateAdminProductRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class CreateAdminProductRequest + extends com.oracle.bmc.requests.BmcRequest< + com.oracle.bmc.ociproductcatalog.model.CreateProductDetails> { + + /** The payload used to create a product */ + private com.oracle.bmc.ociproductcatalog.model.CreateProductDetails createProductDetails; + + /** The payload used to create a product */ + public com.oracle.bmc.ociproductcatalog.model.CreateProductDetails getCreateProductDetails() { + return createProductDetails; + } + /** + * 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. + */ + private String opcRetryToken; + + /** + * 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. + */ + public String getOpcRetryToken() { + return opcRetryToken; + } + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + */ + public String getOpcRequestId() { + return opcRequestId; + } + + /** + * Alternative accessor for the body parameter. + * + * @return body parameter + */ + @Override + @com.oracle.bmc.InternalSdk + public com.oracle.bmc.ociproductcatalog.model.CreateProductDetails getBody$() { + return createProductDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + CreateAdminProductRequest, + com.oracle.bmc.ociproductcatalog.model.CreateProductDetails> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** The payload used to create a product */ + private com.oracle.bmc.ociproductcatalog.model.CreateProductDetails createProductDetails = + null; + + /** + * The payload used to create a product + * + * @param createProductDetails the value to set + * @return this builder instance + */ + public Builder createProductDetails( + com.oracle.bmc.ociproductcatalog.model.CreateProductDetails createProductDetails) { + this.createProductDetails = createProductDetails; + return this; + } + + /** + * 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. + */ + private String opcRetryToken = null; + + /** + * 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. + * + * @param opcRetryToken the value to set + * @return this builder instance + */ + public Builder opcRetryToken(String opcRetryToken) { + this.opcRetryToken = opcRetryToken; + return this; + } + + /** + * 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 = null; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder instance + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** + * 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.http.client.RequestInterceptor 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(CreateAdminProductRequest o) { + createProductDetails(o.getCreateProductDetails()); + opcRetryToken(o.getOpcRetryToken()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of CreateAdminProductRequest as configured by this builder + * + *

Note that this method takes calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#buildWithoutInvocationCallback} does not. + * + *

This is the preferred method to build an instance. + * + * @return instance of CreateAdminProductRequest + */ + public CreateAdminProductRequest build() { + CreateAdminProductRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Alternative setter for the body parameter. + * + * @param body the body parameter + * @return this builder instance + */ + @com.oracle.bmc.InternalSdk + public Builder body$(com.oracle.bmc.ociproductcatalog.model.CreateProductDetails body) { + createProductDetails(body); + return this; + } + + /** + * Build the instance of CreateAdminProductRequest as configured by this builder + * + *

Note that this method does not take calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#build} does + * + * @return instance of CreateAdminProductRequest + */ + public CreateAdminProductRequest buildWithoutInvocationCallback() { + CreateAdminProductRequest request = new CreateAdminProductRequest(); + request.createProductDetails = createProductDetails; + request.opcRetryToken = opcRetryToken; + request.opcRequestId = opcRequestId; + return request; + // new CreateAdminProductRequest(createProductDetails, opcRetryToken, opcRequestId); + } + } + + /** + * Return an instance of {@link Builder} that allows you to modify request properties. + * + * @return instance of {@link Builder} that allows you to modify request properties. + */ + public Builder toBuilder() { + return new Builder() + .createProductDetails(createProductDetails) + .opcRetryToken(opcRetryToken) + .opcRequestId(opcRequestId); + } + + /** + * Return a new builder for this request object. + * + * @return builder for the request object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",createProductDetails=").append(String.valueOf(this.createProductDetails)); + sb.append(",opcRetryToken=").append(String.valueOf(this.opcRetryToken)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateAdminProductRequest)) { + return false; + } + + CreateAdminProductRequest other = (CreateAdminProductRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.createProductDetails, other.createProductDetails) + && java.util.Objects.equals(this.opcRetryToken, other.opcRetryToken) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.createProductDetails == null + ? 43 + : this.createProductDetails.hashCode()); + result = + (result * PRIME) + + (this.opcRetryToken == null ? 43 : this.opcRetryToken.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/CreateInternalProductRequest.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/CreateInternalProductRequest.java new file mode 100644 index 00000000000..8e175dbfa03 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/CreateInternalProductRequest.java @@ -0,0 +1,274 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.requests; + +import com.oracle.bmc.ociproductcatalog.model.*; +/** + * Example: Click here to see how to use + * CreateInternalProductRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class CreateInternalProductRequest + extends com.oracle.bmc.requests.BmcRequest< + com.oracle.bmc.ociproductcatalog.model.CreateProductDetails> { + + /** The payload used to create a product */ + private com.oracle.bmc.ociproductcatalog.model.CreateProductDetails createProductDetails; + + /** The payload used to create a product */ + public com.oracle.bmc.ociproductcatalog.model.CreateProductDetails getCreateProductDetails() { + return createProductDetails; + } + /** + * 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. + */ + private String opcRetryToken; + + /** + * 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. + */ + public String getOpcRetryToken() { + return opcRetryToken; + } + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + */ + public String getOpcRequestId() { + return opcRequestId; + } + + /** + * Alternative accessor for the body parameter. + * + * @return body parameter + */ + @Override + @com.oracle.bmc.InternalSdk + public com.oracle.bmc.ociproductcatalog.model.CreateProductDetails getBody$() { + return createProductDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + CreateInternalProductRequest, + com.oracle.bmc.ociproductcatalog.model.CreateProductDetails> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** The payload used to create a product */ + private com.oracle.bmc.ociproductcatalog.model.CreateProductDetails createProductDetails = + null; + + /** + * The payload used to create a product + * + * @param createProductDetails the value to set + * @return this builder instance + */ + public Builder createProductDetails( + com.oracle.bmc.ociproductcatalog.model.CreateProductDetails createProductDetails) { + this.createProductDetails = createProductDetails; + return this; + } + + /** + * 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. + */ + private String opcRetryToken = null; + + /** + * 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. + * + * @param opcRetryToken the value to set + * @return this builder instance + */ + public Builder opcRetryToken(String opcRetryToken) { + this.opcRetryToken = opcRetryToken; + return this; + } + + /** + * 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 = null; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder instance + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** + * 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.http.client.RequestInterceptor 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(CreateInternalProductRequest o) { + createProductDetails(o.getCreateProductDetails()); + opcRetryToken(o.getOpcRetryToken()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of CreateInternalProductRequest as configured by this builder + * + *

Note that this method takes calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#buildWithoutInvocationCallback} does not. + * + *

This is the preferred method to build an instance. + * + * @return instance of CreateInternalProductRequest + */ + public CreateInternalProductRequest build() { + CreateInternalProductRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Alternative setter for the body parameter. + * + * @param body the body parameter + * @return this builder instance + */ + @com.oracle.bmc.InternalSdk + public Builder body$(com.oracle.bmc.ociproductcatalog.model.CreateProductDetails body) { + createProductDetails(body); + return this; + } + + /** + * Build the instance of CreateInternalProductRequest as configured by this builder + * + *

Note that this method does not take calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#build} does + * + * @return instance of CreateInternalProductRequest + */ + public CreateInternalProductRequest buildWithoutInvocationCallback() { + CreateInternalProductRequest request = new CreateInternalProductRequest(); + request.createProductDetails = createProductDetails; + request.opcRetryToken = opcRetryToken; + request.opcRequestId = opcRequestId; + return request; + // new CreateInternalProductRequest(createProductDetails, opcRetryToken, opcRequestId); + } + } + + /** + * Return an instance of {@link Builder} that allows you to modify request properties. + * + * @return instance of {@link Builder} that allows you to modify request properties. + */ + public Builder toBuilder() { + return new Builder() + .createProductDetails(createProductDetails) + .opcRetryToken(opcRetryToken) + .opcRequestId(opcRequestId); + } + + /** + * Return a new builder for this request object. + * + * @return builder for the request object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",createProductDetails=").append(String.valueOf(this.createProductDetails)); + sb.append(",opcRetryToken=").append(String.valueOf(this.opcRetryToken)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateInternalProductRequest)) { + return false; + } + + CreateInternalProductRequest other = (CreateInternalProductRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.createProductDetails, other.createProductDetails) + && java.util.Objects.equals(this.opcRetryToken, other.opcRetryToken) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.createProductDetails == null + ? 43 + : this.createProductDetails.hashCode()); + result = + (result * PRIME) + + (this.opcRetryToken == null ? 43 : this.opcRetryToken.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/DeleteAdminProductRequest.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/DeleteAdminProductRequest.java new file mode 100644 index 00000000000..3097b3197b0 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/DeleteAdminProductRequest.java @@ -0,0 +1,244 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.requests; + +import com.oracle.bmc.ociproductcatalog.model.*; +/** + * Example: Click here to see how to use DeleteAdminProductRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class DeleteAdminProductRequest extends com.oracle.bmc.requests.BmcRequest { + + /** OCID of the product */ + private String productId; + + /** OCID of the product */ + public String getProductId() { + return productId; + } + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + */ + public String getOpcRequestId() { + return opcRequestId; + } + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the {@code + * if-match} parameter to the value of the etag from a previous GET or POST response for that + * resource. The resource is updated or deleted only if the etag you provide matches the + * resource's current etag value. + */ + private String ifMatch; + + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the {@code + * if-match} parameter to the value of the etag from a previous GET or POST response for that + * resource. The resource is updated or deleted only if the etag you provide matches the + * resource's current etag value. + */ + public String getIfMatch() { + return ifMatch; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + DeleteAdminProductRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** OCID of the product */ + private String productId = null; + + /** + * OCID of the product + * + * @param productId the value to set + * @return this builder instance + */ + public Builder productId(String productId) { + this.productId = productId; + return this; + } + + /** + * 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 = null; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder instance + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + * {@code if-match} parameter to the value of the etag from a previous GET or POST response + * for that resource. The resource is updated or deleted only if the etag you provide + * matches the resource's current etag value. + */ + private String ifMatch = null; + + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + * {@code if-match} parameter to the value of the etag from a previous GET or POST response + * for that resource. The resource is updated or deleted only if the etag you provide + * matches the resource's current etag value. + * + * @param ifMatch the value to set + * @return this builder instance + */ + public Builder ifMatch(String ifMatch) { + this.ifMatch = ifMatch; + return this; + } + + /** + * 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.http.client.RequestInterceptor 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(DeleteAdminProductRequest o) { + productId(o.getProductId()); + opcRequestId(o.getOpcRequestId()); + ifMatch(o.getIfMatch()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of DeleteAdminProductRequest as configured by this builder + * + *

Note that this method takes calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#buildWithoutInvocationCallback} does not. + * + *

This is the preferred method to build an instance. + * + * @return instance of DeleteAdminProductRequest + */ + public DeleteAdminProductRequest build() { + DeleteAdminProductRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of DeleteAdminProductRequest as configured by this builder + * + *

Note that this method does not take calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#build} does + * + * @return instance of DeleteAdminProductRequest + */ + public DeleteAdminProductRequest buildWithoutInvocationCallback() { + DeleteAdminProductRequest request = new DeleteAdminProductRequest(); + request.productId = productId; + request.opcRequestId = opcRequestId; + request.ifMatch = ifMatch; + return request; + // new DeleteAdminProductRequest(productId, opcRequestId, ifMatch); + } + } + + /** + * Return an instance of {@link Builder} that allows you to modify request properties. + * + * @return instance of {@link Builder} that allows you to modify request properties. + */ + public Builder toBuilder() { + return new Builder().productId(productId).opcRequestId(opcRequestId).ifMatch(ifMatch); + } + + /** + * Return a new builder for this request object. + * + * @return builder for the request object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",productId=").append(String.valueOf(this.productId)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(",ifMatch=").append(String.valueOf(this.ifMatch)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof DeleteAdminProductRequest)) { + return false; + } + + DeleteAdminProductRequest other = (DeleteAdminProductRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.productId, other.productId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.ifMatch, other.ifMatch); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.productId == null ? 43 : this.productId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.ifMatch == null ? 43 : this.ifMatch.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/DeleteInternalProductRequest.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/DeleteInternalProductRequest.java new file mode 100644 index 00000000000..b6fed6f8a95 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/DeleteInternalProductRequest.java @@ -0,0 +1,246 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.requests; + +import com.oracle.bmc.ociproductcatalog.model.*; +/** + * Example: Click here to see how to use + * DeleteInternalProductRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class DeleteInternalProductRequest + extends com.oracle.bmc.requests.BmcRequest { + + /** OCID of the product */ + private String productId; + + /** OCID of the product */ + public String getProductId() { + return productId; + } + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + */ + public String getOpcRequestId() { + return opcRequestId; + } + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the {@code + * if-match} parameter to the value of the etag from a previous GET or POST response for that + * resource. The resource is updated or deleted only if the etag you provide matches the + * resource's current etag value. + */ + private String ifMatch; + + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the {@code + * if-match} parameter to the value of the etag from a previous GET or POST response for that + * resource. The resource is updated or deleted only if the etag you provide matches the + * resource's current etag value. + */ + public String getIfMatch() { + return ifMatch; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + DeleteInternalProductRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** OCID of the product */ + private String productId = null; + + /** + * OCID of the product + * + * @param productId the value to set + * @return this builder instance + */ + public Builder productId(String productId) { + this.productId = productId; + return this; + } + + /** + * 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 = null; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder instance + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + * {@code if-match} parameter to the value of the etag from a previous GET or POST response + * for that resource. The resource is updated or deleted only if the etag you provide + * matches the resource's current etag value. + */ + private String ifMatch = null; + + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + * {@code if-match} parameter to the value of the etag from a previous GET or POST response + * for that resource. The resource is updated or deleted only if the etag you provide + * matches the resource's current etag value. + * + * @param ifMatch the value to set + * @return this builder instance + */ + public Builder ifMatch(String ifMatch) { + this.ifMatch = ifMatch; + return this; + } + + /** + * 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.http.client.RequestInterceptor 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(DeleteInternalProductRequest o) { + productId(o.getProductId()); + opcRequestId(o.getOpcRequestId()); + ifMatch(o.getIfMatch()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of DeleteInternalProductRequest as configured by this builder + * + *

Note that this method takes calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#buildWithoutInvocationCallback} does not. + * + *

This is the preferred method to build an instance. + * + * @return instance of DeleteInternalProductRequest + */ + public DeleteInternalProductRequest build() { + DeleteInternalProductRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of DeleteInternalProductRequest as configured by this builder + * + *

Note that this method does not take calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#build} does + * + * @return instance of DeleteInternalProductRequest + */ + public DeleteInternalProductRequest buildWithoutInvocationCallback() { + DeleteInternalProductRequest request = new DeleteInternalProductRequest(); + request.productId = productId; + request.opcRequestId = opcRequestId; + request.ifMatch = ifMatch; + return request; + // new DeleteInternalProductRequest(productId, opcRequestId, ifMatch); + } + } + + /** + * Return an instance of {@link Builder} that allows you to modify request properties. + * + * @return instance of {@link Builder} that allows you to modify request properties. + */ + public Builder toBuilder() { + return new Builder().productId(productId).opcRequestId(opcRequestId).ifMatch(ifMatch); + } + + /** + * Return a new builder for this request object. + * + * @return builder for the request object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",productId=").append(String.valueOf(this.productId)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(",ifMatch=").append(String.valueOf(this.ifMatch)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof DeleteInternalProductRequest)) { + return false; + } + + DeleteInternalProductRequest other = (DeleteInternalProductRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.productId, other.productId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.ifMatch, other.ifMatch); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.productId == null ? 43 : this.productId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.ifMatch == null ? 43 : this.ifMatch.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/GetAdminProductRequest.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/GetAdminProductRequest.java new file mode 100644 index 00000000000..ef7bb7c4d25 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/GetAdminProductRequest.java @@ -0,0 +1,200 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.requests; + +import com.oracle.bmc.ociproductcatalog.model.*; +/** + * Example: Click here to see how to use GetAdminProductRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class GetAdminProductRequest extends com.oracle.bmc.requests.BmcRequest { + + /** OCID of the product */ + private String productId; + + /** OCID of the product */ + public String getProductId() { + return productId; + } + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + */ + public String getOpcRequestId() { + return opcRequestId; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + GetAdminProductRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** OCID of the product */ + private String productId = null; + + /** + * OCID of the product + * + * @param productId the value to set + * @return this builder instance + */ + public Builder productId(String productId) { + this.productId = productId; + return this; + } + + /** + * 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 = null; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder instance + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** + * 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.http.client.RequestInterceptor 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(GetAdminProductRequest o) { + productId(o.getProductId()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of GetAdminProductRequest as configured by this builder + * + *

Note that this method takes calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#buildWithoutInvocationCallback} does not. + * + *

This is the preferred method to build an instance. + * + * @return instance of GetAdminProductRequest + */ + public GetAdminProductRequest build() { + GetAdminProductRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of GetAdminProductRequest as configured by this builder + * + *

Note that this method does not take calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#build} does + * + * @return instance of GetAdminProductRequest + */ + public GetAdminProductRequest buildWithoutInvocationCallback() { + GetAdminProductRequest request = new GetAdminProductRequest(); + request.productId = productId; + request.opcRequestId = opcRequestId; + return request; + // new GetAdminProductRequest(productId, opcRequestId); + } + } + + /** + * Return an instance of {@link Builder} that allows you to modify request properties. + * + * @return instance of {@link Builder} that allows you to modify request properties. + */ + public Builder toBuilder() { + return new Builder().productId(productId).opcRequestId(opcRequestId); + } + + /** + * Return a new builder for this request object. + * + * @return builder for the request object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",productId=").append(String.valueOf(this.productId)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof GetAdminProductRequest)) { + return false; + } + + GetAdminProductRequest other = (GetAdminProductRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.productId, other.productId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.productId == null ? 43 : this.productId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/GetInternalProductRequest.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/GetInternalProductRequest.java new file mode 100644 index 00000000000..3be143ee838 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/GetInternalProductRequest.java @@ -0,0 +1,200 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.requests; + +import com.oracle.bmc.ociproductcatalog.model.*; +/** + * Example: Click here to see how to use GetInternalProductRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class GetInternalProductRequest extends com.oracle.bmc.requests.BmcRequest { + + /** OCID of the product */ + private String productId; + + /** OCID of the product */ + public String getProductId() { + return productId; + } + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + */ + public String getOpcRequestId() { + return opcRequestId; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + GetInternalProductRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** OCID of the product */ + private String productId = null; + + /** + * OCID of the product + * + * @param productId the value to set + * @return this builder instance + */ + public Builder productId(String productId) { + this.productId = productId; + return this; + } + + /** + * 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 = null; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder instance + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** + * 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.http.client.RequestInterceptor 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(GetInternalProductRequest o) { + productId(o.getProductId()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of GetInternalProductRequest as configured by this builder + * + *

Note that this method takes calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#buildWithoutInvocationCallback} does not. + * + *

This is the preferred method to build an instance. + * + * @return instance of GetInternalProductRequest + */ + public GetInternalProductRequest build() { + GetInternalProductRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of GetInternalProductRequest as configured by this builder + * + *

Note that this method does not take calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#build} does + * + * @return instance of GetInternalProductRequest + */ + public GetInternalProductRequest buildWithoutInvocationCallback() { + GetInternalProductRequest request = new GetInternalProductRequest(); + request.productId = productId; + request.opcRequestId = opcRequestId; + return request; + // new GetInternalProductRequest(productId, opcRequestId); + } + } + + /** + * Return an instance of {@link Builder} that allows you to modify request properties. + * + * @return instance of {@link Builder} that allows you to modify request properties. + */ + public Builder toBuilder() { + return new Builder().productId(productId).opcRequestId(opcRequestId); + } + + /** + * Return a new builder for this request object. + * + * @return builder for the request object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",productId=").append(String.valueOf(this.productId)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof GetInternalProductRequest)) { + return false; + } + + GetInternalProductRequest other = (GetInternalProductRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.productId, other.productId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.productId == null ? 43 : this.productId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/GetProductRequest.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/GetProductRequest.java new file mode 100644 index 00000000000..ab0df78f4e7 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/GetProductRequest.java @@ -0,0 +1,200 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.requests; + +import com.oracle.bmc.ociproductcatalog.model.*; +/** + * Example: Click here to see how to use GetProductRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class GetProductRequest extends com.oracle.bmc.requests.BmcRequest { + + /** OCID of the product */ + private String productId; + + /** OCID of the product */ + public String getProductId() { + return productId; + } + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + */ + public String getOpcRequestId() { + return opcRequestId; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + GetProductRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** OCID of the product */ + private String productId = null; + + /** + * OCID of the product + * + * @param productId the value to set + * @return this builder instance + */ + public Builder productId(String productId) { + this.productId = productId; + return this; + } + + /** + * 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 = null; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder instance + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** + * 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.http.client.RequestInterceptor 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(GetProductRequest o) { + productId(o.getProductId()); + opcRequestId(o.getOpcRequestId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of GetProductRequest as configured by this builder + * + *

Note that this method takes calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#buildWithoutInvocationCallback} does not. + * + *

This is the preferred method to build an instance. + * + * @return instance of GetProductRequest + */ + public GetProductRequest build() { + GetProductRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of GetProductRequest as configured by this builder + * + *

Note that this method does not take calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#build} does + * + * @return instance of GetProductRequest + */ + public GetProductRequest buildWithoutInvocationCallback() { + GetProductRequest request = new GetProductRequest(); + request.productId = productId; + request.opcRequestId = opcRequestId; + return request; + // new GetProductRequest(productId, opcRequestId); + } + } + + /** + * Return an instance of {@link Builder} that allows you to modify request properties. + * + * @return instance of {@link Builder} that allows you to modify request properties. + */ + public Builder toBuilder() { + return new Builder().productId(productId).opcRequestId(opcRequestId); + } + + /** + * Return a new builder for this request object. + * + * @return builder for the request object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",productId=").append(String.valueOf(this.productId)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof GetProductRequest)) { + return false; + } + + GetProductRequest other = (GetProductRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.productId, other.productId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.productId == null ? 43 : this.productId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/ListAdminProductsRequest.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/ListAdminProductsRequest.java new file mode 100644 index 00000000000..5df96024e3d --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/ListAdminProductsRequest.java @@ -0,0 +1,314 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.requests; + +import com.oracle.bmc.ociproductcatalog.model.*; +/** + * Example: Click here to see how to use ListAdminProductsRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class ListAdminProductsRequest extends com.oracle.bmc.requests.BmcRequest { + + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + */ + public String getOpcRequestId() { + return opcRequestId; + } + /** The value of the {@code opc-next-page} response header from the previous "List" call. */ + private String page; + + /** The value of the {@code opc-next-page} response header from the previous "List" call. */ + public String getPage() { + return page; + } + /** The maximum number of items to return in a paginated "List" call. */ + private Integer limit; + + /** The maximum number of items to return in a paginated "List" call. */ + public Integer getLimit() { + return limit; + } + /** The name of the product to be queried */ + private String name; + + /** The name of the product to be queried */ + public String getName() { + return name; + } + /** The OCID of the product to be queried */ + private String id; + + /** The OCID of the product to be queried */ + public String getId() { + return id; + } + /** The OCID of the compartment (remember that the tenancy is simply the root compartment). */ + private String compartmentId; + + /** The OCID of the compartment (remember that the tenancy is simply the root compartment). */ + public String getCompartmentId() { + return compartmentId; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + ListAdminProductsRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * 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 = null; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder instance + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** The value of the {@code opc-next-page} response header from the previous "List" call. */ + private String page = null; + + /** + * The value of the {@code opc-next-page} response header from the previous "List" call. + * + * @param page the value to set + * @return this builder instance + */ + public Builder page(String page) { + this.page = page; + return this; + } + + /** The maximum number of items to return in a paginated "List" call. */ + private Integer limit = null; + + /** + * The maximum number of items to return in a paginated "List" call. + * + * @param limit the value to set + * @return this builder instance + */ + public Builder limit(Integer limit) { + this.limit = limit; + return this; + } + + /** The name of the product to be queried */ + private String name = null; + + /** + * The name of the product to be queried + * + * @param name the value to set + * @return this builder instance + */ + public Builder name(String name) { + this.name = name; + return this; + } + + /** The OCID of the product to be queried */ + private String id = null; + + /** + * The OCID of the product to be queried + * + * @param id the value to set + * @return this builder instance + */ + public Builder id(String id) { + this.id = id; + return this; + } + + /** + * The OCID of the compartment (remember that the tenancy is simply the root compartment). + */ + private String compartmentId = null; + + /** + * The OCID of the compartment (remember that the tenancy is simply the root compartment). + * + * @param compartmentId the value to set + * @return this builder instance + */ + public Builder compartmentId(String compartmentId) { + this.compartmentId = compartmentId; + return this; + } + + /** + * 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.http.client.RequestInterceptor 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(ListAdminProductsRequest o) { + opcRequestId(o.getOpcRequestId()); + page(o.getPage()); + limit(o.getLimit()); + name(o.getName()); + id(o.getId()); + compartmentId(o.getCompartmentId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of ListAdminProductsRequest as configured by this builder + * + *

Note that this method takes calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#buildWithoutInvocationCallback} does not. + * + *

This is the preferred method to build an instance. + * + * @return instance of ListAdminProductsRequest + */ + public ListAdminProductsRequest build() { + ListAdminProductsRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of ListAdminProductsRequest as configured by this builder + * + *

Note that this method does not take calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#build} does + * + * @return instance of ListAdminProductsRequest + */ + public ListAdminProductsRequest buildWithoutInvocationCallback() { + ListAdminProductsRequest request = new ListAdminProductsRequest(); + request.opcRequestId = opcRequestId; + request.page = page; + request.limit = limit; + request.name = name; + request.id = id; + request.compartmentId = compartmentId; + return request; + // new ListAdminProductsRequest(opcRequestId, page, limit, name, id, compartmentId); + } + } + + /** + * Return an instance of {@link Builder} that allows you to modify request properties. + * + * @return instance of {@link Builder} that allows you to modify request properties. + */ + public Builder toBuilder() { + return new Builder() + .opcRequestId(opcRequestId) + .page(page) + .limit(limit) + .name(name) + .id(id) + .compartmentId(compartmentId); + } + + /** + * Return a new builder for this request object. + * + * @return builder for the request object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(",page=").append(String.valueOf(this.page)); + sb.append(",limit=").append(String.valueOf(this.limit)); + sb.append(",name=").append(String.valueOf(this.name)); + sb.append(",id=").append(String.valueOf(this.id)); + sb.append(",compartmentId=").append(String.valueOf(this.compartmentId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ListAdminProductsRequest)) { + return false; + } + + ListAdminProductsRequest other = (ListAdminProductsRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.page, other.page) + && java.util.Objects.equals(this.limit, other.limit) + && java.util.Objects.equals(this.name, other.name) + && java.util.Objects.equals(this.id, other.id) + && java.util.Objects.equals(this.compartmentId, other.compartmentId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.page == null ? 43 : this.page.hashCode()); + result = (result * PRIME) + (this.limit == null ? 43 : this.limit.hashCode()); + result = (result * PRIME) + (this.name == null ? 43 : this.name.hashCode()); + result = (result * PRIME) + (this.id == null ? 43 : this.id.hashCode()); + result = + (result * PRIME) + + (this.compartmentId == null ? 43 : this.compartmentId.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/ListInternalProductsRequest.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/ListInternalProductsRequest.java new file mode 100644 index 00000000000..7fd919d3e6e --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/ListInternalProductsRequest.java @@ -0,0 +1,315 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.requests; + +import com.oracle.bmc.ociproductcatalog.model.*; +/** + * Example: Click here to see how to use ListInternalProductsRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class ListInternalProductsRequest + extends com.oracle.bmc.requests.BmcRequest { + + /** The OCID of the compartment (remember that the tenancy is simply the root compartment). */ + private String compartmentId; + + /** The OCID of the compartment (remember that the tenancy is simply the root compartment). */ + public String getCompartmentId() { + return compartmentId; + } + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + */ + public String getOpcRequestId() { + return opcRequestId; + } + /** The value of the {@code opc-next-page} response header from the previous "List" call. */ + private String page; + + /** The value of the {@code opc-next-page} response header from the previous "List" call. */ + public String getPage() { + return page; + } + /** The maximum number of items to return in a paginated "List" call. */ + private Integer limit; + + /** The maximum number of items to return in a paginated "List" call. */ + public Integer getLimit() { + return limit; + } + /** The name of the product to be queried */ + private String name; + + /** The name of the product to be queried */ + public String getName() { + return name; + } + /** The OCID of the product to be queried */ + private String id; + + /** The OCID of the product to be queried */ + public String getId() { + return id; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + ListInternalProductsRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * The OCID of the compartment (remember that the tenancy is simply the root compartment). + */ + private String compartmentId = null; + + /** + * The OCID of the compartment (remember that the tenancy is simply the root compartment). + * + * @param compartmentId the value to set + * @return this builder instance + */ + public Builder compartmentId(String compartmentId) { + this.compartmentId = compartmentId; + return this; + } + + /** + * 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 = null; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder instance + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** The value of the {@code opc-next-page} response header from the previous "List" call. */ + private String page = null; + + /** + * The value of the {@code opc-next-page} response header from the previous "List" call. + * + * @param page the value to set + * @return this builder instance + */ + public Builder page(String page) { + this.page = page; + return this; + } + + /** The maximum number of items to return in a paginated "List" call. */ + private Integer limit = null; + + /** + * The maximum number of items to return in a paginated "List" call. + * + * @param limit the value to set + * @return this builder instance + */ + public Builder limit(Integer limit) { + this.limit = limit; + return this; + } + + /** The name of the product to be queried */ + private String name = null; + + /** + * The name of the product to be queried + * + * @param name the value to set + * @return this builder instance + */ + public Builder name(String name) { + this.name = name; + return this; + } + + /** The OCID of the product to be queried */ + private String id = null; + + /** + * The OCID of the product to be queried + * + * @param id the value to set + * @return this builder instance + */ + public Builder id(String id) { + this.id = id; + return this; + } + + /** + * 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.http.client.RequestInterceptor 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(ListInternalProductsRequest o) { + compartmentId(o.getCompartmentId()); + opcRequestId(o.getOpcRequestId()); + page(o.getPage()); + limit(o.getLimit()); + name(o.getName()); + id(o.getId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of ListInternalProductsRequest as configured by this builder + * + *

Note that this method takes calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#buildWithoutInvocationCallback} does not. + * + *

This is the preferred method to build an instance. + * + * @return instance of ListInternalProductsRequest + */ + public ListInternalProductsRequest build() { + ListInternalProductsRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of ListInternalProductsRequest as configured by this builder + * + *

Note that this method does not take calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#build} does + * + * @return instance of ListInternalProductsRequest + */ + public ListInternalProductsRequest buildWithoutInvocationCallback() { + ListInternalProductsRequest request = new ListInternalProductsRequest(); + request.compartmentId = compartmentId; + request.opcRequestId = opcRequestId; + request.page = page; + request.limit = limit; + request.name = name; + request.id = id; + return request; + // new ListInternalProductsRequest(compartmentId, opcRequestId, page, limit, name, id); + } + } + + /** + * Return an instance of {@link Builder} that allows you to modify request properties. + * + * @return instance of {@link Builder} that allows you to modify request properties. + */ + public Builder toBuilder() { + return new Builder() + .compartmentId(compartmentId) + .opcRequestId(opcRequestId) + .page(page) + .limit(limit) + .name(name) + .id(id); + } + + /** + * Return a new builder for this request object. + * + * @return builder for the request object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",compartmentId=").append(String.valueOf(this.compartmentId)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(",page=").append(String.valueOf(this.page)); + sb.append(",limit=").append(String.valueOf(this.limit)); + sb.append(",name=").append(String.valueOf(this.name)); + sb.append(",id=").append(String.valueOf(this.id)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ListInternalProductsRequest)) { + return false; + } + + ListInternalProductsRequest other = (ListInternalProductsRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.compartmentId, other.compartmentId) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.page, other.page) + && java.util.Objects.equals(this.limit, other.limit) + && java.util.Objects.equals(this.name, other.name) + && java.util.Objects.equals(this.id, other.id); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = + (result * PRIME) + + (this.compartmentId == null ? 43 : this.compartmentId.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.page == null ? 43 : this.page.hashCode()); + result = (result * PRIME) + (this.limit == null ? 43 : this.limit.hashCode()); + result = (result * PRIME) + (this.name == null ? 43 : this.name.hashCode()); + result = (result * PRIME) + (this.id == null ? 43 : this.id.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/ListProductsRequest.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/ListProductsRequest.java new file mode 100644 index 00000000000..2c9ce83db53 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/ListProductsRequest.java @@ -0,0 +1,393 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.requests; + +import com.oracle.bmc.ociproductcatalog.model.*; +/** + * Example: Click here to see how to use ListProductsRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class ListProductsRequest extends com.oracle.bmc.requests.BmcRequest { + + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + */ + public String getOpcRequestId() { + return opcRequestId; + } + /** + * The bPartNumber of the SKU to be used to filter the result. All the product has this sku in + * the skus list will be returned + */ + private String skusContains; + + /** + * The bPartNumber of the SKU to be used to filter the result. All the product has this sku in + * the skus list will be returned + */ + public String getSkusContains() { + return skusContains; + } + /** The name of the product to be queried */ + private String name; + + /** The name of the product to be queried */ + public String getName() { + return name; + } + /** The lifecycleState used to filter the result */ + private String lifecycleState; + + /** The lifecycleState used to filter the result */ + public String getLifecycleState() { + return lifecycleState; + } + /** + * A filter to return only the products with {@code timeReady} field greater than or equal to + * given value. Example: {@code 2022-01-25T21:10:29.600Z} + */ + private java.util.Date timeReadyGreaterThanOrEqualTo; + + /** + * A filter to return only the products with {@code timeReady} field greater than or equal to + * given value. Example: {@code 2022-01-25T21:10:29.600Z} + */ + public java.util.Date getTimeReadyGreaterThanOrEqualTo() { + return timeReadyGreaterThanOrEqualTo; + } + /** The value of the {@code opc-next-page} response header from the previous "List" call. */ + private String page; + + /** The value of the {@code opc-next-page} response header from the previous "List" call. */ + public String getPage() { + return page; + } + /** The maximum number of items to return in a paginated "List" call. */ + private Integer limit; + + /** The maximum number of items to return in a paginated "List" call. */ + public Integer getLimit() { + return limit; + } + /** The OCID of the product to be queried */ + private String id; + + /** The OCID of the product to be queried */ + public String getId() { + return id; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + ListProductsRequest, java.lang.Void> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** + * 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 = null; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder instance + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** + * The bPartNumber of the SKU to be used to filter the result. All the product has this sku + * in the skus list will be returned + */ + private String skusContains = null; + + /** + * The bPartNumber of the SKU to be used to filter the result. All the product has this sku + * in the skus list will be returned + * + * @param skusContains the value to set + * @return this builder instance + */ + public Builder skusContains(String skusContains) { + this.skusContains = skusContains; + return this; + } + + /** The name of the product to be queried */ + private String name = null; + + /** + * The name of the product to be queried + * + * @param name the value to set + * @return this builder instance + */ + public Builder name(String name) { + this.name = name; + return this; + } + + /** The lifecycleState used to filter the result */ + private String lifecycleState = null; + + /** + * The lifecycleState used to filter the result + * + * @param lifecycleState the value to set + * @return this builder instance + */ + public Builder lifecycleState(String lifecycleState) { + this.lifecycleState = lifecycleState; + return this; + } + + /** + * A filter to return only the products with {@code timeReady} field greater than or equal + * to given value. Example: {@code 2022-01-25T21:10:29.600Z} + */ + private java.util.Date timeReadyGreaterThanOrEqualTo = null; + + /** + * A filter to return only the products with {@code timeReady} field greater than or equal + * to given value. Example: {@code 2022-01-25T21:10:29.600Z} + * + * @param timeReadyGreaterThanOrEqualTo the value to set + * @return this builder instance + */ + public Builder timeReadyGreaterThanOrEqualTo(java.util.Date timeReadyGreaterThanOrEqualTo) { + this.timeReadyGreaterThanOrEqualTo = timeReadyGreaterThanOrEqualTo; + return this; + } + + /** The value of the {@code opc-next-page} response header from the previous "List" call. */ + private String page = null; + + /** + * The value of the {@code opc-next-page} response header from the previous "List" call. + * + * @param page the value to set + * @return this builder instance + */ + public Builder page(String page) { + this.page = page; + return this; + } + + /** The maximum number of items to return in a paginated "List" call. */ + private Integer limit = null; + + /** + * The maximum number of items to return in a paginated "List" call. + * + * @param limit the value to set + * @return this builder instance + */ + public Builder limit(Integer limit) { + this.limit = limit; + return this; + } + + /** The OCID of the product to be queried */ + private String id = null; + + /** + * The OCID of the product to be queried + * + * @param id the value to set + * @return this builder instance + */ + public Builder id(String id) { + this.id = id; + return this; + } + + /** + * 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.http.client.RequestInterceptor 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(ListProductsRequest o) { + opcRequestId(o.getOpcRequestId()); + skusContains(o.getSkusContains()); + name(o.getName()); + lifecycleState(o.getLifecycleState()); + timeReadyGreaterThanOrEqualTo(o.getTimeReadyGreaterThanOrEqualTo()); + page(o.getPage()); + limit(o.getLimit()); + id(o.getId()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of ListProductsRequest as configured by this builder + * + *

Note that this method takes calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#buildWithoutInvocationCallback} does not. + * + *

This is the preferred method to build an instance. + * + * @return instance of ListProductsRequest + */ + public ListProductsRequest build() { + ListProductsRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Build the instance of ListProductsRequest as configured by this builder + * + *

Note that this method does not take calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#build} does + * + * @return instance of ListProductsRequest + */ + public ListProductsRequest buildWithoutInvocationCallback() { + ListProductsRequest request = new ListProductsRequest(); + request.opcRequestId = opcRequestId; + request.skusContains = skusContains; + request.name = name; + request.lifecycleState = lifecycleState; + request.timeReadyGreaterThanOrEqualTo = timeReadyGreaterThanOrEqualTo; + request.page = page; + request.limit = limit; + request.id = id; + return request; + // new ListProductsRequest(opcRequestId, skusContains, name, lifecycleState, + // timeReadyGreaterThanOrEqualTo, page, limit, id); + } + } + + /** + * Return an instance of {@link Builder} that allows you to modify request properties. + * + * @return instance of {@link Builder} that allows you to modify request properties. + */ + public Builder toBuilder() { + return new Builder() + .opcRequestId(opcRequestId) + .skusContains(skusContains) + .name(name) + .lifecycleState(lifecycleState) + .timeReadyGreaterThanOrEqualTo(timeReadyGreaterThanOrEqualTo) + .page(page) + .limit(limit) + .id(id); + } + + /** + * Return a new builder for this request object. + * + * @return builder for the request object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(",skusContains=").append(String.valueOf(this.skusContains)); + sb.append(",name=").append(String.valueOf(this.name)); + sb.append(",lifecycleState=").append(String.valueOf(this.lifecycleState)); + sb.append(",timeReadyGreaterThanOrEqualTo=") + .append(String.valueOf(this.timeReadyGreaterThanOrEqualTo)); + sb.append(",page=").append(String.valueOf(this.page)); + sb.append(",limit=").append(String.valueOf(this.limit)); + sb.append(",id=").append(String.valueOf(this.id)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ListProductsRequest)) { + return false; + } + + ListProductsRequest other = (ListProductsRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.skusContains, other.skusContains) + && java.util.Objects.equals(this.name, other.name) + && java.util.Objects.equals(this.lifecycleState, other.lifecycleState) + && java.util.Objects.equals( + this.timeReadyGreaterThanOrEqualTo, other.timeReadyGreaterThanOrEqualTo) + && java.util.Objects.equals(this.page, other.page) + && java.util.Objects.equals(this.limit, other.limit) + && java.util.Objects.equals(this.id, other.id); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.skusContains == null ? 43 : this.skusContains.hashCode()); + result = (result * PRIME) + (this.name == null ? 43 : this.name.hashCode()); + result = + (result * PRIME) + + (this.lifecycleState == null ? 43 : this.lifecycleState.hashCode()); + result = + (result * PRIME) + + (this.timeReadyGreaterThanOrEqualTo == null + ? 43 + : this.timeReadyGreaterThanOrEqualTo.hashCode()); + result = (result * PRIME) + (this.page == null ? 43 : this.page.hashCode()); + result = (result * PRIME) + (this.limit == null ? 43 : this.limit.hashCode()); + result = (result * PRIME) + (this.id == null ? 43 : this.id.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/UpdateAdminProductRequest.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/UpdateAdminProductRequest.java new file mode 100644 index 00000000000..99b14595634 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/UpdateAdminProductRequest.java @@ -0,0 +1,307 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.requests; + +import com.oracle.bmc.ociproductcatalog.model.*; +/** + * Example: Click here to see how to use UpdateAdminProductRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class UpdateAdminProductRequest + extends com.oracle.bmc.requests.BmcRequest< + com.oracle.bmc.ociproductcatalog.model.UpdateProductDetails> { + + /** OCID of the product */ + private String productId; + + /** OCID of the product */ + public String getProductId() { + return productId; + } + /** The payload used to update the product. */ + private com.oracle.bmc.ociproductcatalog.model.UpdateProductDetails updateProductDetails; + + /** The payload used to update the product. */ + public com.oracle.bmc.ociproductcatalog.model.UpdateProductDetails getUpdateProductDetails() { + return updateProductDetails; + } + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + */ + public String getOpcRequestId() { + return opcRequestId; + } + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the {@code + * if-match} parameter to the value of the etag from a previous GET or POST response for that + * resource. The resource is updated or deleted only if the etag you provide matches the + * resource's current etag value. + */ + private String ifMatch; + + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the {@code + * if-match} parameter to the value of the etag from a previous GET or POST response for that + * resource. The resource is updated or deleted only if the etag you provide matches the + * resource's current etag value. + */ + public String getIfMatch() { + return ifMatch; + } + + /** + * Alternative accessor for the body parameter. + * + * @return body parameter + */ + @Override + @com.oracle.bmc.InternalSdk + public com.oracle.bmc.ociproductcatalog.model.UpdateProductDetails getBody$() { + return updateProductDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + UpdateAdminProductRequest, + com.oracle.bmc.ociproductcatalog.model.UpdateProductDetails> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** OCID of the product */ + private String productId = null; + + /** + * OCID of the product + * + * @param productId the value to set + * @return this builder instance + */ + public Builder productId(String productId) { + this.productId = productId; + return this; + } + + /** The payload used to update the product. */ + private com.oracle.bmc.ociproductcatalog.model.UpdateProductDetails updateProductDetails = + null; + + /** + * The payload used to update the product. + * + * @param updateProductDetails the value to set + * @return this builder instance + */ + public Builder updateProductDetails( + com.oracle.bmc.ociproductcatalog.model.UpdateProductDetails updateProductDetails) { + this.updateProductDetails = updateProductDetails; + return this; + } + + /** + * 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 = null; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder instance + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + * {@code if-match} parameter to the value of the etag from a previous GET or POST response + * for that resource. The resource is updated or deleted only if the etag you provide + * matches the resource's current etag value. + */ + private String ifMatch = null; + + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + * {@code if-match} parameter to the value of the etag from a previous GET or POST response + * for that resource. The resource is updated or deleted only if the etag you provide + * matches the resource's current etag value. + * + * @param ifMatch the value to set + * @return this builder instance + */ + public Builder ifMatch(String ifMatch) { + this.ifMatch = ifMatch; + return this; + } + + /** + * 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.http.client.RequestInterceptor 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(UpdateAdminProductRequest o) { + productId(o.getProductId()); + updateProductDetails(o.getUpdateProductDetails()); + opcRequestId(o.getOpcRequestId()); + ifMatch(o.getIfMatch()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of UpdateAdminProductRequest as configured by this builder + * + *

Note that this method takes calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#buildWithoutInvocationCallback} does not. + * + *

This is the preferred method to build an instance. + * + * @return instance of UpdateAdminProductRequest + */ + public UpdateAdminProductRequest build() { + UpdateAdminProductRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Alternative setter for the body parameter. + * + * @param body the body parameter + * @return this builder instance + */ + @com.oracle.bmc.InternalSdk + public Builder body$(com.oracle.bmc.ociproductcatalog.model.UpdateProductDetails body) { + updateProductDetails(body); + return this; + } + + /** + * Build the instance of UpdateAdminProductRequest as configured by this builder + * + *

Note that this method does not take calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#build} does + * + * @return instance of UpdateAdminProductRequest + */ + public UpdateAdminProductRequest buildWithoutInvocationCallback() { + UpdateAdminProductRequest request = new UpdateAdminProductRequest(); + request.productId = productId; + request.updateProductDetails = updateProductDetails; + request.opcRequestId = opcRequestId; + request.ifMatch = ifMatch; + return request; + // new UpdateAdminProductRequest(productId, updateProductDetails, opcRequestId, + // ifMatch); + } + } + + /** + * Return an instance of {@link Builder} that allows you to modify request properties. + * + * @return instance of {@link Builder} that allows you to modify request properties. + */ + public Builder toBuilder() { + return new Builder() + .productId(productId) + .updateProductDetails(updateProductDetails) + .opcRequestId(opcRequestId) + .ifMatch(ifMatch); + } + + /** + * Return a new builder for this request object. + * + * @return builder for the request object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",productId=").append(String.valueOf(this.productId)); + sb.append(",updateProductDetails=").append(String.valueOf(this.updateProductDetails)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(",ifMatch=").append(String.valueOf(this.ifMatch)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateAdminProductRequest)) { + return false; + } + + UpdateAdminProductRequest other = (UpdateAdminProductRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.productId, other.productId) + && java.util.Objects.equals(this.updateProductDetails, other.updateProductDetails) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.ifMatch, other.ifMatch); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.productId == null ? 43 : this.productId.hashCode()); + result = + (result * PRIME) + + (this.updateProductDetails == null + ? 43 + : this.updateProductDetails.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.ifMatch == null ? 43 : this.ifMatch.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/UpdateInternalProductRequest.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/UpdateInternalProductRequest.java new file mode 100644 index 00000000000..3019830c6d9 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/requests/UpdateInternalProductRequest.java @@ -0,0 +1,308 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.requests; + +import com.oracle.bmc.ociproductcatalog.model.*; +/** + * Example: Click here to see how to use + * UpdateInternalProductRequest. + */ +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class UpdateInternalProductRequest + extends com.oracle.bmc.requests.BmcRequest< + com.oracle.bmc.ociproductcatalog.model.UpdateProductDetails> { + + /** OCID of the product */ + private String productId; + + /** OCID of the product */ + public String getProductId() { + return productId; + } + /** The payload used to update the product. */ + private com.oracle.bmc.ociproductcatalog.model.UpdateProductDetails updateProductDetails; + + /** The payload used to update the product. */ + public com.oracle.bmc.ociproductcatalog.model.UpdateProductDetails getUpdateProductDetails() { + return updateProductDetails; + } + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + */ + public String getOpcRequestId() { + return opcRequestId; + } + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the {@code + * if-match} parameter to the value of the etag from a previous GET or POST response for that + * resource. The resource is updated or deleted only if the etag you provide matches the + * resource's current etag value. + */ + private String ifMatch; + + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the {@code + * if-match} parameter to the value of the etag from a previous GET or POST response for that + * resource. The resource is updated or deleted only if the etag you provide matches the + * resource's current etag value. + */ + public String getIfMatch() { + return ifMatch; + } + + /** + * Alternative accessor for the body parameter. + * + * @return body parameter + */ + @Override + @com.oracle.bmc.InternalSdk + public com.oracle.bmc.ociproductcatalog.model.UpdateProductDetails getBody$() { + return updateProductDetails; + } + + public static class Builder + implements com.oracle.bmc.requests.BmcRequest.Builder< + UpdateInternalProductRequest, + com.oracle.bmc.ociproductcatalog.model.UpdateProductDetails> { + private com.oracle.bmc.http.client.RequestInterceptor invocationCallback = null; + private com.oracle.bmc.retrier.RetryConfiguration retryConfiguration = null; + + /** OCID of the product */ + private String productId = null; + + /** + * OCID of the product + * + * @param productId the value to set + * @return this builder instance + */ + public Builder productId(String productId) { + this.productId = productId; + return this; + } + + /** The payload used to update the product. */ + private com.oracle.bmc.ociproductcatalog.model.UpdateProductDetails updateProductDetails = + null; + + /** + * The payload used to update the product. + * + * @param updateProductDetails the value to set + * @return this builder instance + */ + public Builder updateProductDetails( + com.oracle.bmc.ociproductcatalog.model.UpdateProductDetails updateProductDetails) { + this.updateProductDetails = updateProductDetails; + return this; + } + + /** + * 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 = null; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder instance + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + * {@code if-match} parameter to the value of the etag from a previous GET or POST response + * for that resource. The resource is updated or deleted only if the etag you provide + * matches the resource's current etag value. + */ + private String ifMatch = null; + + /** + * For optimistic concurrency control. In the PUT or DELETE call for a resource, set the + * {@code if-match} parameter to the value of the etag from a previous GET or POST response + * for that resource. The resource is updated or deleted only if the etag you provide + * matches the resource's current etag value. + * + * @param ifMatch the value to set + * @return this builder instance + */ + public Builder ifMatch(String ifMatch) { + this.ifMatch = ifMatch; + return this; + } + + /** + * 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.http.client.RequestInterceptor 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(UpdateInternalProductRequest o) { + productId(o.getProductId()); + updateProductDetails(o.getUpdateProductDetails()); + opcRequestId(o.getOpcRequestId()); + ifMatch(o.getIfMatch()); + invocationCallback(o.getInvocationCallback()); + retryConfiguration(o.getRetryConfiguration()); + return this; + } + + /** + * Build the instance of UpdateInternalProductRequest as configured by this builder + * + *

Note that this method takes calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#buildWithoutInvocationCallback} does not. + * + *

This is the preferred method to build an instance. + * + * @return instance of UpdateInternalProductRequest + */ + public UpdateInternalProductRequest build() { + UpdateInternalProductRequest request = buildWithoutInvocationCallback(); + request.setInvocationCallback(invocationCallback); + request.setRetryConfiguration(retryConfiguration); + return request; + } + + /** + * Alternative setter for the body parameter. + * + * @param body the body parameter + * @return this builder instance + */ + @com.oracle.bmc.InternalSdk + public Builder body$(com.oracle.bmc.ociproductcatalog.model.UpdateProductDetails body) { + updateProductDetails(body); + return this; + } + + /** + * Build the instance of UpdateInternalProductRequest as configured by this builder + * + *

Note that this method does not take calls to {@link + * Builder#invocationCallback(com.oracle.bmc.http.client.RequestInterceptor)} into account, + * while the method {@link Builder#build} does + * + * @return instance of UpdateInternalProductRequest + */ + public UpdateInternalProductRequest buildWithoutInvocationCallback() { + UpdateInternalProductRequest request = new UpdateInternalProductRequest(); + request.productId = productId; + request.updateProductDetails = updateProductDetails; + request.opcRequestId = opcRequestId; + request.ifMatch = ifMatch; + return request; + // new UpdateInternalProductRequest(productId, updateProductDetails, opcRequestId, + // ifMatch); + } + } + + /** + * Return an instance of {@link Builder} that allows you to modify request properties. + * + * @return instance of {@link Builder} that allows you to modify request properties. + */ + public Builder toBuilder() { + return new Builder() + .productId(productId) + .updateProductDetails(updateProductDetails) + .opcRequestId(opcRequestId) + .ifMatch(ifMatch); + } + + /** + * Return a new builder for this request object. + * + * @return builder for the request object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",productId=").append(String.valueOf(this.productId)); + sb.append(",updateProductDetails=").append(String.valueOf(this.updateProductDetails)); + sb.append(",opcRequestId=").append(String.valueOf(this.opcRequestId)); + sb.append(",ifMatch=").append(String.valueOf(this.ifMatch)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateInternalProductRequest)) { + return false; + } + + UpdateInternalProductRequest other = (UpdateInternalProductRequest) o; + return super.equals(o) + && java.util.Objects.equals(this.productId, other.productId) + && java.util.Objects.equals(this.updateProductDetails, other.updateProductDetails) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.ifMatch, other.ifMatch); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.productId == null ? 43 : this.productId.hashCode()); + result = + (result * PRIME) + + (this.updateProductDetails == null + ? 43 + : this.updateProductDetails.hashCode()); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.ifMatch == null ? 43 : this.ifMatch.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/ActivateProductResponse.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/ActivateProductResponse.java new file mode 100644 index 00000000000..68df6aefbad --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/ActivateProductResponse.java @@ -0,0 +1,208 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.responses; + +import com.oracle.bmc.ociproductcatalog.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class ActivateProductResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @return the value + */ + public String getOpcRequestId() { + return opcRequestId; + } + + /** For optimistic concurrency control. See {@code if-match}. */ + private String etag; + + /** + * For optimistic concurrency control. See {@code if-match}. + * + * @return the value + */ + public String getEtag() { + return etag; + } + + /** The returned {@code Product} instance. */ + private com.oracle.bmc.ociproductcatalog.model.Product product; + + /** + * The returned {@code Product} instance. + * + * @return the value + */ + public com.oracle.bmc.ociproductcatalog.model.Product getProduct() { + return product; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "etag", + "product" + }) + private ActivateProductResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + String etag, + com.oracle.bmc.ociproductcatalog.model.Product product) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.etag = etag; + this.product = product; + } + + public static class Builder + implements com.oracle.bmc.responses.BmcResponse.Builder { + private int __httpStatusCode__; + + @Override + public Builder __httpStatusCode__(int __httpStatusCode__) { + this.__httpStatusCode__ = __httpStatusCode__; + return this; + } + + private java.util.Map> headers; + + @Override + public Builder headers(java.util.Map> headers) { + this.headers = headers; + return this; + } + + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** For optimistic concurrency control. See {@code if-match}. */ + private String etag; + + /** + * For optimistic concurrency control. See {@code if-match}. + * + * @param etag the value to set + * @return this builder + */ + public Builder etag(String etag) { + this.etag = etag; + return this; + } + + /** The returned {@code Product} instance. */ + private com.oracle.bmc.ociproductcatalog.model.Product product; + + /** + * The returned {@code Product} instance. + * + * @param product the value to set + * @return this builder + */ + public Builder product(com.oracle.bmc.ociproductcatalog.model.Product product) { + this.product = product; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(ActivateProductResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + etag(o.getEtag()); + product(o.getProduct()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public ActivateProductResponse build() { + return new ActivateProductResponse( + __httpStatusCode__, headers, opcRequestId, etag, product); + } + } + + /** + * Return a new builder for this response object. + * + * @return builder for the response object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",etag=").append(String.valueOf(etag)); + sb.append(",product=").append(String.valueOf(product)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ActivateProductResponse)) { + return false; + } + + ActivateProductResponse other = (ActivateProductResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.etag, other.etag) + && java.util.Objects.equals(this.product, other.product); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.etag == null ? 43 : this.etag.hashCode()); + result = (result * PRIME) + (this.product == null ? 43 : this.product.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/ChangeAdminProductCompartmentResponse.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/ChangeAdminProductCompartmentResponse.java new file mode 100644 index 00000000000..200a50b6a5b --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/ChangeAdminProductCompartmentResponse.java @@ -0,0 +1,138 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.responses; + +import com.oracle.bmc.ociproductcatalog.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class ChangeAdminProductCompartmentResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @return the value + */ + public String getOpcRequestId() { + return opcRequestId; + } + + @java.beans.ConstructorProperties({"__httpStatusCode__", "headers", "opcRequestId"}) + private ChangeAdminProductCompartmentResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + } + + public static class Builder + implements com.oracle.bmc.responses.BmcResponse.Builder< + ChangeAdminProductCompartmentResponse> { + private int __httpStatusCode__; + + @Override + public Builder __httpStatusCode__(int __httpStatusCode__) { + this.__httpStatusCode__ = __httpStatusCode__; + return this; + } + + private java.util.Map> headers; + + @Override + public Builder headers(java.util.Map> headers) { + this.headers = headers; + return this; + } + + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(ChangeAdminProductCompartmentResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public ChangeAdminProductCompartmentResponse build() { + return new ChangeAdminProductCompartmentResponse( + __httpStatusCode__, headers, opcRequestId); + } + } + + /** + * Return a new builder for this response object. + * + * @return builder for the response object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ChangeAdminProductCompartmentResponse)) { + return false; + } + + ChangeAdminProductCompartmentResponse other = (ChangeAdminProductCompartmentResponse) o; + return super.equals(o) && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/ChangeInternalProductCompartmentResponse.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/ChangeInternalProductCompartmentResponse.java new file mode 100644 index 00000000000..498f2a791fc --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/ChangeInternalProductCompartmentResponse.java @@ -0,0 +1,139 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.responses; + +import com.oracle.bmc.ociproductcatalog.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class ChangeInternalProductCompartmentResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @return the value + */ + public String getOpcRequestId() { + return opcRequestId; + } + + @java.beans.ConstructorProperties({"__httpStatusCode__", "headers", "opcRequestId"}) + private ChangeInternalProductCompartmentResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + } + + public static class Builder + implements com.oracle.bmc.responses.BmcResponse.Builder< + ChangeInternalProductCompartmentResponse> { + private int __httpStatusCode__; + + @Override + public Builder __httpStatusCode__(int __httpStatusCode__) { + this.__httpStatusCode__ = __httpStatusCode__; + return this; + } + + private java.util.Map> headers; + + @Override + public Builder headers(java.util.Map> headers) { + this.headers = headers; + return this; + } + + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(ChangeInternalProductCompartmentResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public ChangeInternalProductCompartmentResponse build() { + return new ChangeInternalProductCompartmentResponse( + __httpStatusCode__, headers, opcRequestId); + } + } + + /** + * Return a new builder for this response object. + * + * @return builder for the response object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ChangeInternalProductCompartmentResponse)) { + return false; + } + + ChangeInternalProductCompartmentResponse other = + (ChangeInternalProductCompartmentResponse) o; + return super.equals(o) && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/CreateAdminProductResponse.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/CreateAdminProductResponse.java new file mode 100644 index 00000000000..a3a4242f007 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/CreateAdminProductResponse.java @@ -0,0 +1,208 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.responses; + +import com.oracle.bmc.ociproductcatalog.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class CreateAdminProductResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @return the value + */ + public String getOpcRequestId() { + return opcRequestId; + } + + /** For optimistic concurrency control. See {@code if-match}. */ + private String etag; + + /** + * For optimistic concurrency control. See {@code if-match}. + * + * @return the value + */ + public String getEtag() { + return etag; + } + + /** The returned {@code Product} instance. */ + private com.oracle.bmc.ociproductcatalog.model.Product product; + + /** + * The returned {@code Product} instance. + * + * @return the value + */ + public com.oracle.bmc.ociproductcatalog.model.Product getProduct() { + return product; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "etag", + "product" + }) + private CreateAdminProductResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + String etag, + com.oracle.bmc.ociproductcatalog.model.Product product) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.etag = etag; + this.product = product; + } + + public static class Builder + implements com.oracle.bmc.responses.BmcResponse.Builder { + private int __httpStatusCode__; + + @Override + public Builder __httpStatusCode__(int __httpStatusCode__) { + this.__httpStatusCode__ = __httpStatusCode__; + return this; + } + + private java.util.Map> headers; + + @Override + public Builder headers(java.util.Map> headers) { + this.headers = headers; + return this; + } + + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** For optimistic concurrency control. See {@code if-match}. */ + private String etag; + + /** + * For optimistic concurrency control. See {@code if-match}. + * + * @param etag the value to set + * @return this builder + */ + public Builder etag(String etag) { + this.etag = etag; + return this; + } + + /** The returned {@code Product} instance. */ + private com.oracle.bmc.ociproductcatalog.model.Product product; + + /** + * The returned {@code Product} instance. + * + * @param product the value to set + * @return this builder + */ + public Builder product(com.oracle.bmc.ociproductcatalog.model.Product product) { + this.product = product; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(CreateAdminProductResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + etag(o.getEtag()); + product(o.getProduct()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public CreateAdminProductResponse build() { + return new CreateAdminProductResponse( + __httpStatusCode__, headers, opcRequestId, etag, product); + } + } + + /** + * Return a new builder for this response object. + * + * @return builder for the response object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",etag=").append(String.valueOf(etag)); + sb.append(",product=").append(String.valueOf(product)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateAdminProductResponse)) { + return false; + } + + CreateAdminProductResponse other = (CreateAdminProductResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.etag, other.etag) + && java.util.Objects.equals(this.product, other.product); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.etag == null ? 43 : this.etag.hashCode()); + result = (result * PRIME) + (this.product == null ? 43 : this.product.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/CreateInternalProductResponse.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/CreateInternalProductResponse.java new file mode 100644 index 00000000000..81fbcf218ed --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/CreateInternalProductResponse.java @@ -0,0 +1,208 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.responses; + +import com.oracle.bmc.ociproductcatalog.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class CreateInternalProductResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @return the value + */ + public String getOpcRequestId() { + return opcRequestId; + } + + /** For optimistic concurrency control. See {@code if-match}. */ + private String etag; + + /** + * For optimistic concurrency control. See {@code if-match}. + * + * @return the value + */ + public String getEtag() { + return etag; + } + + /** The returned {@code Product} instance. */ + private com.oracle.bmc.ociproductcatalog.model.Product product; + + /** + * The returned {@code Product} instance. + * + * @return the value + */ + public com.oracle.bmc.ociproductcatalog.model.Product getProduct() { + return product; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "etag", + "product" + }) + private CreateInternalProductResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + String etag, + com.oracle.bmc.ociproductcatalog.model.Product product) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.etag = etag; + this.product = product; + } + + public static class Builder + implements com.oracle.bmc.responses.BmcResponse.Builder { + private int __httpStatusCode__; + + @Override + public Builder __httpStatusCode__(int __httpStatusCode__) { + this.__httpStatusCode__ = __httpStatusCode__; + return this; + } + + private java.util.Map> headers; + + @Override + public Builder headers(java.util.Map> headers) { + this.headers = headers; + return this; + } + + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** For optimistic concurrency control. See {@code if-match}. */ + private String etag; + + /** + * For optimistic concurrency control. See {@code if-match}. + * + * @param etag the value to set + * @return this builder + */ + public Builder etag(String etag) { + this.etag = etag; + return this; + } + + /** The returned {@code Product} instance. */ + private com.oracle.bmc.ociproductcatalog.model.Product product; + + /** + * The returned {@code Product} instance. + * + * @param product the value to set + * @return this builder + */ + public Builder product(com.oracle.bmc.ociproductcatalog.model.Product product) { + this.product = product; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(CreateInternalProductResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + etag(o.getEtag()); + product(o.getProduct()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public CreateInternalProductResponse build() { + return new CreateInternalProductResponse( + __httpStatusCode__, headers, opcRequestId, etag, product); + } + } + + /** + * Return a new builder for this response object. + * + * @return builder for the response object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",etag=").append(String.valueOf(etag)); + sb.append(",product=").append(String.valueOf(product)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof CreateInternalProductResponse)) { + return false; + } + + CreateInternalProductResponse other = (CreateInternalProductResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.etag, other.etag) + && java.util.Objects.equals(this.product, other.product); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.etag == null ? 43 : this.etag.hashCode()); + result = (result * PRIME) + (this.product == null ? 43 : this.product.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/DeleteAdminProductResponse.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/DeleteAdminProductResponse.java new file mode 100644 index 00000000000..418f12b6cb3 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/DeleteAdminProductResponse.java @@ -0,0 +1,136 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.responses; + +import com.oracle.bmc.ociproductcatalog.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class DeleteAdminProductResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @return the value + */ + public String getOpcRequestId() { + return opcRequestId; + } + + @java.beans.ConstructorProperties({"__httpStatusCode__", "headers", "opcRequestId"}) + private DeleteAdminProductResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + } + + public static class Builder + implements com.oracle.bmc.responses.BmcResponse.Builder { + private int __httpStatusCode__; + + @Override + public Builder __httpStatusCode__(int __httpStatusCode__) { + this.__httpStatusCode__ = __httpStatusCode__; + return this; + } + + private java.util.Map> headers; + + @Override + public Builder headers(java.util.Map> headers) { + this.headers = headers; + return this; + } + + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(DeleteAdminProductResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public DeleteAdminProductResponse build() { + return new DeleteAdminProductResponse(__httpStatusCode__, headers, opcRequestId); + } + } + + /** + * Return a new builder for this response object. + * + * @return builder for the response object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof DeleteAdminProductResponse)) { + return false; + } + + DeleteAdminProductResponse other = (DeleteAdminProductResponse) o; + return super.equals(o) && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/DeleteInternalProductResponse.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/DeleteInternalProductResponse.java new file mode 100644 index 00000000000..1a33c1e4ff2 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/DeleteInternalProductResponse.java @@ -0,0 +1,136 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.responses; + +import com.oracle.bmc.ociproductcatalog.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class DeleteInternalProductResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @return the value + */ + public String getOpcRequestId() { + return opcRequestId; + } + + @java.beans.ConstructorProperties({"__httpStatusCode__", "headers", "opcRequestId"}) + private DeleteInternalProductResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + } + + public static class Builder + implements com.oracle.bmc.responses.BmcResponse.Builder { + private int __httpStatusCode__; + + @Override + public Builder __httpStatusCode__(int __httpStatusCode__) { + this.__httpStatusCode__ = __httpStatusCode__; + return this; + } + + private java.util.Map> headers; + + @Override + public Builder headers(java.util.Map> headers) { + this.headers = headers; + return this; + } + + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(DeleteInternalProductResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public DeleteInternalProductResponse build() { + return new DeleteInternalProductResponse(__httpStatusCode__, headers, opcRequestId); + } + } + + /** + * Return a new builder for this response object. + * + * @return builder for the response object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof DeleteInternalProductResponse)) { + return false; + } + + DeleteInternalProductResponse other = (DeleteInternalProductResponse) o; + return super.equals(o) && java.util.Objects.equals(this.opcRequestId, other.opcRequestId); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/GetAdminProductResponse.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/GetAdminProductResponse.java new file mode 100644 index 00000000000..bf73645982f --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/GetAdminProductResponse.java @@ -0,0 +1,209 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.responses; + +import com.oracle.bmc.ociproductcatalog.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class GetAdminProductResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @return the value + */ + public String getOpcRequestId() { + return opcRequestId; + } + + /** For optimistic concurrency control. See {@code if-match}. */ + private String etag; + + /** + * For optimistic concurrency control. See {@code if-match}. + * + * @return the value + */ + public String getEtag() { + return etag; + } + + /** The returned {@code AdminProduct} instance. */ + private com.oracle.bmc.ociproductcatalog.model.AdminProduct adminProduct; + + /** + * The returned {@code AdminProduct} instance. + * + * @return the value + */ + public com.oracle.bmc.ociproductcatalog.model.AdminProduct getAdminProduct() { + return adminProduct; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "etag", + "adminProduct" + }) + private GetAdminProductResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + String etag, + com.oracle.bmc.ociproductcatalog.model.AdminProduct adminProduct) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.etag = etag; + this.adminProduct = adminProduct; + } + + public static class Builder + implements com.oracle.bmc.responses.BmcResponse.Builder { + private int __httpStatusCode__; + + @Override + public Builder __httpStatusCode__(int __httpStatusCode__) { + this.__httpStatusCode__ = __httpStatusCode__; + return this; + } + + private java.util.Map> headers; + + @Override + public Builder headers(java.util.Map> headers) { + this.headers = headers; + return this; + } + + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** For optimistic concurrency control. See {@code if-match}. */ + private String etag; + + /** + * For optimistic concurrency control. See {@code if-match}. + * + * @param etag the value to set + * @return this builder + */ + public Builder etag(String etag) { + this.etag = etag; + return this; + } + + /** The returned {@code AdminProduct} instance. */ + private com.oracle.bmc.ociproductcatalog.model.AdminProduct adminProduct; + + /** + * The returned {@code AdminProduct} instance. + * + * @param adminProduct the value to set + * @return this builder + */ + public Builder adminProduct( + com.oracle.bmc.ociproductcatalog.model.AdminProduct adminProduct) { + this.adminProduct = adminProduct; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(GetAdminProductResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + etag(o.getEtag()); + adminProduct(o.getAdminProduct()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public GetAdminProductResponse build() { + return new GetAdminProductResponse( + __httpStatusCode__, headers, opcRequestId, etag, adminProduct); + } + } + + /** + * Return a new builder for this response object. + * + * @return builder for the response object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",etag=").append(String.valueOf(etag)); + sb.append(",adminProduct=").append(String.valueOf(adminProduct)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof GetAdminProductResponse)) { + return false; + } + + GetAdminProductResponse other = (GetAdminProductResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.etag, other.etag) + && java.util.Objects.equals(this.adminProduct, other.adminProduct); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.etag == null ? 43 : this.etag.hashCode()); + result = (result * PRIME) + (this.adminProduct == null ? 43 : this.adminProduct.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/GetInternalProductResponse.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/GetInternalProductResponse.java new file mode 100644 index 00000000000..f0a8455663a --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/GetInternalProductResponse.java @@ -0,0 +1,208 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.responses; + +import com.oracle.bmc.ociproductcatalog.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class GetInternalProductResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @return the value + */ + public String getOpcRequestId() { + return opcRequestId; + } + + /** For optimistic concurrency control. See {@code if-match}. */ + private String etag; + + /** + * For optimistic concurrency control. See {@code if-match}. + * + * @return the value + */ + public String getEtag() { + return etag; + } + + /** The returned {@code Product} instance. */ + private com.oracle.bmc.ociproductcatalog.model.Product product; + + /** + * The returned {@code Product} instance. + * + * @return the value + */ + public com.oracle.bmc.ociproductcatalog.model.Product getProduct() { + return product; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "etag", + "product" + }) + private GetInternalProductResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + String etag, + com.oracle.bmc.ociproductcatalog.model.Product product) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.etag = etag; + this.product = product; + } + + public static class Builder + implements com.oracle.bmc.responses.BmcResponse.Builder { + private int __httpStatusCode__; + + @Override + public Builder __httpStatusCode__(int __httpStatusCode__) { + this.__httpStatusCode__ = __httpStatusCode__; + return this; + } + + private java.util.Map> headers; + + @Override + public Builder headers(java.util.Map> headers) { + this.headers = headers; + return this; + } + + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** For optimistic concurrency control. See {@code if-match}. */ + private String etag; + + /** + * For optimistic concurrency control. See {@code if-match}. + * + * @param etag the value to set + * @return this builder + */ + public Builder etag(String etag) { + this.etag = etag; + return this; + } + + /** The returned {@code Product} instance. */ + private com.oracle.bmc.ociproductcatalog.model.Product product; + + /** + * The returned {@code Product} instance. + * + * @param product the value to set + * @return this builder + */ + public Builder product(com.oracle.bmc.ociproductcatalog.model.Product product) { + this.product = product; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(GetInternalProductResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + etag(o.getEtag()); + product(o.getProduct()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public GetInternalProductResponse build() { + return new GetInternalProductResponse( + __httpStatusCode__, headers, opcRequestId, etag, product); + } + } + + /** + * Return a new builder for this response object. + * + * @return builder for the response object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",etag=").append(String.valueOf(etag)); + sb.append(",product=").append(String.valueOf(product)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof GetInternalProductResponse)) { + return false; + } + + GetInternalProductResponse other = (GetInternalProductResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.etag, other.etag) + && java.util.Objects.equals(this.product, other.product); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.etag == null ? 43 : this.etag.hashCode()); + result = (result * PRIME) + (this.product == null ? 43 : this.product.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/GetProductResponse.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/GetProductResponse.java new file mode 100644 index 00000000000..f91ba802212 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/GetProductResponse.java @@ -0,0 +1,207 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.responses; + +import com.oracle.bmc.ociproductcatalog.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class GetProductResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @return the value + */ + public String getOpcRequestId() { + return opcRequestId; + } + + /** For optimistic concurrency control. See {@code if-match}. */ + private String etag; + + /** + * For optimistic concurrency control. See {@code if-match}. + * + * @return the value + */ + public String getEtag() { + return etag; + } + + /** The returned {@code Product} instance. */ + private com.oracle.bmc.ociproductcatalog.model.Product product; + + /** + * The returned {@code Product} instance. + * + * @return the value + */ + public com.oracle.bmc.ociproductcatalog.model.Product getProduct() { + return product; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "etag", + "product" + }) + private GetProductResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + String etag, + com.oracle.bmc.ociproductcatalog.model.Product product) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.etag = etag; + this.product = product; + } + + public static class Builder + implements com.oracle.bmc.responses.BmcResponse.Builder { + private int __httpStatusCode__; + + @Override + public Builder __httpStatusCode__(int __httpStatusCode__) { + this.__httpStatusCode__ = __httpStatusCode__; + return this; + } + + private java.util.Map> headers; + + @Override + public Builder headers(java.util.Map> headers) { + this.headers = headers; + return this; + } + + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** For optimistic concurrency control. See {@code if-match}. */ + private String etag; + + /** + * For optimistic concurrency control. See {@code if-match}. + * + * @param etag the value to set + * @return this builder + */ + public Builder etag(String etag) { + this.etag = etag; + return this; + } + + /** The returned {@code Product} instance. */ + private com.oracle.bmc.ociproductcatalog.model.Product product; + + /** + * The returned {@code Product} instance. + * + * @param product the value to set + * @return this builder + */ + public Builder product(com.oracle.bmc.ociproductcatalog.model.Product product) { + this.product = product; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(GetProductResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + etag(o.getEtag()); + product(o.getProduct()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public GetProductResponse build() { + return new GetProductResponse(__httpStatusCode__, headers, opcRequestId, etag, product); + } + } + + /** + * Return a new builder for this response object. + * + * @return builder for the response object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",etag=").append(String.valueOf(etag)); + sb.append(",product=").append(String.valueOf(product)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof GetProductResponse)) { + return false; + } + + GetProductResponse other = (GetProductResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.etag, other.etag) + && java.util.Objects.equals(this.product, other.product); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.etag == null ? 43 : this.etag.hashCode()); + result = (result * PRIME) + (this.product == null ? 43 : this.product.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/ListAdminProductsResponse.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/ListAdminProductsResponse.java new file mode 100644 index 00000000000..3b27b58c276 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/ListAdminProductsResponse.java @@ -0,0 +1,223 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.responses; + +import com.oracle.bmc.ociproductcatalog.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class ListAdminProductsResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @return the value + */ + public String getOpcRequestId() { + return opcRequestId; + } + + /** + * For list pagination. When this header appears in the response, additional pages of results + * remain. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private String opcNextPage; + + /** + * For list pagination. When this header appears in the response, additional pages of results + * remain. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + * + * @return the value + */ + public String getOpcNextPage() { + return opcNextPage; + } + + /** The returned {@code ProductCollection} instance. */ + private com.oracle.bmc.ociproductcatalog.model.ProductCollection productCollection; + + /** + * The returned {@code ProductCollection} instance. + * + * @return the value + */ + public com.oracle.bmc.ociproductcatalog.model.ProductCollection getProductCollection() { + return productCollection; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "opcNextPage", + "productCollection" + }) + private ListAdminProductsResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + String opcNextPage, + com.oracle.bmc.ociproductcatalog.model.ProductCollection productCollection) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.opcNextPage = opcNextPage; + this.productCollection = productCollection; + } + + public static class Builder + implements com.oracle.bmc.responses.BmcResponse.Builder { + private int __httpStatusCode__; + + @Override + public Builder __httpStatusCode__(int __httpStatusCode__) { + this.__httpStatusCode__ = __httpStatusCode__; + return this; + } + + private java.util.Map> headers; + + @Override + public Builder headers(java.util.Map> headers) { + this.headers = headers; + return this; + } + + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** + * For list pagination. When this header appears in the response, additional pages of + * results remain. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private String opcNextPage; + + /** + * For list pagination. When this header appears in the response, additional pages of + * results remain. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + * + * @param opcNextPage the value to set + * @return this builder + */ + public Builder opcNextPage(String opcNextPage) { + this.opcNextPage = opcNextPage; + return this; + } + + /** The returned {@code ProductCollection} instance. */ + private com.oracle.bmc.ociproductcatalog.model.ProductCollection productCollection; + + /** + * The returned {@code ProductCollection} instance. + * + * @param productCollection the value to set + * @return this builder + */ + public Builder productCollection( + com.oracle.bmc.ociproductcatalog.model.ProductCollection productCollection) { + this.productCollection = productCollection; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(ListAdminProductsResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + opcNextPage(o.getOpcNextPage()); + productCollection(o.getProductCollection()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public ListAdminProductsResponse build() { + return new ListAdminProductsResponse( + __httpStatusCode__, headers, opcRequestId, opcNextPage, productCollection); + } + } + + /** + * Return a new builder for this response object. + * + * @return builder for the response object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",opcNextPage=").append(String.valueOf(opcNextPage)); + sb.append(",productCollection=").append(String.valueOf(productCollection)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ListAdminProductsResponse)) { + return false; + } + + ListAdminProductsResponse other = (ListAdminProductsResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.opcNextPage, other.opcNextPage) + && java.util.Objects.equals(this.productCollection, other.productCollection); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.opcNextPage == null ? 43 : this.opcNextPage.hashCode()); + result = + (result * PRIME) + + (this.productCollection == null ? 43 : this.productCollection.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/ListInternalProductsResponse.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/ListInternalProductsResponse.java new file mode 100644 index 00000000000..78d827d1a96 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/ListInternalProductsResponse.java @@ -0,0 +1,223 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.responses; + +import com.oracle.bmc.ociproductcatalog.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class ListInternalProductsResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @return the value + */ + public String getOpcRequestId() { + return opcRequestId; + } + + /** + * For list pagination. When this header appears in the response, additional pages of results + * remain. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private String opcNextPage; + + /** + * For list pagination. When this header appears in the response, additional pages of results + * remain. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + * + * @return the value + */ + public String getOpcNextPage() { + return opcNextPage; + } + + /** The returned {@code ProductCollection} instance. */ + private com.oracle.bmc.ociproductcatalog.model.ProductCollection productCollection; + + /** + * The returned {@code ProductCollection} instance. + * + * @return the value + */ + public com.oracle.bmc.ociproductcatalog.model.ProductCollection getProductCollection() { + return productCollection; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "opcNextPage", + "productCollection" + }) + private ListInternalProductsResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + String opcNextPage, + com.oracle.bmc.ociproductcatalog.model.ProductCollection productCollection) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.opcNextPage = opcNextPage; + this.productCollection = productCollection; + } + + public static class Builder + implements com.oracle.bmc.responses.BmcResponse.Builder { + private int __httpStatusCode__; + + @Override + public Builder __httpStatusCode__(int __httpStatusCode__) { + this.__httpStatusCode__ = __httpStatusCode__; + return this; + } + + private java.util.Map> headers; + + @Override + public Builder headers(java.util.Map> headers) { + this.headers = headers; + return this; + } + + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** + * For list pagination. When this header appears in the response, additional pages of + * results remain. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private String opcNextPage; + + /** + * For list pagination. When this header appears in the response, additional pages of + * results remain. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + * + * @param opcNextPage the value to set + * @return this builder + */ + public Builder opcNextPage(String opcNextPage) { + this.opcNextPage = opcNextPage; + return this; + } + + /** The returned {@code ProductCollection} instance. */ + private com.oracle.bmc.ociproductcatalog.model.ProductCollection productCollection; + + /** + * The returned {@code ProductCollection} instance. + * + * @param productCollection the value to set + * @return this builder + */ + public Builder productCollection( + com.oracle.bmc.ociproductcatalog.model.ProductCollection productCollection) { + this.productCollection = productCollection; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(ListInternalProductsResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + opcNextPage(o.getOpcNextPage()); + productCollection(o.getProductCollection()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public ListInternalProductsResponse build() { + return new ListInternalProductsResponse( + __httpStatusCode__, headers, opcRequestId, opcNextPage, productCollection); + } + } + + /** + * Return a new builder for this response object. + * + * @return builder for the response object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",opcNextPage=").append(String.valueOf(opcNextPage)); + sb.append(",productCollection=").append(String.valueOf(productCollection)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ListInternalProductsResponse)) { + return false; + } + + ListInternalProductsResponse other = (ListInternalProductsResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.opcNextPage, other.opcNextPage) + && java.util.Objects.equals(this.productCollection, other.productCollection); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.opcNextPage == null ? 43 : this.opcNextPage.hashCode()); + result = + (result * PRIME) + + (this.productCollection == null ? 43 : this.productCollection.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/ListProductsResponse.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/ListProductsResponse.java new file mode 100644 index 00000000000..78b348c60ea --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/ListProductsResponse.java @@ -0,0 +1,223 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.responses; + +import com.oracle.bmc.ociproductcatalog.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class ListProductsResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @return the value + */ + public String getOpcRequestId() { + return opcRequestId; + } + + /** + * For list pagination. When this header appears in the response, additional pages of results + * remain. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private String opcNextPage; + + /** + * For list pagination. When this header appears in the response, additional pages of results + * remain. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + * + * @return the value + */ + public String getOpcNextPage() { + return opcNextPage; + } + + /** The returned {@code ProductCollection} instance. */ + private com.oracle.bmc.ociproductcatalog.model.ProductCollection productCollection; + + /** + * The returned {@code ProductCollection} instance. + * + * @return the value + */ + public com.oracle.bmc.ociproductcatalog.model.ProductCollection getProductCollection() { + return productCollection; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "opcNextPage", + "productCollection" + }) + private ListProductsResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + String opcNextPage, + com.oracle.bmc.ociproductcatalog.model.ProductCollection productCollection) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.opcNextPage = opcNextPage; + this.productCollection = productCollection; + } + + public static class Builder + implements com.oracle.bmc.responses.BmcResponse.Builder { + private int __httpStatusCode__; + + @Override + public Builder __httpStatusCode__(int __httpStatusCode__) { + this.__httpStatusCode__ = __httpStatusCode__; + return this; + } + + private java.util.Map> headers; + + @Override + public Builder headers(java.util.Map> headers) { + this.headers = headers; + return this; + } + + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** + * For list pagination. When this header appears in the response, additional pages of + * results remain. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + */ + private String opcNextPage; + + /** + * For list pagination. When this header appears in the response, additional pages of + * results remain. For important details about how pagination works, see [List + * Pagination](https://docs.oracle.com/iaas/Content/API/Concepts/usingapi.htm#nine). + * + * @param opcNextPage the value to set + * @return this builder + */ + public Builder opcNextPage(String opcNextPage) { + this.opcNextPage = opcNextPage; + return this; + } + + /** The returned {@code ProductCollection} instance. */ + private com.oracle.bmc.ociproductcatalog.model.ProductCollection productCollection; + + /** + * The returned {@code ProductCollection} instance. + * + * @param productCollection the value to set + * @return this builder + */ + public Builder productCollection( + com.oracle.bmc.ociproductcatalog.model.ProductCollection productCollection) { + this.productCollection = productCollection; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(ListProductsResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + opcNextPage(o.getOpcNextPage()); + productCollection(o.getProductCollection()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public ListProductsResponse build() { + return new ListProductsResponse( + __httpStatusCode__, headers, opcRequestId, opcNextPage, productCollection); + } + } + + /** + * Return a new builder for this response object. + * + * @return builder for the response object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",opcNextPage=").append(String.valueOf(opcNextPage)); + sb.append(",productCollection=").append(String.valueOf(productCollection)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof ListProductsResponse)) { + return false; + } + + ListProductsResponse other = (ListProductsResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.opcNextPage, other.opcNextPage) + && java.util.Objects.equals(this.productCollection, other.productCollection); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.opcNextPage == null ? 43 : this.opcNextPage.hashCode()); + result = + (result * PRIME) + + (this.productCollection == null ? 43 : this.productCollection.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/UpdateAdminProductResponse.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/UpdateAdminProductResponse.java new file mode 100644 index 00000000000..87549201495 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/UpdateAdminProductResponse.java @@ -0,0 +1,208 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.responses; + +import com.oracle.bmc.ociproductcatalog.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class UpdateAdminProductResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @return the value + */ + public String getOpcRequestId() { + return opcRequestId; + } + + /** For optimistic concurrency control. See {@code if-match}. */ + private String etag; + + /** + * For optimistic concurrency control. See {@code if-match}. + * + * @return the value + */ + public String getEtag() { + return etag; + } + + /** The returned {@code Product} instance. */ + private com.oracle.bmc.ociproductcatalog.model.Product product; + + /** + * The returned {@code Product} instance. + * + * @return the value + */ + public com.oracle.bmc.ociproductcatalog.model.Product getProduct() { + return product; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "etag", + "product" + }) + private UpdateAdminProductResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + String etag, + com.oracle.bmc.ociproductcatalog.model.Product product) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.etag = etag; + this.product = product; + } + + public static class Builder + implements com.oracle.bmc.responses.BmcResponse.Builder { + private int __httpStatusCode__; + + @Override + public Builder __httpStatusCode__(int __httpStatusCode__) { + this.__httpStatusCode__ = __httpStatusCode__; + return this; + } + + private java.util.Map> headers; + + @Override + public Builder headers(java.util.Map> headers) { + this.headers = headers; + return this; + } + + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** For optimistic concurrency control. See {@code if-match}. */ + private String etag; + + /** + * For optimistic concurrency control. See {@code if-match}. + * + * @param etag the value to set + * @return this builder + */ + public Builder etag(String etag) { + this.etag = etag; + return this; + } + + /** The returned {@code Product} instance. */ + private com.oracle.bmc.ociproductcatalog.model.Product product; + + /** + * The returned {@code Product} instance. + * + * @param product the value to set + * @return this builder + */ + public Builder product(com.oracle.bmc.ociproductcatalog.model.Product product) { + this.product = product; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(UpdateAdminProductResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + etag(o.getEtag()); + product(o.getProduct()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public UpdateAdminProductResponse build() { + return new UpdateAdminProductResponse( + __httpStatusCode__, headers, opcRequestId, etag, product); + } + } + + /** + * Return a new builder for this response object. + * + * @return builder for the response object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",etag=").append(String.valueOf(etag)); + sb.append(",product=").append(String.valueOf(product)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateAdminProductResponse)) { + return false; + } + + UpdateAdminProductResponse other = (UpdateAdminProductResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.etag, other.etag) + && java.util.Objects.equals(this.product, other.product); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.etag == null ? 43 : this.etag.hashCode()); + result = (result * PRIME) + (this.product == null ? 43 : this.product.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/UpdateInternalProductResponse.java b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/UpdateInternalProductResponse.java new file mode 100644 index 00000000000..07e4ec33673 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/java/com/oracle/bmc/ociproductcatalog/responses/UpdateInternalProductResponse.java @@ -0,0 +1,208 @@ +/** + * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. + * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. + */ +package com.oracle.bmc.ociproductcatalog.responses; + +import com.oracle.bmc.ociproductcatalog.model.*; + +@jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") +public class UpdateInternalProductResponse extends com.oracle.bmc.responses.BmcResponse { + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @return the value + */ + public String getOpcRequestId() { + return opcRequestId; + } + + /** For optimistic concurrency control. See {@code if-match}. */ + private String etag; + + /** + * For optimistic concurrency control. See {@code if-match}. + * + * @return the value + */ + public String getEtag() { + return etag; + } + + /** The returned {@code Product} instance. */ + private com.oracle.bmc.ociproductcatalog.model.Product product; + + /** + * The returned {@code Product} instance. + * + * @return the value + */ + public com.oracle.bmc.ociproductcatalog.model.Product getProduct() { + return product; + } + + @java.beans.ConstructorProperties({ + "__httpStatusCode__", + "headers", + "opcRequestId", + "etag", + "product" + }) + private UpdateInternalProductResponse( + int __httpStatusCode__, + java.util.Map> headers, + String opcRequestId, + String etag, + com.oracle.bmc.ociproductcatalog.model.Product product) { + super(__httpStatusCode__, headers); + this.opcRequestId = opcRequestId; + this.etag = etag; + this.product = product; + } + + public static class Builder + implements com.oracle.bmc.responses.BmcResponse.Builder { + private int __httpStatusCode__; + + @Override + public Builder __httpStatusCode__(int __httpStatusCode__) { + this.__httpStatusCode__ = __httpStatusCode__; + return this; + } + + private java.util.Map> headers; + + @Override + public Builder headers(java.util.Map> headers) { + this.headers = headers; + return this; + } + + /** + * 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; + + /** + * Unique Oracle-assigned identifier for the request. If you need to contact Oracle about a + * particular request, please provide the request ID. + * + * @param opcRequestId the value to set + * @return this builder + */ + public Builder opcRequestId(String opcRequestId) { + this.opcRequestId = opcRequestId; + return this; + } + + /** For optimistic concurrency control. See {@code if-match}. */ + private String etag; + + /** + * For optimistic concurrency control. See {@code if-match}. + * + * @param etag the value to set + * @return this builder + */ + public Builder etag(String etag) { + this.etag = etag; + return this; + } + + /** The returned {@code Product} instance. */ + private com.oracle.bmc.ociproductcatalog.model.Product product; + + /** + * The returned {@code Product} instance. + * + * @param product the value to set + * @return this builder + */ + public Builder product(com.oracle.bmc.ociproductcatalog.model.Product product) { + this.product = product; + return this; + } + + /** + * Copy method to populate the builder with values from the given instance. + * + * @return this builder instance + */ + @Override + public Builder copy(UpdateInternalProductResponse o) { + __httpStatusCode__(o.get__httpStatusCode__()); + headers(o.getHeaders()); + opcRequestId(o.getOpcRequestId()); + etag(o.getEtag()); + product(o.getProduct()); + + return this; + } + + /** + * Build the response object. + * + * @return the response object + */ + @Override + public UpdateInternalProductResponse build() { + return new UpdateInternalProductResponse( + __httpStatusCode__, headers, opcRequestId, etag, product); + } + } + + /** + * Return a new builder for this response object. + * + * @return builder for the response object + */ + public static Builder builder() { + return new Builder(); + } + + @Override + public String toString() { + java.lang.StringBuilder sb = new java.lang.StringBuilder(); + sb.append("("); + sb.append("super=").append(super.toString()); + sb.append(",opcRequestId=").append(String.valueOf(opcRequestId)); + sb.append(",etag=").append(String.valueOf(etag)); + sb.append(",product=").append(String.valueOf(product)); + sb.append(")"); + return sb.toString(); + } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof UpdateInternalProductResponse)) { + return false; + } + + UpdateInternalProductResponse other = (UpdateInternalProductResponse) o; + return super.equals(o) + && java.util.Objects.equals(this.opcRequestId, other.opcRequestId) + && java.util.Objects.equals(this.etag, other.etag) + && java.util.Objects.equals(this.product, other.product); + } + + @Override + public int hashCode() { + final int PRIME = 59; + int result = super.hashCode(); + result = (result * PRIME) + (this.opcRequestId == null ? 43 : this.opcRequestId.hashCode()); + result = (result * PRIME) + (this.etag == null ? 43 : this.etag.hashCode()); + result = (result * PRIME) + (this.product == null ? 43 : this.product.hashCode()); + return result; + } +} diff --git a/bmc-ociproductcatalog/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-ociproductcatalog/reflect-config.json b/bmc-ociproductcatalog/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-ociproductcatalog/reflect-config.json new file mode 100644 index 00000000000..debd9ec584f --- /dev/null +++ b/bmc-ociproductcatalog/src/main/resources/META-INF/native-image/com.oracle.oci.sdk/oci-java-sdk-ociproductcatalog/reflect-config.json @@ -0,0 +1,206 @@ +[ + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.AdminProduct", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.AdminProduct$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.AdminProduct$LifecycleState", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.AdminProductSummary", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.AdminProductSummary$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.AdminProductSummary$LifecycleState", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.ChangeProductCompartmentDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.ChangeProductCompartmentDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.CreateProductDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.CreateProductDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.CreateProductDetails$BackfillEligibility", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.Limit", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.Limit$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.Meter", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.Meter$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.MeterWithSKU", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.MeterWithSKU$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.Product", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.Product$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.Product$LifecycleState", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.ProductCollection", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.ProductCollection$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.ProductSummary", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.ProductSummary$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.ProductSummary$LifecycleState", + "allDeclaredFields": true, + "allDeclaredMethods": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.SkuSummary", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.SkuSummary$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.UpdateProductDetails", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "queryAllDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.UpdateProductDetails$Builder", + "allDeclaredFields": true, + "allDeclaredMethods": true, + "allDeclaredConstructors": true + }, + { + "condition" : { "typeReachable" : "com.fasterxml.jackson.databind.ObjectMapper" }, + "name": "com.oracle.bmc.ociproductcatalog.model.UpdateProductDetails$State", + "allDeclaredFields": true, + "allDeclaredMethods": true + } +] \ No newline at end of file diff --git a/bmc-ociproductcatalog/src/main/resources/com/oracle/bmc/ociproductcatalog/client.properties b/bmc-ociproductcatalog/src/main/resources/com/oracle/bmc/ociproductcatalog/client.properties new file mode 100644 index 00000000000..9e0c3dad151 --- /dev/null +++ b/bmc-ociproductcatalog/src/main/resources/com/oracle/bmc/ociproductcatalog/client.properties @@ -0,0 +1,9 @@ +# +# Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved. +# This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. +# + +java.client.codegen.version = 2.170 +java.minimum.client.codegen.version.from.client = 2.170 + +# @jakarta.annotation.Generated(value = "OracleSDKGenerator", comments = "API Version: 20250610") \ No newline at end of file diff --git a/bmc-ocvp/pom.xml b/bmc-ocvp/pom.xml index 537f48fb0e4..82fd895b605 100644 --- a/bmc-ocvp/pom.xml +++ b/bmc-ocvp/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-ocvp @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-oda/pom.xml b/bmc-oda/pom.xml index 2827b225b4a..114a3f947cc 100644 --- a/bmc-oda/pom.xml +++ b/bmc-oda/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-oda @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-onesubscription/pom.xml b/bmc-onesubscription/pom.xml index 0297464493a..79cb0e80667 100644 --- a/bmc-onesubscription/pom.xml +++ b/bmc-onesubscription/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-onesubscription @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-ons/pom.xml b/bmc-ons/pom.xml index 973c40dd5c4..05bd4dd19c6 100644 --- a/bmc-ons/pom.xml +++ b/bmc-ons/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-ons @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-opa/pom.xml b/bmc-opa/pom.xml index 85049ee09eb..24bc68c7fb8 100644 --- a/bmc-opa/pom.xml +++ b/bmc-opa/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-opa @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-opensearch/pom.xml b/bmc-opensearch/pom.xml index a730cba111d..830ff0c0ca9 100644 --- a/bmc-opensearch/pom.xml +++ b/bmc-opensearch/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-opensearch @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-operatoraccesscontrol/pom.xml b/bmc-operatoraccesscontrol/pom.xml index 9b336516b00..9120041f0ed 100644 --- a/bmc-operatoraccesscontrol/pom.xml +++ b/bmc-operatoraccesscontrol/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-operatoraccesscontrol @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-opsi/pom.xml b/bmc-opsi/pom.xml index 8997c57b818..efd0001cb5a 100644 --- a/bmc-opsi/pom.xml +++ b/bmc-opsi/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-opsi @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-optimizer/pom.xml b/bmc-optimizer/pom.xml index 2ecbc9a3a55..febf100e8ac 100644 --- a/bmc-optimizer/pom.xml +++ b/bmc-optimizer/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-optimizer @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-osmanagementhub/pom.xml b/bmc-osmanagementhub/pom.xml index 3cc27451f53..a863a672005 100644 --- a/bmc-osmanagementhub/pom.xml +++ b/bmc-osmanagementhub/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-osmanagementhub @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-ospgateway/pom.xml b/bmc-ospgateway/pom.xml index 088de757ef7..b3e1b63dc65 100644 --- a/bmc-ospgateway/pom.xml +++ b/bmc-ospgateway/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-ospgateway @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-osubbillingschedule/pom.xml b/bmc-osubbillingschedule/pom.xml index a229b66c5a8..70f218bec1c 100644 --- a/bmc-osubbillingschedule/pom.xml +++ b/bmc-osubbillingschedule/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-osubbillingschedule @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-osuborganizationsubscription/pom.xml b/bmc-osuborganizationsubscription/pom.xml index c38558c7564..29f46c46ce8 100644 --- a/bmc-osuborganizationsubscription/pom.xml +++ b/bmc-osuborganizationsubscription/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-osuborganizationsubscription @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-osubsubscription/pom.xml b/bmc-osubsubscription/pom.xml index a3b969956a0..a7671f203d2 100644 --- a/bmc-osubsubscription/pom.xml +++ b/bmc-osubsubscription/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-osubsubscription @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-osubusage/pom.xml b/bmc-osubusage/pom.xml index 6d913be5d50..377ca51d7cb 100644 --- a/bmc-osubusage/pom.xml +++ b/bmc-osubusage/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-osubusage @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-other-examples/bmc-jersey-examples/pom.xml b/bmc-other-examples/bmc-jersey-examples/pom.xml index 75115fe9a4c..da7b81799f1 100644 --- a/bmc-other-examples/bmc-jersey-examples/pom.xml +++ b/bmc-other-examples/bmc-jersey-examples/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.oracle.oci.sdk oci-java-sdk-jersey-examples - 3.97.1 + 3.97.2 Oracle Cloud Infrastructure SDK - Examples using Jersey 2 HTTP client This project contains the examples on how to use the SDK used for Oracle Cloud Infrastructure with the Jersey 2 HTTP client https://docs.oracle.com/iaas/Content/API/SDKDocs/javasdk.htm @@ -58,7 +58,7 @@ com.oracle.oci.sdk oci-java-sdk-enforcer-rules - 3.97.1 + 3.97.2 false @@ -95,14 +95,14 @@ com.oracle.oci.sdk oci-java-sdk-bom - 3.97.1 + 3.97.2 pom import com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey - 3.97.1 + 3.97.2 pom import diff --git a/bmc-other-examples/bmc-jersey3-examples/pom.xml b/bmc-other-examples/bmc-jersey3-examples/pom.xml index ee09a840b2c..4c393b8693a 100644 --- a/bmc-other-examples/bmc-jersey3-examples/pom.xml +++ b/bmc-other-examples/bmc-jersey3-examples/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.oracle.oci.sdk oci-java-sdk-jersey3-examples - 3.97.1 + 3.97.2 Oracle Cloud Infrastructure SDK - Examples using Jersey 3 HTTP client This project contains the examples on how to use the SDK used for Oracle Cloud Infrastructure with the Jersey 3 HTTP client https://docs.oracle.com/iaas/Content/API/SDKDocs/javasdk.htm @@ -58,7 +58,7 @@ com.oracle.oci.sdk oci-java-sdk-enforcer-rules - 3.97.1 + 3.97.2 false @@ -95,14 +95,14 @@ com.oracle.oci.sdk oci-java-sdk-bom - 3.97.1 + 3.97.2 pom import com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey3 - 3.97.1 + 3.97.2 pom import diff --git a/bmc-other-examples/native-maven-example/pom.xml b/bmc-other-examples/native-maven-example/pom.xml index d5d1d8901fe..734aca69c8c 100644 --- a/bmc-other-examples/native-maven-example/pom.xml +++ b/bmc-other-examples/native-maven-example/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.oracle.oci.sdk oci-java-sdk-examples-native - 3.97.1 + 3.97.2 Oracle Cloud Infrastructure SDK - Native Example This project contains an example on how to use the SDK used for Oracle Cloud Infrastructure in a native executable https://docs.oracle.com/iaas/Content/API/SDKDocs/javasdk.htm @@ -98,14 +98,14 @@ com.oracle.oci.sdk oci-java-sdk-bom - 3.97.1 + 3.97.2 pom import com.oracle.oci.sdk oci-java-sdk-common-httpclient-jersey - 3.97.1 + 3.97.2 pom import diff --git a/bmc-other-examples/pom.xml b/bmc-other-examples/pom.xml index d15535567e3..986398b47b5 100644 --- a/bmc-other-examples/pom.xml +++ b/bmc-other-examples/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml diff --git a/bmc-psa/pom.xml b/bmc-psa/pom.xml index 49846125144..b27de9bffbc 100644 --- a/bmc-psa/pom.xml +++ b/bmc-psa/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-psa @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-psql/pom.xml b/bmc-psql/pom.xml index ae390e57072..a178efacf40 100644 --- a/bmc-psql/pom.xml +++ b/bmc-psql/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-psql @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-queue/pom.xml b/bmc-queue/pom.xml index a34c377fc4a..61bba31e4b3 100644 --- a/bmc-queue/pom.xml +++ b/bmc-queue/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-queue @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-recovery/pom.xml b/bmc-recovery/pom.xml index 6b660046277..b8d2b605ffe 100644 --- a/bmc-recovery/pom.xml +++ b/bmc-recovery/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-recovery @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-redis/pom.xml b/bmc-redis/pom.xml index 7e742c240e9..2a81f3d5cd9 100644 --- a/bmc-redis/pom.xml +++ b/bmc-redis/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-redis @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-resourceanalytics/pom.xml b/bmc-resourceanalytics/pom.xml index 0d0c95b6df7..1ce2d0150f7 100644 --- a/bmc-resourceanalytics/pom.xml +++ b/bmc-resourceanalytics/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-resourceanalytics @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-resourcemanager/pom.xml b/bmc-resourcemanager/pom.xml index 1cb5d7dfd37..c72448d2878 100644 --- a/bmc-resourcemanager/pom.xml +++ b/bmc-resourcemanager/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-resourcemanager @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-resourcescheduler/pom.xml b/bmc-resourcescheduler/pom.xml index d8b40754e66..ccf3d9cee81 100644 --- a/bmc-resourcescheduler/pom.xml +++ b/bmc-resourcescheduler/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-resourcescheduler @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-resourcesearch/pom.xml b/bmc-resourcesearch/pom.xml index 3699e6759f6..7e9dec01cb4 100644 --- a/bmc-resourcesearch/pom.xml +++ b/bmc-resourcesearch/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-resourcesearch @@ -16,7 +16,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-rover/pom.xml b/bmc-rover/pom.xml index ed1ceec289d..29c63c8d5ca 100644 --- a/bmc-rover/pom.xml +++ b/bmc-rover/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-rover @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-sch/pom.xml b/bmc-sch/pom.xml index 05141f468ba..71e51eee4e3 100644 --- a/bmc-sch/pom.xml +++ b/bmc-sch/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-sch @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-secrets/pom.xml b/bmc-secrets/pom.xml index d3231b8247c..b889facb42d 100644 --- a/bmc-secrets/pom.xml +++ b/bmc-secrets/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-secrets @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-securityattribute/pom.xml b/bmc-securityattribute/pom.xml index 8e8e130f3f0..2bbbc9c0c72 100644 --- a/bmc-securityattribute/pom.xml +++ b/bmc-securityattribute/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-securityattribute @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-self/pom.xml b/bmc-self/pom.xml index e0713a9cdad..a8fa0e295fc 100644 --- a/bmc-self/pom.xml +++ b/bmc-self/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-self @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-servicecatalog/pom.xml b/bmc-servicecatalog/pom.xml index c3d7c7ad5ee..045a24d1bc5 100644 --- a/bmc-servicecatalog/pom.xml +++ b/bmc-servicecatalog/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-servicecatalog @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-servicemanagerproxy/pom.xml b/bmc-servicemanagerproxy/pom.xml index 87475856ef2..84671954b89 100644 --- a/bmc-servicemanagerproxy/pom.xml +++ b/bmc-servicemanagerproxy/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-servicemanagerproxy @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-shaded/bmc-shaded-full/pom.xml b/bmc-shaded/bmc-shaded-full/pom.xml index ec0503908e5..deda281ce0b 100644 --- a/bmc-shaded/bmc-shaded-full/pom.xml +++ b/bmc-shaded/bmc-shaded-full/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk-shaded - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-shaded-full diff --git a/bmc-shaded/pom.xml b/bmc-shaded/pom.xml index d4a83b961a3..81b1bd68b9d 100644 --- a/bmc-shaded/pom.xml +++ b/bmc-shaded/pom.xml @@ -5,7 +5,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml diff --git a/bmc-stackmonitoring/pom.xml b/bmc-stackmonitoring/pom.xml index d397999673d..963972438f8 100644 --- a/bmc-stackmonitoring/pom.xml +++ b/bmc-stackmonitoring/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-stackmonitoring @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-streaming/pom.xml b/bmc-streaming/pom.xml index 44bbc565219..a7d1b231d0c 100644 --- a/bmc-streaming/pom.xml +++ b/bmc-streaming/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-streaming @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-tenantmanagercontrolplane/pom.xml b/bmc-tenantmanagercontrolplane/pom.xml index ab82e3d0a68..4b55d3fa116 100644 --- a/bmc-tenantmanagercontrolplane/pom.xml +++ b/bmc-tenantmanagercontrolplane/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-tenantmanagercontrolplane @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-threatintelligence/pom.xml b/bmc-threatintelligence/pom.xml index b736bbf1c6d..5bfea2d0071 100644 --- a/bmc-threatintelligence/pom.xml +++ b/bmc-threatintelligence/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-threatintelligence @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-usage/pom.xml b/bmc-usage/pom.xml index d82a15a2669..51c34a3c0d8 100644 --- a/bmc-usage/pom.xml +++ b/bmc-usage/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-usage @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-usageapi/pom.xml b/bmc-usageapi/pom.xml index 64b97c658ad..b4a96f8abbd 100644 --- a/bmc-usageapi/pom.xml +++ b/bmc-usageapi/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-usageapi @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-vault/pom.xml b/bmc-vault/pom.xml index f344603ea1a..c4ee6972561 100644 --- a/bmc-vault/pom.xml +++ b/bmc-vault/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-vault @@ -15,12 +15,12 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 com.oracle.oci.sdk oci-java-sdk-workrequests - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-vbsinst/pom.xml b/bmc-vbsinst/pom.xml index 4208e040548..0d8e551f8cb 100644 --- a/bmc-vbsinst/pom.xml +++ b/bmc-vbsinst/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-vbsinst @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-visualbuilder/pom.xml b/bmc-visualbuilder/pom.xml index fb5cf56ee7a..806253ba597 100644 --- a/bmc-visualbuilder/pom.xml +++ b/bmc-visualbuilder/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-visualbuilder @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-vnmonitoring/pom.xml b/bmc-vnmonitoring/pom.xml index d043c977141..c7519d803e5 100644 --- a/bmc-vnmonitoring/pom.xml +++ b/bmc-vnmonitoring/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-vnmonitoring @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-vulnerabilityscanning/pom.xml b/bmc-vulnerabilityscanning/pom.xml index b288638ff37..e6029c00d0f 100644 --- a/bmc-vulnerabilityscanning/pom.xml +++ b/bmc-vulnerabilityscanning/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-vulnerabilityscanning @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-waa/pom.xml b/bmc-waa/pom.xml index 84bb64a74d6..bcf3ad4913f 100644 --- a/bmc-waa/pom.xml +++ b/bmc-waa/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-waa @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-waas/pom.xml b/bmc-waas/pom.xml index f8a32361def..878b7c438b5 100644 --- a/bmc-waas/pom.xml +++ b/bmc-waas/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-waas @@ -16,7 +16,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-waf/pom.xml b/bmc-waf/pom.xml index 53733d5e721..1322fbab7e4 100644 --- a/bmc-waf/pom.xml +++ b/bmc-waf/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-waf @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-wlms/pom.xml b/bmc-wlms/pom.xml index 0b3c5657da0..33c4d3487f5 100644 --- a/bmc-wlms/pom.xml +++ b/bmc-wlms/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-wlms @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-workrequests/pom.xml b/bmc-workrequests/pom.xml index 3b7b50ef3bb..733fe0f22db 100644 --- a/bmc-workrequests/pom.xml +++ b/bmc-workrequests/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-workrequests @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/bmc-zpr/pom.xml b/bmc-zpr/pom.xml index d04b560e880..4826968b07c 100644 --- a/bmc-zpr/pom.xml +++ b/bmc-zpr/pom.xml @@ -4,7 +4,7 @@ com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 ../pom.xml oci-java-sdk-zpr @@ -15,7 +15,7 @@ com.oracle.oci.sdk oci-java-sdk-common - 3.97.1 + 3.97.2 \ No newline at end of file diff --git a/pom.xml b/pom.xml index c776617e0a4..46963184dfd 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.oracle.oci.sdk oci-java-sdk - 3.97.1 + 3.97.2 pom Oracle Cloud Infrastructure SDK This project contains the SDK used for Oracle Cloud Infrastructure @@ -36,7 +36,7 @@ UTF-8 2.21 2.21.5 - 2.21.5 + 2.21.6 2.47 4.5.14 4.5.14 @@ -683,6 +683,7 @@ bmc-ddfs bmc-clusterhealth bmc-distributeddatabase + bmc-ociproductcatalog bmc-containerengine bmc-keymanagement bmc-resourcesearch